### 1、NAT概要 - Network Address Translator - 为了解决IPv4地址枯竭的问题 - 用于在本地网络中使用私有地址,在连接互联网时转而使用全局IP地址的技术 - 通常提到的NAT都是NAPT(Network Address Ports Translator)转换TCP和UDP的端口号 - 可以实现一个全局地址与多个主机通信 - 也叫IP伪装或Multi NAT ### 2、工作机制 - NAT(NAPT)路由器内部,有一张自动生成的用来转换地址的表 - 发送请求时:私有地址转换为全局的IP地址,并将端口加入到转换表 - 接收请求是:根据端口选择转发的私有地址,根据全局IP地址转换为私有地址 > 在使用TCP或UDP通信时,需要目标地址,源地址,目标端口,源端口和协议类型一致,才会被认为是同一个连接,此时使用的是NAPT ![image-20230709180623296](https://blog-heysq-1255479807.cos.ap-beijing.myqcloud.com/blog/note/image-20230709180623296.png) ### 3、NAT-PT(NAPT-PT) - 适用于IPv6网络的NAT技术 - 将IPv6首部转换为IPv4首部 - 只有IPv6地址的主机能够与IPv4地址的主机进行通信 ![image-20230709181223860](https://blog-heysq-1255479807.cos.ap-beijing.myqcloud.com/blog/note/image-20230709181223860.png) ### 4、NAT潜在问题 - 无法从NAT的外部向内部服务器建立连接 - 转换标的生成与转换操作都需要一定开销 - NAT异常重启,所有TCP连接都将被重置 - NAT灾备,TCP连接还是会断开