阿里云-云小站(无限量代金券发放中)
【腾讯云】云服务器、云数据库、COS、CDN、短信等热卖云产品特惠抢购

Linux iptables端口映射设置

245次阅读
没有评论

共计 1668 个字符,预计需要花费 5 分钟才能阅读完成。

iptables 端口映射设置如下:

设我们有一台计算机, 有两块网卡,eth0 连外网,ip 为 1.2.3.4;eth1 连内网,ip 为 192.168.0.1. 现在需要把发往地址 1.2.3.4 的 81 端口的 ip 包转发到 ip 地址 192.168.0.2 的 8180 端口, 设置如下:

1. iptables -t nat -A PREROUTING -d 1.2.3.4 -p tcp -m tcp –dport 81 -j DNAT –to-destination192.168.0.2:8180

2. iptables -t nat -A POSTROUTING -s 192.168.0.0/255.255.0.0 -d 192.168.0.2 -p tcp -m tcp –dport 8180 -j SNAT –to-source 192.168.0.1

真实的传输过程如下所示:

假设某客户机的 ip 地址为 6.7.8.9, 它使用本机的 1080 端口连接 1.2.3.4 的 81 端口, 发出的 ip 包源地址为 6.7.8.9, 源端口为 1080, 目的地址为 1.2.3.4, 目的端口为 81.

主 机 1.2.3.4 接收到这个包后, 根据 nat 表的第一条规则, 将该 ip 包的目的地址更该为 192.168.0.2, 目的端口更该为 8180, 同时在连接跟 踪表中创建一个条目,(可从 /proc/net/ip_conntrack 文件中看到), 然后发送到路由模块, 通过查路由表, 确定该 ip 包应发送到 eth1 接口. 在向 eth1 接口发送该 ip 包之前, 根据 nat 表的第二条规则, 如果该 ip 包来自同一子网, 则将该 ip 包的源地址更该为 192.168.0.1, 同时更新该连接跟踪表中的相应条目, 然后送到 eth1 接口发出.

此时连接跟踪表中有一项:

连接进入: src=6.7.8.9 dst=1.2.3.4 sport=1080 dport=81

连接返回: src=192.168.0.2 dst=6.7.8.9 sport=8180 dport=1080

是否使用: use=1

而 从 192.168.0.2 发回的 ip 包, 源端口为 8180, 目的地址为 6.7.8.9, 目的端口为 1080, 主机 1.2.3.4 的 TCP/IP 栈接收到该 ip 包后, 由核心查找连接跟踪表中的连接返回栏目中是否有同样源和目的地址和端口的匹配项, 找到后, 根据条目中的记录将 ip 包的源地址由 192.168.0.2 更该为 1.2.3.4, 源端口由 8180 更该为 81, 保持目的端口号 1080 不变. 这样服务器的返回包就可以正确的返回发起连接的客户机, 通讯就这样开始.

还有一点, 在 filter 表中还应该允许从 eth0 连接 192.168.0.2 地址的 8180 端口:

iptables -A INPUT -d 192.168.0.2 -p tcp -m tcp –dport 8180 -i eth0 -j ACCEPT

通过上面的例子,我们就知道 iptables 端口映射设置其实不难!

更多 iptables 相关教程见以下内容

CentOS 7.0 关闭默认防火墙启用 iptables 防火墙  http://www.linuxidc.com/Linux/2015-05/117473.htm

iptables 使用范例详解 http://www.linuxidc.com/Linux/2014-03/99159.htm

Linux 防火墙 iptables 详细教程 http://www.linuxidc.com/Linux/2013-07/87045.htm

iptables 的备份、恢复及防火墙脚本的基本使用 http://www.linuxidc.com/Linux/2013-08/88535.htm

Linux 下防火墙 iptables 用法规则详解 http://www.linuxidc.com/Linux/2012-08/67952.htm

Linux 下 iptables 防火墙设置 http://www.linuxidc.com/Linux/2015-10/123843.htm

本文永久更新链接地址:http://www.linuxidc.com/Linux/2015-12/125873.htm

正文完
星哥玩云-微信公众号
post-qrcode
 0
星锅
版权声明:本站原创文章,由 星锅 于2022-01-21发表,共计1668字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
【腾讯云】推广者专属福利,新客户无门槛领取总价值高达2860元代金券,每种代金券限量500张,先到先得。
阿里云-最新活动爆款每日限量供应
评论(没有评论)
验证码
【腾讯云】云服务器、云数据库、COS、CDN、短信等云产品特惠热卖中