我们有一个专用局域网连接到一个带有多个公网IP的防火墙用于SNAT,以避免单个IP上的端口过载。 但是,我们有一个要求,允许某些工作站可以在他们托pipe服务器的预定义端口上进行外部访问。
在下面的例子中,机器A先前已经向B发送了203.0.113.1:7045上可用的资源。 但是,当机器B启动到A的连接时,它可能会收到一个不同于它所期望的源IP(由于SNAT循环)的响应。
我认为这一定是机器B的问题,因为它不能正确地关联数据包来build立连接。 什么是最好的解决scheme?
iptables -t NAT -A POSTROUTING -s 10.8.4.0/24 -o eth1 -j SNAT --to-source 203.0.113.1-203.0.113-3 iptables -t NAT -A PREROUTING -i eth1 -m multiport --dports 7045:7059 -j DNAT --to-destination 10.8.4.2

我不认为有问题,因为传入的连接将有自己的状态条目,不会与传出的重叠。 你的问题是真实还是虚构?