ARP协议

概念

ARP(地址解析协议) 是 TCP/IP 协议栈中的核心协议之一,用于 将 IP 地址解析为 MAC 地址,使设备能在局域网(LAN)中直接通信。它工作在 OSI 模型的数据链路层(L2),但直接服务于网络层(L3)

ARP 的核心作用

在以太网中,数据帧的传输依赖 MAC 地址(物理地址),但应用程序通常使用 IP 地址(逻辑地址)。ARP 负责 动态映射 IP 地址到 MAC 地址,确保数据能正确送达目标设备。

其核心作用就是将IP映射为MAC地址

ARP工作流程

ARP请求(广播)

源主机发送广播帧,询问目标IP对应的MAC

所有局域网的主机都会收到请求,但只有IP匹配的主机会响应

ARP相应(单播)

目标主机单播回复自己的MAC地址

源主机收到响应后,更新本地的ARP缓存表(缓存有效期通常为2分钟)

ARP缓存

每个主机维护ARP缓存表,存储已知的IP-MAC映射

查看ARP缓存

复制代码
[root@lb ~]# apt install net-tools -y
[root@lb ~]# arp -n
Address                  HWtype  HWaddress           Flags Mask            Iface
10.0.0.2                 ether   00:50:56:ec:90:06   C                     ens33
223.6.6.6                        (incomplete)                              ens33
10.0.0.1                 ether   00:50:56:c0:00:08   C                     ens33

# 通过cat /proc/net/arp查看
[root@lb ~]# cat /proc/net/arp
IP address       HW type     Flags       HW address            Mask     Device
10.0.0.2         0x1         0x2         00:50:56:ec:90:06     *        ens33
223.6.6.6        0x1         0x0         00:00:00:00:00:00     *        ens33
10.0.0.1         0x1         0x2         00:50:56:c0:00:08     *        ens33