免费注册 查看新帖 |

Chinaunix

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

关于LINUX NAT的操作 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2011-05-18 15:01 |只看该作者 |倒序浏览
想要实现将将外部端口5888-6000映射到内部端口9888-10000,目前我的IPTABLES是这样写的:
iptables -t nat -A PREROUTING -p tcp --dport 5888:6000 -i ppp0 -j DNAT --to 192.168.1.20:9888-10000
iptables -t nat -A PREROUTING -p udp --dport 5888:6000 -i ppp0 -j DNAT --to 192.168.1.20:9888-10000
但实测不过。请教要实现将外部端口5888-6000映射到内部端口9888-10000应该如何写iptables


内网数据出去,在LINUX上是进行了下MASQUERADE,没有做SNAT
iptables -t nat -A POSTROUTING -o ppp0 -j MASQUERADE

论坛徽章:
0
2 [报告]
发表于 2011-05-18 15:05 |只看该作者
iptables -t nat -A PREROUTING -p tcp --dport 5999 -i ppp0 -j DNAT --to 192.168.1.20:5999
iptables -t nat -A PREROUTING -p udp --dport 5999 -i ppp0 -j DNAT --to 192.168.1.20:5999
单独一个是没问题。

论坛徽章:
0
3 [报告]
发表于 2011-05-18 15:06 |只看该作者
或者单独指定--dport 5999:6000也能够映射到内网的5999:6000 但我想将外部的一段端口,映射到内部的另外一段端口,就没法实现了。

论坛徽章:
381
CU十二周年纪念徽章
日期:2014-01-04 22:46:58CU大牛徽章
日期:2013-03-13 15:32:35CU大牛徽章
日期:2013-03-13 15:38:15CU大牛徽章
日期:2013-03-13 15:38:52CU大牛徽章
日期:2013-03-14 14:08:55CU大牛徽章
日期:2013-04-17 11:17:19CU大牛徽章
日期:2013-04-17 11:17:32CU大牛徽章
日期:2013-04-17 11:17:37CU大牛徽章
日期:2013-04-17 11:17:42CU大牛徽章
日期:2013-04-17 11:17:47CU大牛徽章
日期:2013-04-17 11:17:52CU大牛徽章
日期:2013-04-17 11:17:56
4 [报告]
发表于 2011-05-18 15:47 |只看该作者
应该只能一行一行写吧

论坛徽章:
0
5 [报告]
发表于 2011-05-18 17:17 |只看该作者
测试了下,成功的如下:
成功一:范围只指定了一个端口,顾可以正确地将--dport的端口映射到--to指定的端口上。
  1. iptables -t nat -A PREROUTING -p tcp --dport 5999:5999 -i ppp0 -j DNAT --to 192.168.1.20:6999-6999
  2. iptables -t nat -A PREROUTING -p udp --dport 5999:5999 -i ppp0 -j DNAT --to 192.168.1.20:6999-6999
  3. iptables -t nat -A PREROUTING -p tcp --dport 6000:6000 -i ppp0 -j DNAT --to 192.168.1.20:7000-7000
  4. iptables -t nat -A PREROUTING -p udp --dport 6000:6000 -i ppp0 -j DNAT --to 192.168.1.20:7000-7000
复制代码
成功二:(指定一个端口号)
  1. iptables -t nat -D PREROUTING -p tcp --dport 5999 -i ppp0 -j DNAT --to 192.168.1.20:6000
  2. iptables -t nat -D PREROUTING -p udp --dport 5999 -i ppp0 -j DNAT --to 192.168.1.20:6000
  3. iptables -t nat -D PREROUTING -p tcp --dport 6999 -i ppp0 -j DNAT --to 192.168.1.20:7000
  4. iptables -t nat -D PREROUTING -p udp --dport 6999 -i ppp0 -j DNAT --to 192.168.1.20:7000
复制代码
成功三:--dport和--to的端口段如果一致,则地址映射会一一对应起来
  1. iptables -t nat -A PREROUTING -p tcp --dport 5999:6999 -i ppp0 -j DNAT --to 192.168.1.20:5999-6999
  2. iptables -t nat -A PREROUTING -p udp --dport 5999:6999 -i ppp0 -j DNAT --to 192.168.1.20:5999-6999
复制代码
以下情况:不成功,无论访问ppp0的哪个端口,都只转发到7999,不会转发给其他端口
  1. iptables -t nat -D PREROUTING -p tcp --dport 5999:6999 -i ppp0 -j DNAT --to 192.168.1.20:7999-8999
  2. iptables -t nat -D PREROUTING -p udp --dport 5999:6999 -i ppp0 -j DNAT --to 192.168.1.20:7999-8999
复制代码

评分

参与人数 1可用积分 +4 收起 理由
chenyx + 4 我很赞同

查看全部评分

论坛徽章:
381
CU十二周年纪念徽章
日期:2014-01-04 22:46:58CU大牛徽章
日期:2013-03-13 15:32:35CU大牛徽章
日期:2013-03-13 15:38:15CU大牛徽章
日期:2013-03-13 15:38:52CU大牛徽章
日期:2013-03-14 14:08:55CU大牛徽章
日期:2013-04-17 11:17:19CU大牛徽章
日期:2013-04-17 11:17:32CU大牛徽章
日期:2013-04-17 11:17:37CU大牛徽章
日期:2013-04-17 11:17:42CU大牛徽章
日期:2013-04-17 11:17:47CU大牛徽章
日期:2013-04-17 11:17:52CU大牛徽章
日期:2013-04-17 11:17:56
6 [报告]
发表于 2011-05-18 17:25 |只看该作者
楼主总结的不错,赞一个

论坛徽章:
0
7 [报告]
发表于 2011-05-18 17:29 |只看该作者
回复 6# chenyx


    可我希望的是,--dport指定一个段,就可以映射到--to指定的段里面去,不知道这个该如何实现。我目前发现,这两个段相同,就会一一映射,如果不同的话,--dport指定的端口号就只能映射到--to指定的第一个端口号上。

论坛徽章:
0
8 [报告]
发表于 2011-05-18 17:30 |只看该作者
就是希望下面的代码能够实现将5999映射到7999,6000映射到8000......
  1. iptables -t nat -D PREROUTING -p tcp --dport 5999:6999 -i ppp0 -j DNAT --to 192.168.1.20:7999-8999
  2. iptables -t nat -D PREROUTING -p udp --dport 5999:6999 -i ppp0 -j DNAT --to 192.168.1.20:7999-8999
复制代码

论坛徽章:
381
CU十二周年纪念徽章
日期:2014-01-04 22:46:58CU大牛徽章
日期:2013-03-13 15:32:35CU大牛徽章
日期:2013-03-13 15:38:15CU大牛徽章
日期:2013-03-13 15:38:52CU大牛徽章
日期:2013-03-14 14:08:55CU大牛徽章
日期:2013-04-17 11:17:19CU大牛徽章
日期:2013-04-17 11:17:32CU大牛徽章
日期:2013-04-17 11:17:37CU大牛徽章
日期:2013-04-17 11:17:42CU大牛徽章
日期:2013-04-17 11:17:47CU大牛徽章
日期:2013-04-17 11:17:52CU大牛徽章
日期:2013-04-17 11:17:56
9 [报告]
发表于 2011-05-18 17:49 |只看该作者
楼主请教下白金版主吧

论坛徽章:
0
10 [报告]
发表于 2011-05-18 17:57 |只看该作者
回复 9# chenyx


    如何请教?发私信么?好像我级别太低,没法发。能否帮我poke他下呢?
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP