我的情况可以描述如下:
CentOS A:11.22.33.44(eth0 - WAN 网络)--- 5.11.22.33(ham0 - Hamachi)
Win32 B:55.66.77.88(WAN 网络)----5.11.22.44(hamachi)
我使用 iptables 将端口 80 从 A 转发到 B,以便人们可以从 11.22.33.44 访问 5.11.22.44 的 Web 服务器
iptables -t nat -A PREROUTING --dst 11.22.33.44 -i eth0 -p tcp --dport 80 -j DNAT --to-destination 5.11.22.33:80
iptables -t nat -A POSTROUTING -p tcp --dst 5.11.22.33 --dport 80 -j SNAT --to-source 11.22.33.44
但事实并非如此。
如果我将转发目标更改为不在 Hamachi 网络中但在 WAN 网络中的 IP,在此示例中为:55.66.77.88。它运行完美。
请告诉我我错在哪部分?
答案1
我正在尝试做类似的事情并且效果很好。
您可以尝试设定这些规则吗:
iptables -t nat -A PREROUTING --dst 11.22.33.44 -i eth0 -p tcp --dport 80 -j DNAT --to-destination 5.11.22.44:80
iptables -t nat -A POSTROUTING -p tcp --dst 5.11.22.44 --dport 80 -j SNAT --to-source 5.11.22.33