IPv4组播MAC地址(不包含IPv6组播,协议使用组播等),换算公式:高24位为0X01005e,第25位为0,后23位为IPv4组播地址的低23位。Eg:224.0.1.1对应组播MAC为:01-00-5e-00-01-01
224. 0. 1. 1
0000 0000 0000 0001 0000 0001=01-00-5e-00-01-01
0 0 0 1 0 1
Eg:
239. 128. 137. 36
1000 0000 1000 1001 0010 0100=01-00-5e-00-89-24
8 0 8 9 2 4
239. 64. 137. 36
0100 0000 1000 1001 0010 0100=01-00-5e-40-89-24
4 0 8 9 2 4
239. 192. 137. 36
1100 0000 1000 1001 0010 0100=01-00-5e-40-89-24
(C)8+4 0 8 9 2 4
总结:IPv4组播地址以01-00-5e开头,第25位为0(也就是标红色部分),后面的以组播地址后23位的16进制来表示。
D类地址开头:1110 后面还有28位可变
组播IPv4MAC地址开头:01-00-5e-0 后面还有23位固定对应IP地址
28-23=5,2^5=32意味着组播IPv4地址和MAC地址的比例是32:1,也就是32个地址会对应同一个MAC
这样在二层封装的时候,可能出现相同MAC地址,但IP不通,这时就在三层丢弃
IPv6组播MAC地址(不包含IPv4,协议使用组播等),换算公式:高16位为0X3333,后32位为IPv6地址低32位。
Eg:FF01::1111:1对应组播MAC为:3333-1111-0001
FF1E::A1A1:1A1A:2A3B 对应组播MAC为:3333-1A1A-2A3B
总结:在IPv6组播地址中,有更多的IP使用相同的组播MAC。