MAC Address(Media Access Control Address)亦称为:硬件地址、物理地址(Physical Address)。一个MAC地址唯一指定一台设备,全球唯一,并且通常烧写在固件中。

结构

mac RocketMQ Namesrv的地址怎么看_mac

MAC地址如图所示,其前3字节表示OUI(Organizationally Unique Identifier),由IEEE的注册管理机构给不同厂家分配的代码,区分不同的厂家。后3字节由厂家自行分配。

 

MAC地址第一个字节的低第二位(b1)表示这个MAC地址是全局的还是本地的,即U/L(Universal/Local)位,如果为0,表示是全局地址。所有的OUI这一位都是0。

MAC地址第一个字节的低第一位(b0)表示这个MAC地址是单播还是多播。0表示单播。

部分OUI:

IEEE:00-80-C2

IANA:00-00-5E

Cisco:00-00-0C

特殊MAC地址

广播地址:

全F,在本VLAN内泛洪。

单播地址:

00-00-5E开头:

  • 00-01-00 to 00-01-FF VRRP (Virtual Router Redundancy Protocol) [RFC5798]
  • 00-02-00 to 00-02-FF VRRP IPv6 (Virtual Router Redundancy Protocol IPv6) [RFC5798]
  • 90-01-00 TRILL OAM [RFC7455]

组播地址:

只要第48bit是1就表示组播地址

01-80-C2-00-00-00(STP协议使用)

01-80-C2-00-00-01(MAC Control的PAUSE帧使用)

01-80-C2-00-00-02(Slow Protocol: 802.3ah OAM/ LACP 协议)

01-00-5E-xx-xx-xx(IP组播地址对应的二层组播地址)。

01-00-5E开头:

  • 00-00-00 to 7F-FF-FF IPv4 Multicast [RFC1112]
  • 80-00-00 to 8F-FF-FF MPLS Multicast [RFC5332]
  • 90-00-00 MPLS-TP p2p [RFC7213]
  • 90-00-01 Bidirectional Forwarding Detection (BFD) on Link Aggregation Group (LAG) Interfaces [RFC7130]
  • 90-01-00 TRILL OAM [RFC7455]

映射组播IP为组播MAC地址转换

IPv4组播MAC地址为IANA定义,前25位固定。而组播IP为D类IP地址,其前4位固定为1110b。将组播IP的低23位直接映射到MAC地址的低23位,即可与前面固定的25位组成一个48位的MAC地址。

由于组播IP还有5位没有映射到MAC地址中,因此组播MAC地址与组播IP不是一一映射,而是一对多的关系,一个组播MAC地址对应32位组播IP地址。

mac RocketMQ Namesrv的地址怎么看_5e_02

ip地址分类

mac RocketMQ Namesrv的地址怎么看_mac_03


A类 :00000000×××——01111111××× 

                0.0.0.0 —— 127.255.255.255 

B类 :10000000,00000000×××——10111111,11111111××× 

               128.0.0.0——191.255.255.255

C类 :11000000,00000000,0000000×××——11011111,1111111,1111111××× 

               192.0.0.0——223.255.255.255

D类 :11100000××——111011111××××

            224.0.0.0——239.255.255.255 (组播地址)

E类 :11110000×××——11110111×××  

            240.0.0.0——247.255.255.255 (科学实验)

IP组播和单播的目的地址不同,IP组播的目的地址是组地址——D类地址.

组播IP地址是本地管理组播地址:239.0.0.0~239.255.255.255

D类地址是从224.0.0.0到239.255.255.255之间的IP地址

其中224.0.0.0到224.0.0.255是被保留的地址

224.0.0.1表示子网中所有的组播组

224.0.0.2表示子网中的所有路由器

224.0.0.5表示OSPF(Open Shortest Path First)路由器

224.0.0.6表示OSPF指定路由器

224.0.0.12表示DHCP(Dynamic Host Configuration Protocol)服务器.

 224.0.0.0――224.0.0.255只能用于局域网中路由器是不会转发的

239.0.0.0――239.255.255.255是私有地址 (与192.168. *.*功能一样)

224.0.1.0—238.255.255.255可以用于Internet上。

如果你的主机开启了IRDp(Internet路由 发现协议,使用组播功能)功能,那么你的主机路由表中应该会有这样的一条路由。

2层的MAC地址是如何与3层的IP地址进行映射的呢?通过将MAC地址的前25位强行规定位01.00.5E,而后23位对应IP地址的后23位,而组播IP地址的前4位均相同如:
       IP地址:1110yyyy.yxxxxxxx.xxxxxxx.xxxxxxxx
       MAC地址:00000001.00000000.01011110.0xxxxxxx.xxxxxxx.xxxxxxxx
例如:组播IP地址224.215.145.230应该映射到下列哪个组播MAC地址?( )

    (A) 01-00-5e-57-91-e6   (B) 01-00-5e-d7-91-e6

   (C) 01-00-5e-5b-91-e6   (D) 01-00-5e-55-91-e6

    用二进制来换算,将215.145.230换算成1101,0111,1001,0001,1110,0110,取最后23位放到MAC地址中的23位可以计算得出答案是A。
    显然有32个IP地址(有5个y可以不一样)对应一个MAC地址,所以要避免在同一网络中使用的多个组播IP地址对应一个MAC地址。