是否存在使用路由器转换公共 IP 地址的有效场景?

网络工程 路由器 ipv4 ip 纳特 IP地址
2021-07-14 19:23:08

NAT 通常是指路由器将 IP 地址从私有网络转换为公共 IP 地址,以便私有网络上的节点可以访问公共 Internet。

是否存在使用路由器 * 将地址从公共 IP 地址转换为另一个公共 IP 地址的有效场景?

*注意:我只是在谈论路由器,而不是代理。

4个回答

每次我访问 StackExchange 时,都会发生一种符合“将地址从公共 IP 地址转换为另一个公共 IP 地址”的描述的场景。

即使我网络上的每台计算机都有公共 IP 地址,我也无法直接访问 StackExchange,因为 StackExchange 仅支持 IPv4。因此,此答案是通过 NAT64 发送的,该 NAT64 将公共 IPv6 地址转换为公共 IPv4 地址。

在同一协议内的不同公共 IP 地址之间进行转换的情况也会发生。我遇到过一家拥有/8IPv4 空间并将该范围内的地址分配给内部主机的公司。但是他们仍然使用 NAT 来转换地址,这样外部流量就会被视为来自外部的 IPv4 地址/8

我不知道为什么那家公司选择使用 NAT,而实际上他们有足够的 IPv4 地址不需要它。我认为没有 NAT 的每个此类部署都可以更好地工作,但我不能绝对肯定地说,因为我显然不了解世界上每个 NAT 背后发生的事情。

是的。端口映射/目标 NAT 也可以使用公共目标 IP。想象一个负载平衡/故障转移场景,您将虚拟/平衡 IP 地址映射到专用服务器地址。通常这是使用私有地址完成的,但没有理由不使用公共地址。

NAT 用于转换网络地址,源地址、目标地址或两者兼而有之。IP 和 NAT 对任意分配的公共或私有地址一无所知。IP 中没有任何内在的东西来定义公共地址或私有地址。简单地说,ISP 已经同意不根据某些地址范围转发流量,但这与 IP 或 NAT 无关。完全可以使用 NAT 来转换 Private-to-Private、Private-to-Public、Public-to-Private 或 Public-to-Public 地址。

话虽如此,如果可能的话,应该避免 NAT。由于无法在公共 Internet 上使用私有寻址,因此您可能希望使用 NAT。完全有可能有人会使用 NAT 来转换任何其他场景,但应该有充分的理由这样做,因为 NAT 打破了端到端 IP 范式。

我能想到几个用例

  • 网络管理员选择使用 8.8.8.8 和 8.8.4.4 为 DNS 服务器配置所有系统,然后使用 NAT 将请求发送到任何批准的服务器......这只是一个通过网络修补常用服务的示例
  • 处理古董:在 RFC 1597(现在是 1918 年)之前,许多计算机的地址选择不当。例如,Sun 工作站几乎总是在 192.9.200.0/24

我想这些和类似的东西都归于一个普遍的想法,即那些负责网络的人可能不负责服务器,但可能仍然必须使网络正常运行。

乔纳森