可以为给定计算机分配的最大 IP 数量是多少?

可以为给定计算机分配的最大 IP 数量是多少?

对于 Linux 服务器,我确实需要了解这一点,但由于它也适用于客户端操作系统,所以我认为应该在这里提出这个问题,而不是服务器故障。

答案1

根据回复这篇帖子发到 linux-net 邮件列表

  • 有一次,Linux 内核对每个物理接口设备的别名限制为 255 个。
  • 从 Linux 内核 2.2 版开始,就没有(实际)限制了,第二个回应引用了将超过 5,000 个地址别名为单个以太网卡的个人经验。

当然,将大量别名绑定到单个设备将产生内存需求,并可能对性能产生影响,因此即使内核本身没有限制,硬件也完全有可能限制您可以添加的别名数量。

答案2

比您可能需要的还要多。用于ip addr add将地址添加到接口。

答案3

最大值为 4,294,967,294 个 IP 地址(假设您谈论的是 IPV4,您有足够的 RAM,并且我们取出一个用于广播地址,一个用于网络地址)。

答案4

Linux 内核有一个特性叫做任何IP它允许您通过 Linux 环回接口以极低的 DRAM/CPU 成本应答连续的 IPv4 或 IPv6 地址块。

例如,假设我希望我的 Linux 机器回答 10.7.0.0/16 中的任何地址:

  • 在linux系统上添加本地路由:ip -4 route add local 10.7.0.0/16 dev lo
  • 要求您的网络工程师公布一条指向您执行此操作的机器的 eth0 地址的 10.7.0.0/16 路由。

恭喜,您现在可以负责大量的地址(本例中超过 65,000 个),并且您的 RAM 消耗实际上为零。就可扩展性而言,此解决方案远比在 eth0 上为您想要负责的所有 IP 添加单独的接口别名要好得多。

对于您可以像这样回答的地址数量没有限制。

相关内容