MAC地址规则及算法介绍

MAC地址规则及算法介绍

2023年7月13日发(作者:)

MAC地址规则及算法介绍概述·MAC地址(MAC Address)·MAC(Medium/Media Access Control)地址,⽤来表⽰互联⽹上每⼀个站点的标识符,采⽤⼗六进制数表⽰,共六个字节(48位)。其中,前三个字节是由IEEE的注册管理机构RA负责给不同⼚家分配的代码(⾼位24位),也称为“编制上唯⼀的标识符”(Organizationally Unique Identifier),后三个字节(低位24位)由各⼚家⾃⾏指派给⽣产的适配器接⼝,称为扩展标识符(唯⼀性)。⼀个地址块可以⽣成224个不同的地址。MAC地址实际上就是适配器地址或适配器标识符EUI-48。解释·MAC(Media Access Control,介质访问控制)地址,也叫硬件地址,长度是48⽐特(6字节),由16进制的数字组成,分为前24位和后24位:·前24位叫做组织唯⼀标志符(Organizationally Unique Identifier,即OUI),是由IEEE的注册管理机构给不同⼚家分配的代码,区分了不同的⼚家。·后24位是由⼚家⾃⼰分配的,称为扩展标识符。同⼀个⼚家⽣产的⽹卡中MAC地址后24位是不同的。·MAC地址对应于OSI参考模型的第⼆层数据链路层,⼯作在数据链路层的交换机维护着计算机MAC地址和⾃⾝端⼝的数据库,交换机根据收到的数据帧中的“⽬的MAC地址”字段来转发数据帧。·其中第1字节的第8Bit(如图中对应的,加粗字体的Bit)标识这个地址是组播地址还是单播地址。这是由以太⽹的传输协议⾼字节先传,但每⼀字节内低位先传的特性所决定的,见IEEE 802.3 3.2.3 Address fields:“The first bit (LSB) shall be used in the Destination Address field as an address type designation bit to identify theDestination Address either as an individual or as a group address. If this bit is 0, it shall indicate that the address fieldcontains an individual address. If this bit is 1, it shall indicate that the address field contains a group address that identifiesnone, one or more, or all of the stations connected to the LAN. In the Source Address field, the first bit is reserved and setto 0.”。事实上这传输的顺序为1...“The first bit (LSB)”即是前⾔的第8Bit。·⽹卡的物理地址通常是由⽹卡⽣产⼚家烧⼊⽹卡的EPROM(⼀种闪存芯⽚,通常可以通过程序擦写),它存储的是传输数据时真正赖以标识发出数据的电脑和接收数据的主机的地址。·也就是说,在⽹络底层的物理传输过程中,是通过物理地址来识别主机的,它⼀定是全球唯⼀的。⽐如,著名的以太⽹卡,其物理地址是48bit(⽐特位)的整数,如:44-45-53-54-00-00,以机器可读的⽅式存⼊主机接⼝中。以太⽹地址管理机构(除了管这个外还管别的)(IEEE)(IEEE:电⽓和电⼦⼯程师协会)将以太⽹地址,也就是48⽐特的不同组合,分为若⼲独⽴的连续地址组,⽣产以太⽹⽹卡的⼚家就购买其中⼀组,具体⽣产时,逐个将唯⼀地址赋予以太⽹卡。形象地说,MAC地址就如同我们⾝份证上的⾝份证号码,具有全球唯⼀性。算法-- lua实现 By:Wiger-- 获取随机MAC地址function getRandomAddress() local adrArray = { "0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "A", "B", "C", "D", "E", "F" } local adrStr = "" seed(tostring(()):reverse():sub(1, 6)) for i = 1, 12 do local index = 0 if i ~= 2 then index = (1, 16) else -- 第⼆位只能是偶数 local indexArray = { 1, 3, 5, 7, 9, 11, 13, 15 } index = indexArray[(1, 8)] end

adrStr = adrStr .. adrArray[index] end return adrStrend参考:

发布者:admin,转转请注明出处:http://www.yc00.com/news/1689244212a225538.html

相关推荐

发表回复

评论列表(0条)

  • 暂无评论

联系我们

400-800-8888

在线咨询: QQ交谈

邮件:admin@example.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信