NAT 路由器地址转换过程 | AI生成和翻译
问题:在图(Figure 32)中,私有网络上的 Host A 向 Internet 上的 Host B 发送数据报。请分析为什么使用 NAT 路由器,并识别位置 ①、②、③ 和 ④ 的 IP 地址。
答案:
为什么使用 NAT 路由器
原因 1:私有 IP 地址无法在公共 Internet 上路由
Host A 使用私有 IP 地址 192.168.0.3,该地址属于 192.168.0.0/24 私有地址范围。私有地址(由 RFC 1918 定义)为:
10.0.0.0/8172.16.0.0/12192.168.0.0/16
这些地址在公共 Internet 上不可路由 — Internet 上的路由器会丢弃带有私有源地址的数据包。
原因 2:外部通信需要地址转换
为了让 Host A 与 Internet 上的 Host B (213.18.2.4) 通信,其私有地址必须 转换 为全局可路由的公网 IP 地址。此过程称为 Network Address Translation (NAT)。
原因 3:NAT 路由器执行转换
NAT 路由器位于私有网络与 Internet 之间。它:
- 在转发出站数据包时,用其自身的 公网(全局)IP 地址 (172.38.1.5) 替换私有源地址
- 对于入站回复数据包,反向执行转换,将其转发回 Host A
各位置的 IP 地址
| 位置 | 方向 | 字段 | IP 地址 | 解释 |
|---|---|---|---|---|
| ① | 出站(私有网内部) | Source IP | 192.168.0.3 | Host A 的私有地址作为源地址 |
| ② | 返回(私有网内部) | Destination IP | 192.168.0.3 | 回复数据包必须送达 Host A |
| ③ | 出站(向 Internet) | Source IP | 172.38.1.5 | NAT 路由器用其公网 IP 替换私有源地址 |
| ④ | 返回(向 Internet) | Destination IP | 172.38.1.5 | Host B 将回复发送至 NAT 路由器的公网 IP |
NAT 转换过程总结
Host A (192.168.0.3) ──► NAT 路由器 ──► Internet ──► Host B (213.18.2.4)
源:192.168.0.3 源变为:172.38.1.5
目的:213.18.2.4 目的保持:213.18.2.4
Host A (192.168.0.3) ◄── NAT 路由器 ◄── Internet ◄── Host B (213.18.2.4)
目的:192.168.0.3 目的变为:192.168.0.3
源:213.18.2.4 源保持:213.18.2.4
NAT 路由器维护一个 translation table 来跟踪每个活动连接对应的内部主机,从而实现返回数据包的正确投递。