在 MAC 地址(媒体访问控制地址)中,最高字节(即第一个字节)的两个最低有效位(LSB,Least Significant Bits)具有特定含义,它们用来表示该地址是单播或多播,以及是局部分配的还是全局唯一的。
1. 最高字节的前两位定义
- 第1位(LSB):I/G 位(Individual/Group,单播/多播)。
- 0:表示该 MAC 地址是一个单播地址。
- 1:表示该 MAC 地址是一个多播地址。
- 第2位(从右数第2位):U/L 位(Universal/Local,全球唯一/本地管理)。
- 0:表示该 MAC 地址是全局唯一的,由 IEEE 分配(常称为全球地址)。
- 1:表示该 MAC 地址是本地管理的地址(由管理员或设备自行定义,称为局部地址)。
2. 示例说明
假设我们有一个 MAC 地址的最高字节(MSB):02。在二进制表示中,02 是 00000010。
- 第1位(LSB)是 0:表示这是一个单播地址。
- 第2位是 1:表示这是一个局部管理的地址(非全球唯一,可能由设备自己定义)。
总结
- I/G 位:用于区分单播(0)和多播(1)。
- U/L 位:用于区分全局(0)和本地管理(1)。
全局单播 MAC 地址:
- 第1位(LSB)为 0 表示单播。
- 第2位为 0 表示全局唯一(由 IEEE 分配)。
例如,MAC 地址 00:1A:2B:3C:4D:5E,其 MSB 是 00(二进制 00000000),表示这是一个全局分配的单播地址。
局部单播 MAC 地址:
- 第1位(LSB)为 0表示单播。
- 第2位为 1表示局部管理。
例如,MAC 地址 02:1A:2B:3C:4D:5E,其 MSB 是 02(二进制 00000010),表示这是一个局部管理的单播地址。
如果最低两位配错 会有什么后果?什么情况下下是非法的MAC?
MAC 地址的最低两位(即 U/L 位和 I/G 位)的错误配置可能会导致网络通信问题,但不会造成完全非法的 MAC 地址。不同的配置错误会对网络行为产生不同的影响。
最低两位配置错误的后果
I/G 位配置错误(单播与多播的错误配置)
- 单播地址配置成多播地址:
如果一个设备的 MAC 地址本应是单播地址(如用于唯一标识一个设备),但配置成了多播地址(第1位为 1),那么设备可能无法正确接收点对点的通信。大多数交换机会认为这是一个多播地址,并将数据包发送到多个设备,而不是唯一目标设备,导致数据包的路由和传递出现问题。
- 多播地址配置成单播地址:
如果一个本应用于多播的地址被错误配置为单播地址(第1位为 0),网络设备可能无法正确识别这个地址为多播地址,无法向多个设备发送消息。这会导致多播通信失败。
U/L 位配置错误(全局/本地的错误配置)
- 全局地址配置为本地地址:
如果一个由 IEEE 分配的全局唯一地址错误地配置为本地管理地址(第2位为 1),虽然设备仍可以正常工作,但会丧失全球唯一性。设备将不会再被识别为具有 IEEE 分配的 OUI,这可能在大型网络中引发冲突,因为其他设备也可能使用相同的本地管理地址。
- 本地地址配置为全局地址:
如果一个本地管理的地址错误地配置为全局唯一地址(第2位为 0),则设备将冒充具有 IEEE OUI 的地址。这可能导致网络中出现地址冲突,尤其是在网络中的多个设备生成了相同的本地地址,这可能会破坏网络通信。
非法 MAC 地址的情况
MAC 地址一般是48位(6字节)的二进制数,通常用 16 进制表示。尽管从技术上讲,没有“非法”的 MAC 地址,但有一些情况会导致 MAC 地址无效或不合适使用:
非法或不推荐的 MAC 地址包括:
1. 全 0 或全 F 的 MAC 地址:
- 00:00:00:00:00:00 或 FF:FF:FF:FF:FF:FF。
- 全 0 的 MAC 地址通常表示没有有效的 MAC 地址,而全 F 的地址是广播地址,用于发送到网络上的所有设备。这些地址不能用于标识一个具体设备。
2. MAC 地址冲突:
- 如果多个设备共享相同的 MAC 地址(尤其是在全局唯一地址的情况下),则会导致网络通信冲突,交换机无法正确转发数据包。
3. 未正确格式化的 MAC 地址:
- MAC 地址的格式应为 6 个字节(48 位),用 12 位 16 进制数表示。任何超出该格式的地址都是非法的。
4. OUI 未分配或误用:
- MAC 地址的前 3 个字节(24 位)为 OUI(组织唯一标识符),是由 IEEE 分配的。如果未经过 IEEE 分配的 OUI 被用作全局地址,则该地址实际上是非法的,因为它没有合法的分配权限。
总结:
- I/G 位错误配置(将单播配置为多播或反之)会影响设备接收数据包的方式。
- U/L 位错误配置(将全局配置为本地或反之)可能导致地址冲突或设备识别问题。
- 完全非法的 MAC 地址情况较少见,但如果地址是全 0、全 F 或未经过 IEEE 分配的 OUI,则可能被视为非法。