免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 2944 | 回复: 2
打印 上一主题 下一主题

iptables端口转发 [复制链接]

论坛徽章:
1
处女座
日期:2014-01-14 13:59:48
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2014-04-28 10:40 |只看该作者 |倒序浏览
现在我有A B C 三台机器,A(10.0.0.4) B(10.0.0.3) C(10.0.0.2)现在我想通过B上做IPTABLES 端口转发,让A能够telnet通C的9004端口。以下为我的IPTABLES配置:
iptables -t nat -A PREROUTING -p tcp  -m tcp  --dport 9004 -j DNAT --to-destination 10.0.0.2:9004
iptables -t nat -A POSTROUTING -p tcp -m tcp  --dport 9004 -j SNAT --to-source 10.0.0.3
可是我在A机器上telnet 10.0.0.3 9004不通,不知道为什么
B上net.ipv4.ip_forward = 1已经开了,请大侠帮我看下

论坛徽章:
2
CU十二周年纪念徽章
日期:2013-10-24 15:41:34IT运维版块每日发帖之星
日期:2016-07-04 06:20:00
2 [报告]
发表于 2014-04-28 12:05 |只看该作者
回复 1# mlxahcf


     iptables -t nat -A POSTROUTING -p tcp -m tcp  --dport 9004 -j SNAT --to-source 10.0.0.3
     10.0.0.2是通过10.0.0.3回转数据包到10.0.0.4时,其中的源端口号是9004,  应该将--dport修改为--sport
     iptables -t nat -A POSTROUTING -p tcp -m tcp  --sport 9004 -j SNAT --to-source 10.0.0.3

另外,请在 C(10.0.0.2) 机器上添加路由:通过  B(10.0.0.3)访问A(10.0.0.4)
     route add 10.0.0.4  mask 255.255.255.255 10.0.0.3     (windows下)
     ip route add  10.0.0.4 via 10.0.0.3 dev eth0   (LINUX下)
之后,10.0.0.2才会通过10.0.0.3回转数据包到10.0.0.4,否则10.0.0.2收到来自源数据IP 10.0.0.4的访问数据,发现是同一网段,会直接用10.0.0.4的MAC转发,不通过10.0.0.3,这种情况下,10.0.0.4访问10.0.0.3的数据包,返回来的却是10.0.0.2的IP,所以TCP建立3次握手不会成功。

论坛徽章:
1
处女座
日期:2014-01-14 13:59:48
3 [报告]
发表于 2014-04-28 12:14 |只看该作者
可以了,这是非常感谢啊
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP