目录
[一、为什么需要 NAT?](#一、为什么需要 NAT?)
[二、NAT 到底是什么?](#二、NAT 到底是什么?)
[三、NAT 完整工作流程(最核心)](#三、NAT 完整工作流程(最核心))
[1. 内网主机发包(私网IP)](#1. 内网主机发包(私网IP))
[2. 路由器执行 NAT 转换(出网)](#2. 路由器执行 NAT 转换(出网))
[3. 外网服务器正常回包](#3. 外网服务器正常回包)
[4. 路由器查表转发(入网)](#4. 路由器查表转发(入网))
[5. 主机收到数据,通信完成](#5. 主机收到数据,通信完成)
[四、一句话总结 NAT 核心逻辑](#四、一句话总结 NAT 核心逻辑)
[五、常见的三种 NAT 类型](#五、常见的三种 NAT 类型)
[1. 静态 NAT](#1. 静态 NAT)
[2. 动态 NAT](#2. 动态 NAT)
[3. NAPT(端口多路复用 NAT)------最常用](#3. NAPT(端口多路复用 NAT)——最常用)
[六、NAT 的优缺点](#六、NAT 的优缺点)
学计算机网络的时候,很多人都有一个疑惑:
学校、家里的电脑、手机全都是 192.168.x.x 这种私网 IP,明明不是公网 IP,为什么却能正常上网、刷视频、访问百度?
答案就是:因为有 NAT 机制。
可以说,没有 NAT,IPv4 网络早就不够用了。今天我用最通俗的逻辑,完整梳理 NAT 的作用、工作流程和常见类型。
一、为什么需要 NAT?
我们都知道 IPv4 公网地址数量有限,早就不够全世界设备分了。
所以网络设计出了 私网 IP + NAT 的方案:
多个设备共用 一个公网 IP 上网,极大节省公网地址。
简单区分:
私网 IP:只能在局域网内使用,不能在公网路由
公网 IP:全球唯一,可以直接访问互联网
而 NAT,就是负责把「私网IP」转换成「公网IP」的关键机制。
二、NAT 到底是什么?
**NAT(网络地址转换)**工作在路由器/网关设备上。
所有内网设备上网的数据包,经过路由器时,NAT 都会做一件事:
替换数据包里的源 IP 和端口,把私网地址换成公网地址。
外网回包时,再根据记录,把公网地址换回对应的内网设备地址。
三、NAT 完整工作流程(最核心)
我以「电脑访问百度」为例,一步步带你看懂 NAT 的全过程,非常好理解。
1. 内网主机发包(私网IP)
我的电脑 IP 是
192.168.1.100,想要访问百度服务器。此时数据包的源地址是:私网IP + 随机端口
源:192.168.1.100:50000
目标:百度公网IP:80
2. 路由器执行 NAT 转换(出网)
数据包到达路由器后,路由器发现这是内网访问外网,触发 NAT:
把私网源IP、源端口删掉
替换成自己的公网IP + 新端口
在 NAT 映射表 记录对应关系
转换后数据包变成:
源:你的公网IP:10001
目标:百度公网IP:80
**重点:**不同内网设备、不同连接,路由器会分配不同端口,用来区分是谁的流量。
3. 外网服务器正常回包
百度收到请求,只会看到你的公网IP,它会把数据返回给:
公网IP:10001
4. 路由器查表转发(入网)
路由器收到外网回包,查询 NAT 映射表:
端口10001 对应的内网设备是 192.168.1.100:50000
于是把目标地址换回内网地址,转发给你的电脑。
5. 主机收到数据,通信完成
整个过程电脑完全无感,全程由路由器自动完成。
四、一句话总结 NAT 核心逻辑
出网:替换私网为公网IP+端口,记录映射
入网:根据端口查表,换回私网IP,精准转发
五、常见的三种 NAT 类型
1. 静态 NAT
私网IP 和 公网IP 一对一永久绑定。
一般用于服务器,比如内网服务器固定映射一个公网IP,外网可以主动访问。
2. 动态 NAT
公网IP池随机分配,空闲公网IP随机给内网设备使用。
用完释放,不固定对应关系。
3. NAPT(端口多路复用 NAT)------最常用
就是我们家里、学校、手机上网用的模式。
多个内网设备共用同一个公网IP,靠端口区分不同连接。
这是节省 IPv4 地址最核心的技术。
六、NAT 的优缺点
优点
极大节省公网 IPv4 地址,缓解地址枯竭
隐藏内网真实 IP,一定程度提升内网安全性
内网设备可以自由上网,无需独立公网IP
缺点
不支持外网主动访问内网(默认只能内网主动往外发)
部分需要点对点连接的程序(游戏、P2P)会受限制
NAT 转换会消耗路由器性能,产生轻微延迟
七、最终极简总结
NAT 是路由器的地址转换机制,通过「IP+端口」映射,让大量内网私网设备共用少量公网IP上网。出网替换私网地址、记录映射;入网查询映射表、转发给对应内网主机。有效解决 IPv4 地址不足问题,但默认阻断外网主动访问内网。