MAC地址规则

news/2024/12/23 7:15:27/

 

MAC(Media AccessControl,介质访问控制)地址,也叫硬件地址,长度是48比特(6字节),由16进制的数字组成,分为前24位和后24位:

  • 前24位叫做组织唯一标志符(Organizationally Unique Identifier,即OUI),是由IEEE的注册管理机构给不同厂家分配的代码,区分了不同的厂家。
  • 后24位是由厂家自己分配的,称为扩展标识符。同一个厂家生产的网卡中MAC地址后24位是不同的。

MAC地址对应于OSI参考模型的第二层数据链路层,工作在数据链路层的交换机维护着计算机MAC地址和自身端口的数据库,交换机根据收到的数据帧中的“目的MAC地址”字段来转发数据帧。

 

其中第1字节的第8Bit(如图中00-50-BA-...对应的00000000-01010000-10111010-...,加粗字体的Bit)标识这个地址是组播地址还是单播地址。这是由以太网的传输协议高字节先传,但每一字节内低位先传的特性所决定的,见IEEE 802.3 3.2.3 Address fields: “The firstbit (LSB) shall be used in the Destination Address field as an address typedesignation bit to identify the Destination Address either as an individual oras 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 theaddress field contains a group address that identifies none, one or more, orall of the stations connected to the LAN. In the Source Address field, thefirst bit is reserved and set to 0.”。事实上这传输的顺序为000000000000101001011101...“The first bit (LSB)”即是前言的第8Bit。

网卡的物理地址通常是由网卡生产厂家烧入网卡的EPROM(一种闪存芯片,通常可以通过程序擦写),它存储的是传输数据时真正赖以标识发出数据的电脑和接收数据的主机的地址。

也就是说,在网络底层的物理传输过程中,是通过物理地址来识别主机的,它一定是全球唯一的。比如,著名的以太网卡,其物理地址是48bit(比特位)的整数,如:44-45-53-54-00-00,以机器可读的方式存入主机接口中。以太网地址管理机构(除了管这个外还管别的)(IEEE)(IEEE:电气和电子工程师协会)将以太网地址,也就是48比特的不同组合,分为若干独立的连续地址组,生产以太网网卡的厂家就购买其中一组,具体生产时,逐个将唯一地址赋予以太网卡。

形象地说,MAC地址就如同我们身份证上的身份证号码,具有全球唯一性。

 

以太网的地址为48位,由ieee统一分配给网卡制造商,每个网卡的地址都必须是全球唯一的。共6个字节的长度

字节 5 4 3 2 1 0 
位 47。。40 39。。32 31。。24 23。。16 15。。8 7。。0 
例子 08 00 09 A0 4A B1 

我们需要注意的是以太网地址的第40位是组播地址的标志位:


位 47。。33 32 31。。24 23。。0 
   制造厂商标识 组播标志位 制造厂商标识 系列号 
          


共6个字节,其中前面3个字节(除了第40位),组成制造厂商的标识,每个制造厂商的前3个字节是不同的,如果两个网卡的前面3个字节是一样的,那么这个卡是同一个公司制造的。同时通过该3个字节就可以反过来知道这个卡是哪个厂制造的。后面3个字节为系列号,由制造厂商给自己生产的网卡分配一个号码,不同网卡的号码必须不同, 网卡地址的制造厂商的3个字节的标识中,例如上面的08:00:09 ,080009 是惠普公司的标识,表示这个卡是惠普公司制造的。3个字节的第一个字节,必须为偶数,上面的08是一个偶数,是因为第32位,就是第一个字节的最低位是组播标识,必须为0。
以下
X0:XX:XX:XX:XX:XX
X2:XX:XX:XX:XX:XX
X4:XX:XX:XX:XX:XX 
X6:XX:XX:XX:XX:XX
X8:XX:XX:XX:XX:XX
XA:XX:XX:XX:XX:XX
XC:XX:XX:XX:XX:XX 
XE:XX:XX:XX:XX:XX


为合法的以太网网卡地址。上面的X代表0-F中的任一个。如果你不是购买网卡,而是自己购买芯片制造,那么地址怎么办?可以自己使用一个还没有被ieee分配的厂商编号就可以了。就算是使用已经分配的厂商编号也没有不可,只要你能保证在你使用的局域网内,任何两个网卡的地址不一样就可以了。

地址 FF:FF:FF:FF:FF:FF 为广播地址,只能用在目的地址段,不能作为源地址段。目的地址为广播地址的数据包,可以被一个局域网内的所有网卡接收到。


地址


X1:XX:XX:XX:XX:XX
X3:XX:XX:XX:XX:XX
X5:XX:XX:XX:XX:XX 
X7:XX:XX:XX:XX:XX
X9:XX:XX:XX:XX:XX
XB:XX:XX:XX:XX:XX
XD:XX:XX:XX:XX:XX 
XF:XX:XX:XX:XX:XX 
为组播地址,只能作为目的地址,不能作为源地址。组播地址可以被支持该组播地址的一组网卡接收到。组播地址主要用在视频广播,远程唤醒(通过发一个特殊的数据包使网卡产生一个中断信号,启动电脑),游戏(多个人在局域网里联机打游戏)里等。
以下是一些具体的组播地址:
地址 范围
01:00:5E:00:00:00---01:00:5E:7F:FF:FF 用于ip地址的组播

其他组播地址跟tcp/ip无关,不做介绍。

网卡可以接收以下3种地址的数据包:
第一种 目的地址跟自己的网卡地址是一样的数据包
第二种 目的地址为FF:FF:FF:FF:FF:FF广播地址的数据包

第三种 目的地址为跟自己的组播地址范围相同的数据包

//========================================


那么在以太网的应用当中,如果你希望你的数据包只发给一个网卡,目的地址用对方的网卡地址
如果你想把数据包发给所有的网卡,目的地址用广播地址
如果你想把数据包发给一组网卡,目的地址用组播地址。

 

 


http://www.ppmy.cn/news/711959.html

相关文章

IP和MAC地址简介

以太网上的两台计算机之所以能够交换信息就是因为每个设备都有数块网卡,并且每块网卡拥有唯一的物理地 址(称为MAC地址)和唯一的逻辑地址(称为IP地址)。 MAC地址固化再网卡中,并且全球唯一,由I…

MAC地址的分类和基本规范

一、MAC地址是什么? MAC地址(Media Access Control Address)是一种硬件地址,也称为物理地址,是用于区分网络中不同设备的唯一标识符。MAC地址长度为48位二进制数,通常以十六进制表示,由6个字节组…

mac地址真的是全球是唯一的吗

问题:mac地址真的是全球是唯一的吗 答:不是 mac地址在百科中的描述如下: MAC(Media Access Control, 介质访问控制)地址,也叫硬件地址,长度是48比特(6 字节&#xff09…

IP地址与MAC地址的对应关系

IP与MAC地址关系 查看不同网段设备IP地址与MAC地址之间的应关系 了解ARP 与icmp表项数据 了解IP地址,了解MAC地址 基本配置命令: display mac-address interface g0/0/0 //:查看接口MAC地址 …

el-form动态嵌套表单验证

v-for 遍历的表单校验 根据官网的介绍&#xff0c;是在 el-form-item 中使用 :rules 属性&#xff0c;同时 prop 属性直接定位到具体循环元素。这个用法的前提是在循环外面包裹一个 el-form 元素&#xff0c;v-for 位于 el-form-item 中。 <template><el-form:model…

css基础知识十六:如何实现单行/多行文本溢出的省略样式?

一、前言 在日常开发展示页面&#xff0c;如果一段文本的数量过长&#xff0c;受制于元素宽度的因素&#xff0c;有可能不能完全显示&#xff0c;为了提高用户的使用体验&#xff0c;这个时候就需要我们把溢出的文本显示成省略号 对于文本的溢出&#xff0c;我们可以分成两种…

判断是否是iphoneX手机

util.isIPhoneX function () { var u navigator.userAgent; var isIOS !!u.match(/\(i[^;];( U;)? CPU.Mac OS X/); //ios终端 if (isIOS) { if (screen.height 812 && screen.width 375) { return true; } else { return false; } } }

js判断iphoneX系列

export function isIphonex() { // 判断是不是X类型手机// X XS, XS Max, XR&#xff0c;11&#xff0c; 11pro&#xff0c;11pro max&#xff0c;12mini&#xff0c;12&#xff0c; 12 pro&#xff0c;12 pro maxconst xSeriesConfig [{devicePixelRatio: 3,width: 375,heigh…