Normalerweise verfügt der Server über viele Netzwerkkarten, sodass er möglicherweise mit verschiedenen Netzwerken verbunden ist. In einem isolierten Netzwerk müssen möglicherweise einige Dienste kommunizieren. Zu diesem Zeitpunkt kann der Server die Verantwortung übernehmen . Die Funktion der Weiterleitung von Datenpaketen. 1. Portzuordnung unter Windows implementieren
netsh interface portproxy show v4tov4
netsh interface portproxy show v4tov4 | find "[IP]"例:netsh interface portproxy show v4tov4 | find "192.168.1.1"
1. 允许数据包转发 2. 设置端口映射 VMWare Workstation Pro 5 台最小化安装的 centos 7 虚拟机 内网和外网相对 2px;padding: 2px 4px;outline: 0px;Schriftgröße: 14px;Rahmenradius: 4px;Hintergrundfarbe: rgba(27, 31, 35, 0.05);Schriftfamilie: „Operator Mono“, Consolas, Monaco, Menlo, Monospace;Wortumbruch: break-all;color: rgb(239, 112, 96);"> 用 Python 在 在 在 在 可以看到,外网的 临时配置 永久配置 如果需要永久配置,则将以上命令追加到 在 在 在 Windows 的 IP 信息如下 配置并查看端口映射情况 检查效果 在netsh interface portproxy delete v4tov4 listenaddress=[外网IP] listenport=[外网端口]例:netsh interface portproxy delete v4tov4 listenaddress=2.2.2.2 listenport=8080
二、Linux 下端口映射
echo 1 >/proc/sys/net/ipv4/ip_forwardiptables -t nat -A POSTROUTING -j MASQUERADEiptables -A FORWARD -i [内网网卡名称] -j ACCEPTiptables -t nat -A POSTROUTING -s [内网网段] -o [外网网卡名称] -j MASQUERADE例:echo 1 >/proc/sys/net/ipv4/ip_forwardiptables -t nat -A POSTROUTING -j MASQUERADEiptables -A FORWARD -i ens33 -j ACCEPTiptables -t nat -A POSTROUTING -s 192.168.50.0/24 -o ens37 -j MASQUERADE
iptables -t nat -A PREROUTING -p tcp -m tcp --dport [外网端口] -j DNAT --to-destination [内网地址]:[内网端口]例:iptables -t nat -A PREROUTING -p tcp -m tcp --dport 6080 -j DNAT --to-destination 10.0.0.100:6090
实验:将部署在内网的服务映射到外网
实验环境
实验拓扑
<span style="outline: 0px;font-size: 17px;">Server4</span>
来说的。<span style="outline: 0px;font-size: 17px;">Server1</span>
和<span style="outline: 0px;font-size: 17px;">Server2</span>
为内网环境的两台服务器;<span style="outline: 0px;font-size: 17px;">Server3</span>
为外网环境下的一台服务器;<span style="outline: 0px;font-size: 17px;">Server4</span>
为一台双网卡主机,分别连接<span style="outline: 0px;font-size: 17px;">192.168.50.0/24</span>
和<span style="outline: 0px;font-size: 17px;">172.16.2.0/24</span>
Server4来说的。🎜Server1🎜
🎜和🎜🎜Server2🎜
🎜为内网环境的两台服务器;
🎜🎜Server3🎜
🎜为外网环境下的一台服务器;
🎜🎜Server4🎜
🎜为一台双网卡主机,分别连接🎜🎜192.168.50.0/24🎜
🎜和🎜 🎜172.16.2.0/24🎜 Code>🎜两个网络。🎜🎜
配置实验环境
1. Server1,2,3 上搭建 HTTP 服务
<span style="outline: 0px;font-size: 17px;">Server1</span>
上搭建一个简单的 HTTP 服务cd ~echo "server1" > index.htmlpython -m SimpleHTTPServer 8080
<span style="outline: 0px;font-size: 17px;">Server2、Server3</span>
同理对照实验
<span style="outline: 0px;font-size: 17px;">client</span>
上访问<span style="outline: 0px;font-size: 17px;">Server1</span>
的资源curl http://192.168.50.11:8080/index.html
<span style="outline: 0px;font-size: 17px;">client</span>
上访问<span style="outline: 0px;font-size: 17px;">Server2</span>
的资源curl http://192.168.50.12:8080/index.htm
<span style="outline: 0px;font-size: 17px;">client</span>
上访问<span style="outline: 0px;font-size: 17px;">Server3</span>
的资源curl http://172.16.2.11:8080/index.html
<span style="outline: 0px;font-size: 17px;">client</span>
是无法访问内网<span style="outline: 0px;font-size: 17px;">Server1</span>
,<span style="outline: 0px;font-size: 17px;">Server2</span>
的资源的。在
<span style="outline: 0px;font-size: 17px;">Server4</span>
上配置端口映射#允许数据包转发echo 1 >/proc/sys/net/ipv4/ip_forwardiptables -t nat -A POSTROUTING -j MASQUERADEiptables -A FORWARD -i ens33 -j ACCEPTiptables -t nat -A POSTROUTING -s 192.168.50.0/24 -o ens37 -j MASQUERADE#设置端口映射iptables -t nat -A PREROUTING -p tcp -m tcp --dport 8081 -j DNAT --to-destination 192.168.50.11:8080iptables -t nat -A PREROUTING -p tcp -m tcp --dport 8082 -j DNAT --to-destination 192.168.50.12:8080
<span style="outline: 0px;font-size: 17px;">/etc/rc.local</span>
文件。检查效果
<span style="outline: 0px;font-size: 17px;">client</span>
上访问 Server1 的资源curl http://172.16.2.100:8081/index.html
<span style="outline: 0px;font-size: 17px;">client</span>
上访问<span style="outline: 0px;font-size: 17px;">Server2</span>
的资源curl http://172.16.2.100:8082/index.html
<span style="outline: 0px;font-size: 17px;">client</span>
上访问<span style="outline: 0px;font-size: 17px;">Server3</span>
的资源curl http://172.16.2.11:8080/index.html
如果
<span style="outline: 0px;font-size: 17px;">Server4</span>
为 Windows,替换一下相应的命令即可Netzwerkkarte IP-Adresse Subnetzmaske Standard. Gateway Bemerkungen Ethernet0 192.168.50.105 255.255.255.0 - Intranet-Netzwerkkarte Ethernet1 172.16.2.105 255.255.255.0 - Externe Netzwerkkarte netsh interface portproxy add v4tov4 listenaddress=172.16.2.105 listenport=8081 connectaddress=192.168.50.11 connectport=8080netsh interface portproxy add v4tov4 listenaddress=172.16.2.105 listenport=8082 connectaddress=192.168.50.12 connectport=8080netsh interface portproxy show v4tov4
<span style="outline: 0px;font-size: 17px;">client</span>
节点上curl http://172.16.2.105:8081/index.htmlcurl http://172.16.2.105:8082/index.htmlcurl http://172.16.2.11:8080/index.html
Das obige ist der detaillierte Inhalt vonPortzuordnung unter Linux oder Windows. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!