IP 冲突为什么表现为随机断网
同一网段里两台设备用了同一个 IP,就会出现 ARP 层面的争抢:主机与交换机的邻居表在两个 MAC 之间反复翻转,表现为网络时通时断、连接莫名重置、SSH 会话卡死。这类故障看起来像「网络不稳定」,实际是地址规划问题;取证的关键是抓到另一台设备的 MAC,再回到交换机侧定位端口。
基本信息
| 适用平台 | Linux 主机取证(ip neigh、arping)配合交换机侧查询 |
|---|---|
| 取证命令 | ip neigh、arping、dmesg、系统日志中的重复地址记录 |
| 常见源头 | 虚拟机克隆未重置地址、DHCP 保留地址与静态地址混用 |
| 定位手段 | 拿到冲突 MAC 后查交换机 MAC 地址表与对应端口 |
| 权限要求 | root 执行 arping;交换机需管理权限 |
典型使用场景
- 服务器随机断网,ping 时通时断、SSH 会话反复断开
- 虚拟化平台上克隆出来的虚拟机出现地址冲突
- 机房搬迁或网段重新规划后出现不明冲突
- 排查 DHCP 保留地址与手工静态地址混用的场景
- 取证后推动 IP 地址登记与规划整改
取证与定位
取证与定位
ip neigh # 邻居表,观察同一 IP 的 MAC 是否变化
arping -I eth0 -c 3 <本机IP> # 冲突探测:观察是否返回多个不同 MAC
arping -I eth0 -c 3 <网关IP> # 顺带确认网关是否存在冲突
dmesg -T | grep -iE 'duplicate|conflict' | tail
grep -iE 'conflict' /var/log/messages* 2>/dev/null | tail
ip -s link show eth0 | head -8 # 收发统计辅助判断异常
# 拿到冲突 MAC 后到交换机侧定位端口:
# show mac address-table | include <MAC>证据逐项判读
| 证据 | 含义 | 后续动作 |
|---|---|---|
| arping 返回两个不同 MAC | 同网段存在地址冲突 | 按 MAC 到交换机查端口 |
| 日志出现 duplicate address | 内核已检测到重复地址 | 结合时间点交叉取证 |
| ip neigh 状态反复翻转 | 邻居关系不稳定 | 持续观察并记录变化 |
| 交换机 MAC 表同一 IP 对应两个端口 | 交换机侧也确认冲突 | 联系对端设备整改 |
随机断网类故障中 ARP 冲突占相当比例:把「先排除 IP 冲突」写进排查顺序,能省掉大量无效排查。
虚拟机克隆后必须重新规划或生成地址:克隆会带入原机的 MAC 与 IP 配置,这是虚拟化环境地址冲突最主要的来源。