路由器在从私有 IP:PORT 接收数据包时是否使用 NAT 将数据包上的源 IP 更改为其自己的公共 IP,然后当它收到响应数据包时,使用 PAT 和 PORT 来确定请求来自哪个私有 IP?
如果我们只需使用 MAC 和端口将数据包发送到路由器,然后从那里使用公共 IP,那么为什么我们需要私有 IP?
答案1
大多数人说的“NAT”实际上指的是 IETF 标准中所称的“NAPT”,在思科专有术语中称为 PAT。
NAPT 网关双向执行 NAPT。在某些情况下,端口不需要更改,并且某些 NAPT 实现选择在这些情况下不更改端口。
我们在 NAPT 网关后面使用私有 IP,因为在 LAN 上使用 IP 很方便,而不需要发明某种方式在没有网络层(第 3 层)的情况下直接在以太网上执行 TCP/UDP/ICMP/等。