DNAT、SNAT 流程简要解析

Linux NAT 模块

SNAT (Source NAT)

a. 当一个数据包由企业内网主机(ipA)发往一个互联网主机地址(ipC)的时候,被路由到防火墙所在的主机B(外网出口为ipB)
b. 防火墙在【nat· POSTROUTING】 部分修改数据包的源地址(改为src:ipB,dst:ipC),然后经过互联网发往ipC。
c. C在收到数据包后,生成响应包(src:ipC,dst:ipB),经过互联网响应给ipB。
d. 防火墙在【nat· POSTROUTING】 部分修改响应包的目的地址(改为src:ipB,dst:ipA),然后经过企业内网发往ipA。
上述过程,通过iptable的方式修改nat· POSTROUTING的映射,改变数据包的source地址来

SNAT中,将请求数据包的源地址替换时,端口一般不替换,即A用什么端口B就用什么端口,但若产生冲突,即C、D使用同一随机端口,B可以将端口替换为其他空闲端口,否则当C或D的响应包到达时,B就不知道替换为C还是D了,端口和IP都进行修改,称为PNAT。

DNAT (Destination NAT)

a. 互联网主机(ipC)想访问处于企业内网服务器A的时候,A的地址ipA是私有地址,无法直接访问。此时C可以访问处于公网的防火墙地址ipB
b. C的请求包(src:ipC, dst:ipB )被路由到防火墙B
c. 防火墙在【nat·PREROUTING】的部分修改目的地址(改为src:ipC,dst:ipA),然后发送给A
d. 服务器A收到收到请求包后生成响应包(src:ipA , dst:ipC),然后路由到防火墙B
e. 防火墙在【nat·PREROUTING】的部分修改源地址(改为src:ipB,dst:ipC)

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值