【计算机网络】13、ARP 包:广播自己的 mac 地址和 ip

机器启动时,会向外广播自己的 mac 地址和 ip 地址,这个即称为 arp 协议。范围是未经过路由器的部分,如下图的蓝色部分,范围内的设备都会在本地记录 mac 和 ip 的绑定信息,若有重复则覆盖更新(例如先收到 mac1-ip1、再收到 mac2-ip1 时则覆盖记录为 mac2-ip):

案例:假设某设备 reboot 后 mac 地址会变化,则每次 reboot 都会向外发送不同的 arp 包(如先发送自己为 mac1-ip1,下一次 reboot 时再发送自己是 mac2-ip1,再下一次 reboot 时发送自己是 mac3-ip1)。如下图是 reboot 后变化的 mac 地址(通过 ip a 可看出 mac 地址):

作为网络管理员(IT)通常为了应对这种「设备 reboot 后 mac 地址的变化」,对 DHCP 的冲击,会做一些限制,如在交换机上设置其上的某网口,最多接受 50 个 mac 地址,若超过则丢包。

  • DHCP 是一个服务,是通过 mac 地址请求 ip 地址,可单独作为一个 server 部署,也可在交换机上配置部署。
  • 如果设备 reboot 后 mac 地址总会变化,则对于同一个设备,其每次 reboot 都会向 DHCP 请求一个 ip 地址,这会耗尽局域网内的 ip 地址资源,导致其他设备无 ip 可用,从而网络瘫痪,此行为可视为一种网络攻击。
    • 如设备 a,第一次 reboot 会以 maca 向 DHCP 拿到 ipa,第二次 reboot 会以 maca 向 DHCP 拿到 ipb,第 n 次 reboot 会以 maca 向 DHCP 拿到 ipn
    • 而 DHCP 的缓存是有过期时间的,虽然第 n 次时 设备 a 只使用了 ipn,但其之前拿到很多自己不需要的 ip 地址(如 ipa、ipb、。。。ipn-1)
    • 这会造成局域网内的其他设备(如b、c、d、e)无 ip 可用,从而网络瘫痪,此行为可视为一种网络攻击。
    • 所以,网络管理员会设置规则,限制如在交换机上设置其上的某网口,最多接受 50 个 mac 地址,若超过则丢包,如下图

随机生成 mac 地址的命令(前面6个数字也可以随机):

bash 复制代码
echo 13:25:46:`echo $RANDOM | md5sum | sed 's/../&:/g' | cut -c1-8`

参考

相关推荐
车载测试工程师1 小时前
CAPL学习-ETH功能函数-通用函数
网络·学习·tcp/ip·capl·canoe
老蒋新思维2 小时前
创客匠人洞察:AI 时代 IP 变现的认知重构,从流量焦虑到价值深耕的破局之道
网络·人工智能·tcp/ip·重构·知识付费·创始人ip·创客匠人
Wokoo76 小时前
HTTP不同版本核心对比
网络·网络协议·tcp/ip·http·udp·ssl
ZhengEnCi7 小时前
一次多线程同步问题的排查:从 thread_count 到 thread.join() 的踩坑之旅
python·网络协议·tcp/ip
jay8 小时前
ens2f0 IP 远程连线,balance-alb 模式配置双网卡(ens2f0 + ens6f0)Bond,避免断网
linux·运维·服务器·网络·tcp/ip
科技块儿8 小时前
简单易学的IP定位查找教程
网络·网络协议·tcp/ip
开心_开心急了10 小时前
TCP协议概要与Python示例
tcp/ip
Sheffi6611 小时前
RunLoop 深度探索:线程为什么不会自动退出
macos·objective-c·cocoa
Tandy12356_12 小时前
手写TCP/IP协议栈——数据包结构定义
c语言·网络·c++·计算机网络
2501_9159184112 小时前
Flutter 加固方案全解析,从 Dart 层到 IPA 成品的多工具协同防护体系
flutter·macos·ios·小程序·uni-app·cocoa·iphone