mac地址与IP地址

本文深入探讨了MAC地址和IP地址的区别与联系,包括它们在数据链路层和网络层的作用,以及如何通过ARP协议实现两者的映射,帮助读者理解网络通信的基础。

MAC(Media Access
Control,介质访问控制)地址,也叫硬件地址,长度是48比特(6字节),由16进制的数字组成,分为前24位和后24位:前24位叫做组织唯一标志符(Organizationally
Unique
Identifier,即OUI),是由IEEE的注册管理机构给不同厂家分配的代码,区分了不同的厂家。后24位是由厂家自己分配的,称为扩展标识符。同一个厂家生产的网卡中MAC地址后24位是不同的。

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

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

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

谈起MAC地址,不得不说一下IP地址。IP地址工作在OSI参考模型的第三层网络层。两者之间分工明确,默契合作,完成通信过程。IP地址专注于网络层,将数据包从一个网络转发到另外一个网络;而MAC地址专注于数据链路层,将一个数据帧从一个节点传送到相同链路的另一个节点。

在一个稳定的网络中,IP地址和MAC地址是成对出现的。如果一台计算机要和网络中另一外计算机通信,那么要配置这两台计算机的IP地址,MAC地址是网卡出厂时设定的,这样配置的IP地址就和MAC地址形成了一种对应关系。在数据通信时,IP地址负责表示计算机的网络层地址,网络层设备(如路由器)根据IP地址来进行操作;MAC地址负责表示计算机的数据链路层地址,数据链路层设备(如交换机)根据MAC地址来进行操作。IP和MAC地址这种映射关系由ARP(Address Resolution Protocol,地址解析协议)协议完成。

IP地址就如同一个职位,而MAC地址则好像是去应聘这个职位的人才,职位既可以让甲坐,也可以让乙坐,同样的道理一个结点的IP地址对于网卡是不做要求,基本上什么样的厂家都可以用,也就是说IP地址与MAC地址并不存在着绑定关系。本身有的计算机流动性就比较强,正如同人才可以给不同的单位干活的道理一样的,人才的流动性是比较强的。职位和人才的对应关系就有点像是IP地址与MAC地址的对应关系。比如,如果一个网卡坏了,可以被更换,而无须取得一个新的IP地址。如果一个IP主机从一个网络移到另一个网络,可以给它一个新的IP地址,而无须换一个新的网卡。当然MAC地址除了仅仅只有这个功能还是不够的,就拿人类社会与网络进行类比,通过类比,我们就可以发现其中的类似之处,更好地理解MAC地址的作用。无论是局域网,还是广域网中的计算机之间的通信,最终都表现为将数据包从某种形式的链路上的初始结点出发,从一个结点传递到另一个结点,最终传送到目的结点。数据包在这些节点之间的移动都是由ARP负责将IP地址映射到MAC地址上来完成的。其实人类社会和网络也是类似的,试想在人际关系网络中,甲要捎个口信给丁,就会通过乙和丙中转一下,最后由丙 转告给丁。在网络中,这个口信就好比是一个网络中的一个数据包。数据包在传送过程中会不断询问相邻节点的MAC地址,这个过程就好比是人类社会的口信传送过程。相信通过这两个例子,我们就可以进一步理解MAC地址的作用。

IP地址和MAC地址相同点是它们都唯一,不同的特点主要有:

  1. 对于网络上的某一设备,如一台计算机或一台路由器,其IP地址是基于网络拓扑设计出的,同一台设备或计算机上,改动IP地址是很容易的(但必须唯一),而MAC则是生产厂商烧录好的,一般不能改动。我们可以根据需要给一台主机指定任意的IP地址,如我们可以给局域网上的某台计算机分配IP地址为192.168.0.112,也可以将它改成192.168.0.200。而任一网络设备(如网卡,路由器)一旦生产出来以后,其MAC地址不可由本地连接内的配置进行修改。如果一个计算机的网卡坏了,在更换网卡之后,该计算机的MAC地址就变了。
  2. 长度不同。IP地址为32位,MAC地址为48位。 分配依据不同。IP地址的分配是基于网络拓扑,MAC地址的分配是基于制造商。 长度不同。IP地址为32位,MAC地址为48位。
  3. 分配依据不同。IP地址的分配是基于网络拓扑,MAC地址的分配是基于制造商。分配依据不同。IP地址的分配是基于网络拓扑,MAC地址的分配是基于制造商。
  4. 寻址协议层不同。IP地址应用于OSI第三层,即网络层,而MAC地址应用在OSI第二层,即数据链路层。 寻址协议层不同。IP地址应用于OSI第三层,即网络层,而MAC地址应用在OSI第二层,即数据链路层。
    数据链路层协议可以使数据从一个节点传递到相同链路的另一个节点上(通过MAC地址),而网络层协议使数据可以从一个网络传递到另一个网络上(ARP根据目的IP地址,找到中间节点的MAC地址,通过中间节点传送,从而最终到达目的网络)。

转载于:https://baike.baidu.com/item/MAC地址/1254181?fr=aladdin

### MAC地址IP地址的区别和联系 #### 区别 1. **定义层次** MAC地址(Media Access Control Address)是数据链路层的物理地址,用于唯一标识网络设备的硬件[^1]。而IP地址(Internet Protocol Address)属于网络层,用于标识计算机在网络中的逻辑置[^2]。 2. **格式长度** MAC地址通常为48二进制数,表示为12十六进制数,例如`00:1A:2B:3C:4D:5E`[^1]。IP地址(以IPv4为例)是一个32二进制数,通常用四个十进制数表示,例如`192.168.1.1`[^2]。 3. **作用范围** MAC地址主要用于局域网内部的数据传输,确保数据包能够从一个设备传递到另一个设备。IP地址则在全球范围内使用,负责跨网络的数据路由和寻址[^3]。 4. **可变性** MAC地址通常是固定的,由网卡制造商分配[^1]。而IP地址可以动态分配,例如通过DHCP协议获取,也可以手动配置[^3]。 5. **广播机制** 在局域网中,MAC地址支持广播功能,例如使用FF:FF:FF:FF:FF:FF表示广播地址[^1]。而在IP地址中,特定的广播地址(如255.255.255.255)用于子网内的广播通信[^3]。 #### 联系 1. **ARP协议的作用** MAC地址IP地址通过ARP(Address Resolution Protocol)协议关联起来。当一台设备需要向另一台设备发送数据时,它会使用ARP协议将目标设备的IP地址解析为对应的MAC地址[^3]。 2. **数据封装过程** 在数据传输过程中,IP地址于网络层,用于确定数据包的目标网络置。MAC地址于数据链路层,用于在局域网内实现具体的设备寻址。两者共同作用于数据包的封装和解封装过程[^1]。 3. **私有网络中的应用** 在私有网络中,IP地址可能被重复使用,但MAC地址始终是唯一的,确保即使IP地址冲突,设备仍可通过MAC地址进行区分[^3]。 ```python # 示例代码:简单的ARP表模拟 arp_table = { "192.168.1.1": "00:1A:2B:3C:4D:5E", "192.168.1.2": "01:2B:3C:4D:5E:6F" } def resolve_mac(ip_address): return arp_table.get(ip_address, "未知MAC地址") # 测试 print(resolve_mac("192.168.1.1")) # 输出: 00:1A:2B:3C:4D:5E ``` #### 总结 MAC地址IP地址分别在数据链路层和网络层发挥作用,二者相辅相成,共同确保数据在网络中的正确传输。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值