这是利用ptables规则中SNAT规则设置,用curl 连 192.168.44.233 到192.168.43.100,中间经过一台主机。利用这条规则 iptables -t nat -A POSTROUTING -s 192.168.44.0/24 -j SNAT --to 192.168.43.100 使两台不同网段的主机能连在一起
但是最后设置完之后,在主机192.168.44.233上,用curl http://192.168.43.100 还是连接不了,请大神帮忙看看
我也碰到了同样的问题,我的解决方法是
注意:
1.目标机器192.168.43.100的网关要配置成192.168.43.43,目标机器要开启web/数据库/文件服务器的端口接入链,并重启iptables
2.转换服务器上面还要注释掉iptables的#-A FORWARD -j REJECT --reject-with icmp-host-prohibited,并重启iptables
3.最后在 本机 192.168.44.233 执行 ping 192.168.43.100,ping通!
网关没配置好
目标机器
192.168.43.100
转换机器
eth0 192.168.43.43
eth1 192.168.44.44
vim /etc/sysctl.conf 使net.ipv4.ip_forward = 1
sysctl -p #全部执行
sysctl -a | grep net.ipv4.ip_forward #查看是否设置成功
iptables -t nat -A POSTROUTING -s 192.168.44.0/24 -j SNAT --to 192.168.43.43
本机
192.168.44.233
默认网关设置
vi /etc/sysconfig/network 加入 GATEWAY=192.168.44.44
或者 route add 0.0.0.0 gw 192.168.44.44
求大神解决