xxggmmxx 发表于 2017-7-8 12:56:13

怎么判定一个mac地址是multicast还是unicast.

  MAC地址是以太网二层使用的一个48bit(6字节十六进制数)的地址,用来标识设备位置。MAC地址分成两部分,前24位是组织唯一标识符(OUI, Organizationally unique identifier),后24位由厂商自行分配。
  MAC地址有单播、组播、广播之分。单播地址(unicast address)表示单一设备、节点,多播地址或者组播地址(multicast address、group address)表示一组设备、节点,广播地址(broadcast address)是组播的特例,表示所有地址,用全F表示:FF-FF-FF-FF-FF-FF。当然,三层的IP地址也有单播、组播、广播之分。
  48bit的MAC地址一般用6字节的十六进制来表示,如XX-XX-XX-XX-XX。IEEE 802.3规定:以太网的第48bit用于表示这个地址是组播地址还是单播地址。如果这一位是0,表示此MAC地址是单播地址,如果这位是1,表示此MAC地址是多播地址。
  举例:
  mac地址是16进制数组成,第二个16进制数是奇数就是组播mac,否则不是
  比如:a5a9-a6aa-5aa6,第二位是5奇数,转换成二进制就是:高八位二进制10100101,第八位是1,奇数,就是组播mac。
页: [1]
查看完整版本: 怎么判定一个mac地址是multicast还是unicast.