| 2025-02-23
MAC 地址,即媒体访问控制地址(Media Access Control Address) ,也被称作物理地址或硬件地址,位于 OSI(开放式系统互联)模型的第二层 —— 数据链路层,用于唯一标识网络设备在网络中的位置。每一个网络设备,如网卡、路由器、交换机等,在出厂时都会被赋予一个全球唯一的 MAC 地址,就如同每个人都有独一无二的身份证号码一样。
一、MAC 地址的结构
MAC 地址由 48 位二进制数组成,为了便于表示和识别,通常将其转换为 12 个十六进制数,每两个十六进制数之间用冒号(:)或短横线(-)隔开,例如:00:16:EA:AE:3C:40 或 00-16-EA-AE-3C-40。
在这 48 位的 MAC 地址中,前 24 位被称为组织唯一标识符(OUI,Organizationally Unique Identifier) ,由电气与电子工程师协会(IEEE)负责分配给不同的网络设备制造商。这就好比不同的工厂有不同的生产编号,通过前 24 位可以确定设备是由哪家制造商生产的。例如,苹果公司生产的网络设备,其 MAC 地址的前 24 位可能是特定的一段数值,用于标识该设备出自苹果。
后 24 位则由设备制造商自行分配,用于区分同一厂家生产的不同设备,也被称为扩展标识符。即使是同一家制造商生产的不同网卡,它们的后 24 位 MAC 地址也是不同的,从而确保了每个设备的 MAC 地址在全球范围内的唯一性。
此外,MAC 地址最高字节(MSB)的低第二位(LSb),即第 8 位,表示这个 MAC 地址是全局的还是本地的,也就是 U/L(Universal/Local)位 。当该位为 0 时,表示这是一个全局地址,由 IEEE 统一分配,全球唯一;当该位为 1 时,表示这是一个本地管理地址,通常用于特定网络环境下的临时设置或测试等。MAC 地址最高字节(MSB)的低第一位(LSb),即第 1 位,表示这个 MAC 地址是单播还是多播。当该位为 0 时,表示是单播地址,用于一对一的通信;当该位为 1 时,表示是多播地址,用于一对多的通信。
二、MAC 地址的工作过程
在网络通信中,数据包从发送端传输到接收端,MAC 地址在这个过程中发挥着关键作用。当一个设备要发送数据包时,它首先会根据目标设备的 IP 地址,通过 ARP(地址解析协议)来获取目标设备的 MAC 地址。ARP 协议的作用就是将网络层的 IP 地址解析为数据链路层的 MAC 地址。
例如,在一个局域网中,计算机 A 要向计算机 B 发送数据。计算机 A 首先会检查自己的 ARP 缓存表,看是否已经存在计算机 B 的 IP 地址与 MAC 地址的映射关系。如果存在,就直接使用缓存中的 MAC 地址;如果不存在,计算机 A 就会发送一个 ARP 请求广播包,这个广播包会在局域网内传播,询问 “IP 地址为 [计算机 B 的 IP 地址] 的设备的 MAC 地址是多少?”。局域网内的所有设备都会收到这个 ARP 请求,但只有计算机 B 会响应,它会将自己的 MAC 地址发送给计算机 A。计算机 A 收到计算机 B 的 MAC 地址后,会将其存储在自己的 ARP 缓存表中,以便下次通信时使用。
得到目标设备的 MAC 地址后,发送设备会将数据包封装成数据帧,在数据帧的头部包含源 MAC 地址(即发送设备的 MAC 地址)和目标 MAC 地址(即接收设备的 MAC 地址)。然后,数据帧通过物理层的传输介质(如网线、无线信号等)发送出去。在传输过程中,数据帧会经过一个或多个中间节点,如交换机。交换机根据数据帧中的目标 MAC 地址,在其内部的 MAC 地址表中查找对应的端口,然后将数据帧转发到该端口,最终将数据帧传送到目标设备。
三、MAC 地址的作用
1.设备识别与通信:MAC 地址的首要作用是在数据链路层唯一标识网络设备,确保设备之间能够准确地进行通信。在网络中,不同设备通过 MAC 地址来识别对方,就像人们通过名字来识别彼此一样。无论是局域网内的设备通信,还是广域网中设备之间的通信,MAC 地址都是数据传输的重要依据。例如,在一个企业网络中,员工的计算机通过 MAC 地址与公司的服务器、打印机等设备进行通信,实现文件共享、打印等功能。
2.网络管理与安全:对于网络管理员来说,MAC 地址是进行网络管理和维护的重要工具。通过查看设备的 MAC 地址,可以了解网络中设备的数量、类型和分布情况,便于进行网络规划和故障排查。在网络安全方面,MAC 地址也有一定的应用。例如,可以通过 MAC 地址过滤功能,只允许特定 MAC 地址的设备接入网络,从而提高网络的安全性,防止未经授权的设备接入网络。此外,在一些网络监控系统中,也可以通过监测 MAC 地址的活动情况,发现异常的网络访问行为,及时采取措施进行防范。
四、查看 MAC 地址的方法
1.Windows 系统:打开 “控制面板”,点击 “网络和共享中心”;选择正在使用的网络连接,点击 “状态”;在弹出的对话框中,点击 “详细信息”,其中的 “物理地址” 即为 MAC 地址。也可以通过命令提示符查看,按下 Win+R 键,打开 “运行” 对话框,输入 “cmd” 并回车,打开命令提示符窗口,在窗口中输入 “ipconfig /all” 并回车,在显示的信息中,找到 “物理地址” 对应的内容就是 MAC 地址。
2.macOS 系统:打开 “系统偏好设置”,点击 “网络”;选择当前的网络连接,点击 “高级”;在 “硬件” 选项卡中,即可看到 MAC 地址。
3.Linux 系统:在终端中输入 “ifconfig” 或 “ip addr” 命令,然后查找 “eth0”(有线网卡)或 “wlan0”(无线网卡)对应的 “ether” 或 “link/ether” 后面的地址,就是 MAC 地址。
4.手机:安卓手机进入 “设置”-“关于手机”-“状态信息”,找到 “wi-fi mac 地址”;iOS 手机进入 “设置”-“通用”-“关于本机”,找到 “wi-fi 地址”,即为 MAC 地址。
拓展阅读
1.ARP 协议的工作原理是什么:ARP 协议通过广播 ARP 请求包,询问目标 IP 地址对应的 MAC 地址,目标设备收到后回复包含自身 MAC 地址的 ARP 响应包,发送方将 IP 与 MAC 地址映射关系存入缓存,以便后续通信。
2.MAC 地址可以更改吗:部分设备可以通过软件或特定设置更改 MAC 地址,如 Windows 和 macOS 系统可借助第三方软件,Linux 系统能在终端输入命令更改,但这可能违反网络规则和安全策略。
3.MAC 地址与 IP 地址的关系:IP 地址工作在网络层,用于标识网络中的设备位置,实现网络间路由转发;MAC 地址工作在数据链路层,用于同一链路内设备间通信,两者相互配合,通过 ARP 协议实现映射,共同完成网络通信。