【计算机网络】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`

参考

相关推荐
TechWayfarer3 小时前
精度极限的突破:AI与IPv6如何重塑高精度IP查询
人工智能·网络协议·tcp/ip·transformer
OliverQiu8 小时前
开源一个 macOS 小工具:集中管理 ChatGPT 的网络启动配置
macos·chatgpt·swiftui·mac·proxy·codex·dmg
一条泥憨鱼9 小时前
【从0开始学习计算机网络】| ARP 协议:地址解析,ARP 欺骗,链路层寻址
网络·后端·学习·计算机网络
Tech探索者9 小时前
没有公网 IP、不会端口映射?用 Natfrp 轻松远程访问家中 NAS
网络协议·tcp/ip·智能路由器
dog25010 小时前
带宽,时延,抖动的不可能三角
网络·tcp/ip
花间相见14 小时前
【计算基础|网络09】TCP(上):三次握手与四次挥手
网络·网络协议·tcp/ip
北京盛世宏博14 小时前
多协议以太网温湿度变送器:Modbus TCP/UDP/SNMP 协议应用场景详解
单片机·tcp/ip·udp·传感器·温湿度
wdfk_prog15 小时前
LWIP教程 08:从 `tcp_write()` 到 ACK 清队列——TCP 数据发送、窗口与回调
网络·网络协议·tcp/ip
anew___15 小时前
《从零手写操作系统 (37):网络协议栈基础——Socket接口与TCP状态机》
网络·网络协议·tcp/ip
wdfk_prog15 小时前
LWIP教程 10:从 `tcp_receive()` 到 `ooseq` / SACK——TCP 乱序、重组与选择确认
网络·数据库·tcp/ip