为什么不是所有的 MAC 地址都是随机分配的?

Owe*_*wen 3 ethernet mac-address

在 48 位上,这似乎相当安全:网络上需要 751 台设备才能有 1/10 亿的冲突概率,而完全具有第 2 层连接的 751 台设备很少见——通常有一个第 3 层路由器某处之间。一个CAM 表限制为 25000 个条目的交换机,如果在接近容量的情况下使用,则不会支持超过 1/1 百万的冲突概率。

解决随机 MAC 地址无法解决的问题的当前 MAC 地址管理方案背后的动机是什么?

Spi*_*iff 7

因为 IEEE 知道最好不要相信所有供应商都能使他们的伪随机数生成器正确。

此外,因为在 1970 年代首次使用 48 位 MAC 地址时,将 PRNG 放在每个 NIC 中的成本太高了,而且可能没有足够好的种子熵源.

请注意,以太网上的网络引导从早期就伴随着我们,因此您需要您的 NIC 硬件能够在其主机启动之前完成它需要做的一切。因此无法访问主机的处理器功能或实时时钟(例如 PRNG 种子)。

更新:即使随机数生成是在制造时完成并刻录到 ROM 中,生成好的随机数可能不是期望 1970 年代生产线做的合理的事情。它可能需要购买昂贵的小型计算机并将其安装在生产线上,培训人们使用它等。


jll*_*gre 5

使用所有 48 位作为随机地址将失去识别 NIC 制造商的能力,22 位用于此目的。还有两个具有特定含义的位(多播和本地分配的地址)。

剩下 24 位供制造商选择,因此即使发生碰撞的可能性很低,也不是空的。让制造商设置唯一的数字而不是随机的数字可以让他们避免承担这种风险以及由此产生的愤怒的客户/媒体批评。

MAC 地址会保留一段时间,因此对当前实际拓扑或大小限制所做的假设将来可能会证明是错误的。