为什么以太网层地址有48位?

Why does the Ethernet layer address have 48 bits?

我知道一般的 Internet 数据包寻址是 32 位的。但是为什么以太网层有48位地址呢?以太网层和以太网帧是一回事吗?

没有一个 "Ethernet layer"。以太网定义了许多 physical layer variants (L1) 并在这些层之间使用公共数据 link 层 (L2)。数据 link 层的许多特性与其他几个 IEEE 协议共享。数据 link 层有很多选项,但核心对于所有以太网网络都是通用的。

对于寻址,数据 link 层使用 EUI-48 地址,这些地址也与其他协议(例如 Wi-Fi 或蓝牙)共享。这些 EUI-48 地址由两部分组成:24 位 OUI - 分配给 IEEE 的供应商特定前缀 - 和 24 位设备特定编号。

48 位大小是在降低开销和提供足够地址 space 以供应所有潜在供应商之间的权衡。由于生产量大,许多供应商使用多个 OUI。今天也有许多虚拟地址在使用(用于虚拟机和接口),因此 MAC 地址可能不像最初定义的那样唯一。

因此,IEEE提倡新协议使用EUI-64地址,将地址space扩展了65,536个。 EUI-64 地址已用于 IPv6、Firewire 和 ZigBee。

为什么 EUI-48 和 IPv4 或 IPv6 不使用相同的地址 space?简而言之,它们是完全独立开发的,并且任务不同。 IP 具有逻辑的、集中组织的地址结构,可以在全球网络中进行路由。以太网使用 "unique physical" 个可以随机组合但只能在本地工作的地址。它们相结合,使网络变得灵活且易于管理。