[网络管理] 请教iptabels 1.2.5做SNAT遇到问题

weixin_38053856 2007-04-02 12:23:15

小弟有一台LINUX服务器,近日做SNAT时遇到难题.望各位赐教

1.系统结构以及预期目标 服务器担当的角色是路由转发  iptables 为1.2.5  系统为RED HAT AS1.2 kernel为1.2.4-9
  系统允许路由转发 echo 1 > /proc/sys/net/ipv4/ip_forward
  网卡 eth1绑定2个IP地址
eth1      172.168.0.1 (内网)  
eth1:0   111.222.0.1 (外网)         

需要达到的预期目标: 预期目标是使192.168.0.100与目标建立连接
  192.168.0.100 <==>  172.168.0.1    <= SNAT转换 => 111.222.0.1       <==>  目标地址
通过设置SNAT进行源地址进行转换
iptables -t nat -A POSTROUTING -o eth1 -p tcp -j SNAT --to-source 111.222.0.1

但现在遇到些异常,192.168.0.100能连接到目标地址,但无法正常建立连接.通过TCPDUMP检查,发觉是发往目标主机包的来源地址是192.168.0.100,而不是111.222.0.1 ,所以无法成功建立连接.

23:34:00.823530 192.168.0.100.49020 > target ip..dst_port: S 2726709737:2726709737(0) win 5840 <mss 1400,sackOK,timestamp 1650878381 0,nop,wscale 0> (DF) [tos 0x10]
23:34:00.823660 target ip.dst_port> 192.168.0.100.49020: S 276057944:276057944(0) ack 2726709738 win 5792 <mss 1460,sackOK,timestamp 1842841271 1650878381,nop,wscale 0> (DF)

究其原因是该服务器上没有实现SNAT转换.
但是在172.168.0.x网段内的其他服务器进行的测试,将目标主机路由设置为172.168.0.1却能正常完成SNAT转换,成功建立连接.  请各位帮忙 看看大概问题会产生出在那里?
  我开始觉得是IPTABLES的版本比较低的问题,但通过测试172.168.0.x网段内的其他主机的目标服务器路由指向,却又能正常完成SNAT转换,所有有点想不明白了.
...全文
5 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复

433

社区成员

发帖
与我相关
我的任务
社区描述
其他技术讨论专区
其他 技术论坛(原bbs)
社区管理员
  • 其他技术讨论专区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧