arp 是干什么的
arp 显示和操作本机的 ARP 缓存:这张表记录“IP 地址到 MAC 地址”的对应关系,是同一网段内通信的基础。它常被用来排查两类问题:一是同网段访问异常或 IP 冲突,二是二层定位——想知道某个 IP 实际对应哪台设备,看缓存里的 MAC 是最直接的办法。
基本信息
| 适用平台 | Windows 全版本(XP 起提供 arp 命令) |
|---|---|
| 查看 | arp -a [接口地址];arp -a -N 接口地址 |
| 删除 | arp -d 地址(或 * 清空) |
| 静态绑定 | arp -s 地址 MAC 地址(需管理员) |
| 相关命令 | ipconfig /all 看本机 MAC;getmac 列出适配器 MAC |
典型使用场景
- 同网段不通:确认目标 IP 是否已学习到 MAC,判断是二层还是三层问题
- IP 冲突排查:两台设备抢同一地址时缓存条目会变化
- 网关异常:网关 MAC 突然变化可能意味着设备更换或中间人劫持
- 资产核查:由 IP 反查 MAC,再与资产台账对应
- 清理错误条目:设备换网卡后用 arp -d 清掉旧映射再重试
常用示例
常用示例
:: 查看全部 ARP 缓存(含接口说明)
arp -a
:: 只看指定接口的邻居表
arp -a -N 192.168.1.100
:: 删除某条动态条目(清掉后下次通信会重新学习)
arp -d 192.168.1.1
:: 静态绑定(需管理员;部分环境被策略限制)
arp -s 192.168.1.50 00-11-22-33-44-55
:: 查本机各适配器的 MAC
getmac /v输出逐列读法
| 列 | 含义 | 异常表现 |
|---|---|---|
| 接口 | 本机执行查询的网卡地址 | 多网卡机器会分块列出 |
| Internet 地址 | 邻居的 IP 地址 | 出现重复条目要留意冲突 |
| 物理地址 | 邻居的 MAC 地址 | 网关 MAC 变化需警惕 |
| 类型 | 动态 / 静态 | 静态条目重启后可能失效 |
用 arp -d 删除条目并不代表“永久删除”:只要再次与其通信,系统会立刻重新学习并写回缓存。要固化映射只能用静态绑定,而静态条目常被组策略或安全软件限制,重启后通常也会丢失。
排查 IP 冲突的正确顺序是先 ping 再看 arp:同一 IP 出现两条不同 MAC 时,基本可以确认存在冲突或欺骗,再结合交换机侧的 MAC 表定位物理端口。
ARP 本身没有认证机制,静态绑定只能解决单机层面的问题,无法阻止整个网段的欺骗。真正的防护要靠交换机的 DHCP Snooping、动态 ARP 检测等网络侧手段。