关于NAT的几种类型

本文详细介绍了NAT的四种主要类型(S-NAT,D-NAT,P-NAT,ID-NAT),以及NAT/1至NAT/4类在网络中的应用和优缺点。特别关注了锥形NAT的不同子类型,如完全锥形、受限锥形和对称锥形,以及它们在UDP/P2P等场景中的作用。
摘要由CSDN通过智能技术生成

NAT网络地址转换(Network Address Translation)主要用于解决IP地址不足而提出的,NAT主要有以下几类

1、S-NAT(Source Network Address Translation)基于源地址的NAT

2、D-NAT(Destination Network Address Translation)基于目标地址的NAT

3、P-NAT(Port Network Address Translation)基于端口的NAT

     P-NAT 也称为 P-AT(Port Address Translation)

4、ID-NAT(Identity NAT)基于ID的NAT

NAT大致为以上四类,下面阐述这些分别用于那些场景:

1、S-NAT 常用于 NAT 端口映射,DMZ、NAT/1

2、D-NAT 常用于公网重定向到内网

3、P-NAT 常用于 TCP/IP、UDP/IP 这些L3层协议

4、ID-NAT 常用于 ICMP 这些L3层协议

GRE/PPP帧,NAT路由做工是拆出欲转发IP报文在按照正常路由NAT处理的,因为GRE/PPP帧一般带的就是一个L3网络层完整的IP数据帧。

关于 NAT/1、NAT/2、NAT/3 类

1、NAT/1 类

     网络没有限制直连公网、拥有独立IP地址、路由器之中DMZ功能就是这个,或者光猫桥接到你的电脑。

     优点:网络无限制,所以几乎没有网络问题

     缺点:因为没有NAT或防火墙的保护,可能面临更高的安全风险。

2、NAT/2 类

     最常见的NAT类型,设备位于路由器后面,并通过NAT与外网通信,设备拥有私有IP地址,而路由器负责将内部流量映射到一个公网IP地址。 

     优点:保持较好网络连接的同时,提供了一定程度的网络安全。

     缺点:可能会遇到某些连接问题,尤其是在一些P2P连接的程序中。

3、NAT/3 类

     NAT或防火墙的限制非常严格,可能只允许出站连接,而对于进站连接则大多数被阻止,就是端口映射都不行,可以映射端口是 NAT/2 类。

    优点:拥有较高的安全级别,未经请求的外部流量几乎都被阻止。

    缺点:可能导致多数网络服务和P2P应用出现连接问题,影响在线游戏、视频会议等应用的体验。

4、NAT/4 类

    这种是NAT/3、NAT/3,是个不存在的NAT类型,只是有很多人这么叫,一般就是大陆国内ISP运营商给家宽整的IP地址网络,大内网套小内网。

关于锥形NAT(Cone NAT),又称为圆锥形NAT,它主要是用来描述如何处理外部到内部的连接请求,它分为以下几个类型。

1、完全锥形NAT(Full Cone NAT)

      意思就是完全不受限制,外部任意端口、IP地址都可以访问,比如P2P穿透一般需要这种,星际战甲(Warfame)那款TPS游戏,玩家练级就比较吃这个。

     但需要注意的是,完全锥形NAT,是基于端口映射关系的,即一个端口对应一个内网IP+端口(固定)不可变的。

所以:可以静态端口映射到公网的,都属于是锥形NAT。

 

2、受限锥形NAT(Restricted Cone NAT)

      这个跟完全锥形NAT很类似,区别就一个就是,它只允许来自内部主机之前已发送过数据包的外部IP地址的入站流量通过。

      你可以理解,我们在内网NAT客户端设备之中用UDP链接了外网某服务器IP,然后对面可以一直用自己的IP,任意的端口号给我们内网的设备发数据过来,这种常见是UDP、ICMP NAT。

3、端口受限锥形NAT(Port Restricted Cone NAT)

     这个跟第二个没多大区别,就是在多限制了一个端口号,主要用在TCP协议的,NAT会跟踪TCP的链接状态。(TCP connection nat tracker)限制对面不能以非这个IP+PORT的数据穿过NAT,所以TCP打不了NAT洞。

4、 对称锥形NAT(Symmetric NAT)

对称锥形NAT对于每一个不同的外部目的地(即不同的外部IP地址或端口),都会使用不同的映射。

即使是从同一个内部IP地址和端口发出的两个数据包,如果它们的目标不同,也可能被映射到两个不同的外部IP地址和端口。

这个主要用在UDP/P2P,你可以理解先打NAT洞,然后用任何类型的IP+PORT都可以向这个UDP端口发送数据,当然这个UDP端口也可以向任何目标IP+PORT地址发数据,打洞需要这种NAT,当然完全锥形NAT更好,毕竟能静态映射它不好嘛,只是这两个类型NAT大多数时候容易被人混淆。

    

  • 8
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值