Mac地址会不会重复?怎么做到全球唯一的?

网络设备厂商也并不能随意的使用 Mac 地址,需要向 IEEE 申请,当然厂商申请需要付费。

图片

Mac 地址通常表示为 12 个 16 进制数,每 2 个 16 进制数之间用冒号隔开,前 6 位 16 进制数代表了网络硬件制造商的编号,由 IEEE 分配,而后 3 位 16 进制数是由网络产品制造产商自行分配。这样就可以保证世界上每个网络设备具有唯一的 MAC 地址,比如一台电脑的网卡坏掉了之后,更换一块网卡之后 MAC 地址就会变。

图片

IP 地址是出于拓扑设计出来的,它为互联网上每一个网络和每一台主机分配一个逻辑地址,以此来屏蔽物理地址的差异。对于路由器、电脑等网络设备,只要 IP 地址不重复情况下,IP 地址是可以随意的修改。

图片

网络的变迁

=====

早期的以太网只有集线器(Hub)、没有交换机(Switch),所以发出去的包能被以太网内所有的机器监听到,所以数据包就需要带上源 mac 地址和目的 mac 地址,每个机器只需要接受和自己的 MAC 地址相匹配的数据包。

图片

局域网数据传输并不是通过网络层的 IP 地址进行路由和转发,想要在局域网中发送数据,还需要知道设备的 mac 地址。比如我们的电脑向其他局域网中的其他电脑发送数据时,它会先通过 ARP(地址解析协议)在局域网中获取目的 IP 地址所对应的 MAC 地址。

step1:源主机首先会向局域网中发送 ARP 的广播请求,只要目标 mac 地址是 FF:FF:FF:FF:FF:FF,局域网内的所有设备都会受到这个请求。

step2:接收到 ARP 请求的设备会检查目的 IP 地址和自己的 IP 地址是否一致,不一致就会忽略当前的 ARP 请求,一致就会向源主机发送 ARP 响应。

step3:源主机接收到 ARP 响应后就会更新本地缓存表并继续向目的主机发送数据。

图片

在局域网中如果采用集线器来连接不同的网络设备,相同的 MAC 地址一般不会出现太多的问题,因为在集线器连接的局域网中所有的数据帧都会被广播给局域网内的全部主机,而如果通过交换机连接不同的网络设备就会受到影响,因为交换机需要学习局域网中不同设备的 Mac 地址并将数据帧转发给特定的主机。

图片

所以 Mac 地址其实是可以重复使用的,只是不能在同一个局域网中使用相同的 MAC 地址,而跨局域网的网络传输则需要通过网络层的 IP 协议,所以在不同的局域网使用相同的 Mac 地址就不存在类似的问题。

Mac 地址会有重复

==========

最后

自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。

深知大多数Java工程师,想要提升技能,往往是自己摸索成长,自己不成体系的自学效果低效漫长且无助。

因此收集整理了一份《2024年Java开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Java开发知识点,不论你是刚入门Java开发的新手,还是希望在技术上不断提升的资深开发者,这些资料都将为你打开新的学习之门!

如果你觉得这些内容对你有帮助,需要这份全套学习资料的朋友可以戳我获取!!

由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!
net/topics/618164986)

由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!

  • 3
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值