为什么 IPv6 地址这么长?

网络工程 ip 子网 ipv6 IP地址
2021-07-27 19:43:22

按照惯例,IPv6 下 LAN 上的每个设备都有一个 /64 子网,对吗?每个设备的地址数量多到令人发指!为什么不缩短地址,例如 72 位,那么每个设备将在其子网中获得 256 个地址,这将在传输过程中为每个数据包节省几个字节(这是一件好事)。为什么需要这么长的地址?

2个回答

按照惯例,IPv6 下 LAN 上的每个设备都有一个 /64 子网,对吗?

不。每个网络几乎总是一个/64网络。每个主机仍然在网络上获得一个或多个地址,但我不知道有任何操作系统可以为 LAN 上的接口处理超过几十个地址。

为什么需要这么长的地址?

这样我们就不会处于与 IPv4 相同的位置。IPv4 很久以前就用完了地址,但是通过使用诸如 NAT 之类的杂项打破 IP 端到端前提来扩展它。IPv6 拥有足够多的地址,在可预见的未来,我们不应该陷入同样的​​境地,它恢复了端到端连接的 IP 基础,因为每个设备都可以拥有唯一的 IP 地址。

除了其他答案,我会指导那些不了解 IPv6 地址如何分配给家庭/小型企业等的人阅读:https : //www.rfc-editor.org/rfc/rfc6177

我还想到了拥有 /64 站点子网的另一个好处:仅给定网络前缀,就无法进行端口扫描。对于 IPv4,端口扫描是一个严重的问题,正如我们在 Mirai 等 (UPnP) 等蠕虫中看到的那样。使用 IPv6,您猜测私有地址(64 位后缀)的概率为 2^(-64),即 0(如果他们使用随机生成的地址,如果他们关心这种安全性,他们就会这样做)。较短的地址,如 64+48(从 MAC 识别的最小值),只会为随机猜测提供 48 位的保护,实际上是 48-3*8,因为只有几个 OSI 值。