一个普通的 NAT 可以支持多少个有效的 NAT 映射?

Val*_*oni 5 nat

一个普通的NAT box可以支持多少条NAT映射规则(即内部、私有IP:PORT和外部映射IP:PORT之间的映射)?

这样的数量是否有限制(即,可以同时“激活”多少条规则)?

ear*_*arl 8

有两个因素会影响单个设备的最大可能的 NAT 映射数:NAT 的类型和 NAT 表可用的内存量:

  • 至于 NAT 的类型,让我们考虑一个全锥 NAT,看看这如何影响可能的映射数量:每个内部ip:port对都映射到一个外部ip:port对。现在让我们假设 NAT 只有一个外部 IP 地址可用,可能映射的最大数量受外部端口可能数量的限制,即 2^16。

  • 至于 NAT 表可用的内存量,我们必须将 NAT 的两个不同类别分开:“硬件”和“软件”NAT。我认为家用路由器或专业网络设备等专用设备是硬件 NAT,而运行通用操作系统和一些 NAT 软件的库存 PC 则是软件 NAT。

    软件 NAT 显然受到主机内存量的限制,而硬件 NAT 具有用于 NAT 映射的内置内存,这通常是不可扩展的,除非您处理的是运营商级设备。然后,此固定内存的大小形成了对可以同时保持活动状态的 NAT 映射数量的限制。对于典型的家庭路由器设备,NAT 表大小在 2^10 到 2^14 个条目的范围内。

我认为这应该让您对在实践中限制 NAT 映射的维度有一个很好的了解。显然,在这个维度上还有各种其他因素,比如用户空间软件 NAT 的进程大小限制,或限制每个主机的最大映射数的策略等。