首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >linux之iptables中PREROUTING与POSTROUTING关系

linux之iptables中PREROUTING与POSTROUTING关系

作者头像
用户4877748
发布2021-10-25 14:07:53
发布2021-10-25 14:07:53
7.8K0
举报
文章被收录于专栏:LVMLVM

PREROUTING 和 POSTROUTING 的简单关系

源地址发送数据--> {PREROUTING-->路由规则-->POSTROUTING} -->目的地址接收到数据 当你使用:iptables -t nat -A PREROUTING -i eth1 -d 1.2.3.4 -j DNAT --to 192.168.1.40 时,你访问1.2.3.4,linux路由器会在“路由规则”之前将目的地址改为192.168.1.40,并且Linux路由器(iptables)会同时记录下这个连接,并在数据从192.168.1.40返回时,经过linux路由器将数据发送到那台发出请求的机器。所以你的"POSTROUTING"规则没有起作用。 而"POSTROUTING"是“路由规则”之后的动作。

PREROUTING的应用, 一般情况下,PREROUTING应用在普通的NAT中(也就是SNAT),如:你用ADSL上网,这样你的网络中只有一个公网IP地址(如:61.129.66.5),但你的局域网中的用户还要上网(局域网IP地址为:192.168.1.0/24),这时你可以使用PREROUTING(SNAT)来将局域网中用户的IP地址转换成61.129.66.5,使他们也可以上网: iptables -t nat -A PREROUTING -s 192.168.1.0/24 -j SNAT 61.129.66.5

POSTROUTING的应用, POSTROUTING用于将你的服务器放在防火墙之后,作为保护服务器使用,例如: A.你的服务器IP地址为:192.168.1.2; B.你的防火墙(Linux & iptables)地址为192.168.1.1和202.96.129.5

Internet上的用户可以正常的访问202.96.129.5,但他们无法访问192.168.1.2,这时在Linux防火墙里可以做这样的设置: iptables -t nat -A POSTROUTING -d 202.96.129.5 -j DNAT 192.168.1.2

最要紧的是我们要记住PREROUTING是“路由规则”之前的动作,POSTROUTING是“路由规则”之后的动作!

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2018/10/25 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档