NAT 是一种网络技术,主要用于在 私有网络(如家庭或企业内网)和 公共网络(如互联网)之间转换 IP 地址。它解决了 IPv4 地址不足的问题,并增强了网络安全性。
NAT 的全称是 Network Address Translation(网络地址转换)。
常见场景
家庭路由器将多个设备(手机、电脑等)的私有 IP(如 192.168.10.x)转换为一个公网 IP,共享上网。
服务器端口映射将外网请求转发到内网服务器的指定端口(如将公网 IP 的 80 端口映射到内网 Web 服务器)。
安全隔离隐藏内网设备的真实 IP,防止直接暴露在公网中。
公网与私网公网IP地址是指internet上全局的IP地址,网段不能重叠,公网中的路由器只转发目的地址为公网地址的报文。
在IP地址划分中,A类、B类、C类的一些IP地址被保留为私有IP地址,私网IP地址不能在公网上使用,只能在内网使用。
公网中的路由器没有到私有地址的路由。
地址范围:
A类IP地址:
10.0.0.0 - 10.255.255.255。
B类IP地址:
172.16.0.0 - 172.31.255.255。
C类IP地址:
192.168.0.0 - 192.168.255.255。
NAT分类上图中,核心分类的静态 NAT,动态 NAT,NAPT,Easy IP都可以实现用户私网访问公网的功能。
静态NAT私网和公网连接的路由器做静态 NAT,私网地址和公网地址做1:1对应,同时这种NAT不保存公网IP地址。
如上图所示,运营商分配了2个公网地址15.x.x.x,边界路由器上配置静态NAT,将PC1的私网地址192.168.3.2映射到公网地址15.x.x.11。
将PC2的私网地址192.168.3.10映射到公网地址15.x.x.12,路由器上生成静态地址映射表。PC1 和 PC2 访问 Internet,PC1和PC2的私网IP地址被对应的公网IP地址替换。
返回数据包时,数据先发给路由器,路由器查找静态地址映射表,将公有地址转换为私有地址,最后发送将数据发送到对应的终端设备。
动态NAT为避免地址浪费,动态 NAT 提出了地址池的概念,地址池中所有可用的公共地址。
配置动态NAT后,路由器根据可用的公网IP地址生成一个公网IP地址池。数据包经过路由器。路由器将PC的私网IP地址替换为空闲的公网IP地址,然后访问Internet。
公共地址和私有地址之间的一对一映射是临时建立的。PC通过路由器翻译出来的公网IP地址是公网地址池中一个暂时空闲的公网IP地址。因此,动态NAT只支持单向访问,只能从内网访问公网。NAPT在动态NAT基础上,同步转换 IP 地址和转换端口号。就是NAPT,实现了公有地址和私有地址的一对多映射
如上图所示,路由器会生成动态地址和端口映射表。终端访问Internet,数据包有源端口、目的端口、源地址和目的地址参数到路由器,路由器进行公共地址转换和源端口转换。转换后的端口号和公网IP地址都记录在动态地址和端口映射表中。
NAPT传输层端口号,区分内网终端,使多个私网IP地址共享一个公网IP地址,从而节省IP地址。
Easy IP实现原理与NAPT相同,转换 IP 地址和传输层端口。Easy IP没有地址池的概念,将接口地址作为公网IP地址进行NAT。
Easy IP应用只适用于公网IP固定的地址场景。
NAT优缺点NAT的优点:
节省IPv4地址:多设备共享一个公网IP,缓解地址不足问题。
增强安全性:隐藏内网结构,减少外部攻击面。
灵活组网:内网IP可自由规划,无需依赖公网地址分配。
NAT的缺点:
破坏端到端通信:转换IP/端口可能影响P2P应用(如视频通话、BT下载)。
增加复杂度:需额外处理协议兼容性(如FTP、IPsec)。
性能损耗:大规模转换时可能产生延迟,且故障排查困难(IP映射掩盖真实路径)。