NAPT与NAT的区别在于,NAPT不仅转换IP包中的IP地址,还对IP包中TCP和UDP的Port进行转换。这使得多台私有网主机利用1个NAT公共IP就可以同时和公共网进行通信。(NAPT多了对TCP和UDP的端口号的转换)

一、带防火墙的NAT

NAT一开始的功能只是一种映射,其功能是将内网IP、端口 映射到 公网 IP 端口;而防火墙的功能是过滤进出内网的数据,带防火墙功能的NAT,即带有过滤功能的NAT,即有限制数据功能的NAT。

(1)锥形NAT(cone NAT)
锥型的NAT,内网IP、端口{X:y} 唯一映射到公网IP、端口{A:b},即 {X:y}——>{A:b}

与公网主机建立通信时,将每个公网主机看做一点,这所有的点就相当于一个面,而因为映射 {X:y}——>{A:b}是唯一的,由点{A:b}到面建立连线形成的就是一个锥形

(2)对称NAT(Symmetric NAT)
与不同的公网主机{IP:port}通信时,内网的IP、端口{X:y} 都会为这一次的通信建立一个唯一的映射:{X:y}——>{IP:port},即每一次的通信映射和公网主机的数量是一一对应的,所以称为对称。

二、cone NAT(锥形NAT)
(1)Full cone NAT 完全圆锥型
全锥型NAT
如上图所示,内网IP、端口{X:y} 与公网IP、端口{A:b} 建立映射,并绑定 {X:y}——>{A:b}

绑定建立后,无论外部数据来自于哪个公网主机(M、P、S),都允许与内网主机建立通信

(2)Restricted cone NAT 受限圆锥型
在这里插入图片描述
在完全圆锥型建立了映射 {X:y}——>{A:b} 的基础上,此时,公网的主机想要访问内网主机增加了一条限制

即:内网主机( {X:y}——>{A:b} )访问过公网主机 P,则主机P可访问内网主机{X:y},且端口不受限{P:q}、{P:r};而非公网主机P的 M、S均无法访问内网主机

(3)Port Restricted cone NAT 端口受限圆锥型
在这里插入图片描述
在受限圆锥型对IP有限制的基础上,继续增加对端口的限制,不仅要是内网主机( {X:y}——>{A:b} )访问过公网主机 P,还要细化是哪一个端口

即: 映射{X:y}——>{A:b} 访问过公网主机{M:N},则{M:N}可访问内网主机{X:y},同为公网的主机S则不可访问内网 【受限圆锥型】
映射{X:y}——>{A:b} 访问过公网主机 {P:q},则{P:q}可访问内网主机 {X:y},同一个IP的{P:r}也不能访问内网主机【端口受限圆锥型】

三、Symmetric NAT(对称NAT)
在这里插入图片描述

与不同的公网主机{IP:port}通信时,内网的IP、端口{X:y} 都会为这一次的通信建立一个唯一映射,

即: 内网主机{X:y} 访问过 公网主机{M:n},生成一个映射 {X:y}——>{C:d},公网主机{M:n}就可以访问内网主机{X:y}同为公网的主机S不可访问内网
内网主机{X:y} 访问过 公网主机 {P:q},生成一个映射 {X:y}——>{A:b},公网主机{P:q}就可以访问内网主机{X:y},同一个IP的{P:r}却不可访问内网

四、目前比较常用的NAT类型是完全锥型NAT:
1.首先目前绝大多数的路由器都是非对称型NAT(Cone NAT),所以P2P技术才能正常使用。 对称/非对称的区别主要在于:网关设备在实现NAT时,对于内网某主机的若干个UDP连接请求,网关设备对应地在外网上所建立的UDP端口数量。对称NAT是一个请求对应一个端口,非对称NAT是多个请求对应一个端口(象锥形,所以叫Cone NAT)

2.对称型NAT(Symmetric NAT)是无法实现P2P技术