网络地址端口转换(NAPT)
什么是NAPT(网络地址端口转换)?
NAPT是“网络地址端口转换”(Network Address Port Translation)的缩写,是一种将TCP(或UDP)/IP数据包中的IP地址和端口号转换为其他IP地址和端口号的技术。它也称为IP伪装,可视为IP地址转换技术NAT(网络地址转换)的演进。
NAT是指将IP数据包标头中的IP地址从一个地址转换为另一个地址。它通常用于让分配了私有IP地址(为解决IPv4地址耗尽问题而引入)的内部设备,通过共享的全局IP地址与互联网上的外部服务器通信。但是,NAT仅支持一对一地址映射,无法处理多个设备同时通信。NAPT正是为解决这一限制而开发的。
使用NAPT时,收到来自分配了私有IP地址的设备的数据包后,NAPT会将源IP地址转换为全局IP地址,并修改源端口号。NAPT会记录转换前后地址的对应关系,然后将数据包转发到互联网。服务器将响应发送到修改后的IP地址和端口号,NAPT据此映射回原始私有IP地址和端口号,再将数据包传送到发起通信的设备。通过更改端口号,NAPT可以区分不同的私有IP地址。因此,多个设备可以使用同一个全局IP地址同时通信,并通过各自的端口号进行唯一标识。
如今,“NAT”一词通常也作为包含NAPT在内的统称。虽然NAPT通过对外部实体隐藏专用网络,本身可在一定程度上隐蔽网络,但并非完全可靠的安全解决方案。要有效应对各类安全威胁,还需要采用其他隧道技术和端到端技术。
