Ubuntu 14.04.2 VM,IP为1.2.3.4和1.2.3.5。
我试图将1.2.3.5的所有stream量路由到1.2.3.189的另一个地址(在另一台服务器上,并且可以通过networking上的任何机器访问)。
在/etc/sysctl.conf中 :我启用了设置net.ipv4.ip_forward = 1
我用这个脚本重置了一切
echo "Stopping firewall and allowing everyone..." iptables -F iptables -X iptables -t nat -F iptables -t nat -X iptables -t mangle -F iptables -t mangle -X iptables -P INPUT ACCEPT iptables -P FORWARD ACCEPT iptables -P OUTPUT ACCEPT
然后我把这个作为脚本来处理stream量
sudo iptables -t nat -A PREROUTING -d 1.2.3.5 -j DNAT --to-destination 1.2.3.189
ufw被禁用,我想不出别的办法。
理想情况下(并在路上),stream量将被发送到第二个网卡,连接到不同的networking(10.0.0.189),但我想先从最简单的开始。
由于1.2.3.5和1.2.3.189似乎在同一个子网上,因此服务器1.2.3.189将尝试使用自己的IP(第2层)进行回复。
你应该也SNAT返回数据包从1.2.3.189到1.2.3.5添加:
iptables -t nat -A POSTROUTING -s 1.2.3.189 -j SNAT --to-source 1.2.3.5