NAT协议工作原理

NAT协议

NAT 是将 IP 数据报报头中的 IP 地址转换为另一个 IP 地址的过程,主要用于内部网到外部网转换的过程中。具体来讲,在一个子网(局域网,LAN)内,各主机使用的是同一个LAN下的IP,但在广域网(WAN)中,需要一个统一的IP标识该LAN在整个互联网中的位置。 IP地址的数量是有限的,为了能够使得有限的IP为更多的用户提供服务,IP地址保留了部分地址作为私网IP地址,任何组织都可以使用私网地址在其内部进行组网,通过这种方式实现IP地址的复用,除此之外的公网地址则是全球唯一的。而私网地址是不可以直接访问互联网的,这就需要使用NAT协议,将私网地址转换成公网地址。

工作原理
  1. 主机向路由器发送的数据包中包含源IP目的IP

  2. 路由器拿到数据包时,需要进行源地址转换,将源IP转换成路由器的WAN端口IP,再发送出去

  3. 服务器处理完数据包之后,则将原来数据包中的源IP和目的IP互换,并发送给路由器

  4. 路由器接收到之后,执行反向SNAT,将目标IP改成主机IP,发送给内网中的主机

特殊情况

假设同一个内网中的两台主机同时访问同一个网站,发送了两组数据包到路由器上,路由器在执行地址转换之后,服务器处理完返回的数据包中,目标地址(发送时的源地址)都会是路由器的WAN端口地址,这时就需要区分两个数据包分别属于内网中的哪个主机,此时,只关注IP地址是不行的,需要传输层的相关处理:

以TCP协议举例

TCP协议中有两个关键属性:源端口目标端口

那么,在进行源地址转换时,就需要同时修改源地IP址和源端口,并将修改后的IP和端口号形成映射关系,在返回包中,根据目标端口号的映射关系,就可以区分出是哪个主机的包了

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值