我有以下设置:
Box A
eth0 - 192.168.1.101
eth1 - 10.10.2.1
Box B
eth0 - 10.10.2.2方框A通过eth0接入互联网。我希望box B在192.168.1.0/24网络上是可见的,这样我就可以直接从另一个框中获得它,但是Box A也必须是可用的。
我考虑在框A上为eth0创建一个虚拟ip,然后将所有流量转发给方框B
ifconfig eth0:0 192.168.1.102
iptables -t nat -A PREROUTING -i eth0:0 -j DNAT --to-destination 10.10.2.2 但这似乎行不通。
此外,还启用了ip转发,并且Box B可以使用
iptables -t nat -A POSTROUTING -j MASQUERADE发布于 2015-04-30 22:47:23
我将通过在192.168.1.0/24网络中的默认网关上添加一个静态路由来实现这一点,这意味着所有到10.10.2.0/24网络的数据包都将通过192.168.1.101节点路由。
然后,您需要在192.168.1.101上启用IP转发。
然后,您还需要在框B上通过192.168.1.0/24添加到10.10.2.1的路由。
通过这种方式,您可以在两个网络中使用10.10.2.x和192.168.1.x地址,并且所有通信量都将在网络之间路由。
发布于 2015-05-01 16:50:59
不能使用虚拟接口作为-i的参数。相反,诀窍是使用目标地址:
iptables -t nat -A PREROUTING -d 192.168.1.102 -j DNAT --to-destination 10.10.2.2https://serverfault.com/questions/686812
复制相似问题