什么是MAC地址
MAC地址的长度为48位(6个字节),通常表示为12个16进制数,如:00-16-EA-AE-3C-40就是一个MAC地址,其中前3个字节,16进制数00-16-EA代表网络硬件制造商的编号,它由IEEE(电气与电子工程师协会)分配,而后3个字节,16进制数AE-3C-40代表该制造商所制造的某个网络产品(如网卡)的系列号。只要不更改自己的MAC地址,MAC地址在世界是唯一的。形象地说,MAC地址就如同身份证上的身份证号码,具有唯一性。
近期,也有客户随机生成了一批MAC地址用于2.4GHz WiFi通信,但是部分MAC不能正常联网工作,所以下面也介绍下MAC地址的组成规则与分类
查询某个厂商MAC地址前缀
查询地址:http://standards.ieee.org/develop/regauth/oui/oui.txt
MAC地址唯一码组成规则与分类
上图为MAC地址组成的大端字节分布图,可以发现:(大端:最高字节先传送,最低为先发送)
- 第48bit,用于表示这个地址是组播地址还是单播地址,如果这一位是0,表示此MAC地址是单播地址,如果这位是1,表示此MAC地址是组播地址(FF:FF:FF:FF:FF:FF标识广播)
我们计算机的MAC地址一般以小端规则标识,如下:
- 单播 MAC 地址是指第一个字节的最低位是 0 的 MAC 地址(小端书写形式:xxxxxxx0 xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx)
- 组播 MAC 地址是指第一个字节的最低位是 1 的 MAC 地址(小端书写形式:xxxxxxx1 xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx)
而物联网模组设备的MAC地址,一般指单播MAC地址,然后我们再看下乐鑫模组的MAC地址要求:(单播,STA与AP的MAC地址不能一致)