首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >计算机网络-ARP协议详解(二)

计算机网络-ARP协议详解(二)

作者头像
运维小路
发布2026-04-02 13:13:48
发布2026-04-02 13:13:48
1460
举报
文章被收录于专栏:运维小路运维小路

作者介绍:简历上没有一个精通的运维工程师。请点击上方的蓝色《运维小路》关注我,下面的思维导图也是预计更新的内容和当前进度(不定时更新)。

目前几乎所有的应用都会跟网络打交道,所以我们了解和熟悉网络对我们后续的排错是很有必要的,我这里讲解的部分主要是我个人理解来进行讲解。

前面我们介绍了arp协议的基本情况,今天我们来介绍arp在实际运维中的相关命令和应用。

1.查看ARP信息

一般家庭都是建议路由器,所以这里会显示成网关,而31.73则是局域网里面的另外一台网络设备。

Address:这里主要是目前和本机有通信产生arp缓存的地址。

HWtype:网关设备属性(这里是以太网类型)。

HWaddress:对应机器设备的的 MAC 地址(理论全球唯一)。

Flags Mask:该条目的属性(这里是缓存系统通过 ARP 协议动态获取,重启或超时后会失效)。

Iface:通信设备,本机通过eth0网卡和其他网络设备通信。

代码语言:javascript
复制
[root@localhost ~]# arp 
Address                  HWtype  HWaddress           Flags Mask            Iface
gateway                  ether   44:f7:70:11:2b:94   C                     eth0
192.168.31.73            ether   0c:9d:92:c1:de:c2   C                     eth0

增加两台和其他设备通信,再次查看arp表就会发现增两条arp记录,但是只有一条成功的获取了arp地址,失败的没有获取arp地址。

代码语言:javascript
复制
[root@localhost ~]# ping 192.168.31.47
PING 192.168.31.47 (192.168.31.47) 56(84) bytes of data.
64 bytes from 192.168.31.47: icmp_seq=1 ttl=64 time=0.190 ms
64 bytes from 192.168.31.47: icmp_seq=2 ttl=64 time=0.110 ms

--- 192.168.31.47 ping statistics ---
2 packets transmitted, 2 received, 0% packet loss, time 999ms
rtt min/avg/max/mdev = 0.110/0.150/0.190/0.040 ms
[root@localhost ~]# arp 
Address                  HWtype  HWaddress           Flags Mask            Iface
192.168.31.47            ether   22:02:4d:07:19:6d   C                     eth0
gateway                  ether   44:f7:70:11:2b:94   C                     eth0
192.168.31.43                    (incomplete)                              eth0
192.168.31.73            ether   0c:9d:92:c1:de:c2   C                     eth0

2.常见的ARP问题

ARP 是局域网故障的重灾区,运维遇到「主机不通网、网速慢、IP 冲突」时,优先查 ARP。

故障 1:ARP 欺骗(最常见,流量劫持 / 断网)

现象部分主机突然无法上网,或网速极慢;
代码语言:javascript
复制
#不加-n 则显示主机名 
arp -n

查看网关 IP 对应的 MAC 不是真实网关 MAC。笔者早期(web1.0时代)处理过很多arp攻击的情况就是一个局域网里面很多机器,如果其中一个机器主动或者被动(中毒)发起arp欺骗,其他机器的请求就可能被劫持。

服务器A正常的流量经过交换机出互联网,但是如果交换机(网关)被服务器劫持,所有发往互联网的都需要经过服务器B,服务器B把所有经过他的流量都附带附带了恶意请求,这样服务器A的就被污染。

当时的解决办法就是手动通过其他节点进入服务器手工绑定网关固定的mac地址,当然由于设备更新及网络隔离已经较少听到类似的问题。

代码语言:javascript
复制
#绑定固定arp地址
arp -s 192.168.31.1 44:f7:70:11:2b:94 
#删除arp缓存
arp -d 192.168.31.73

2. 故障 2:IP 地址冲突

现象系统弹窗提示「IP 地址冲突」冲突主机间无法通信,或通信时断时续。
运维解决思路在冲突主机执行 arp -n,查看冲突 IP 对应的 MAC 地址;
  1. 登录接入交换机,查 MAC 地址表(华为:display mac-address;思科:show mac-address-table),通过 MAC 找到对应的交换机端口,定位另一台冲突主机;如果没有权限则会比较麻烦,但是可以通过人肉识别找相互冲突的两台电脑或者服务器。
  2. 处理方案:静态 IP 冲突:修改其中一台主机的 IP;DHCP 分配冲突:检查 DHCP 服务器地址池,关闭非法 DHCP 服务器,启用 DHCP Snooping 防私设 DHCP。
  3. ARP命令:参数比较少,大部分时间甚至不需要加参数就可以(Win电脑参数略有不一样)。

3. 故障 3ARP 缓存失效 / 老化导致通信延迟

现象主机第一次访问目标设备时,有 1~2 秒延迟,后续访问正常;抓包可见每次延迟时都会触发 ARP 请求。
运维解决思路对核心业务主机,延长 ARP 缓存老化时间;对固定通信的设备(如数据库主从、服务器与网关),配置静态 ARP 绑定。

三:ARP 协议的局限性

  1. 仅适用于局域网:ARP 请求是广播帧,路由器会隔离广播域,因此无法解析跨网段的 IP 地址;
    • 运维关键点:跨网段通信时,主机只需要解析本地网关的 MAC 地址,后续由网关转发数据。
  2. 无认证机制:ARP 报文没有任何加密或认证,容易被伪造,这是 ARP 欺骗的根源;
    • 运维关键点:不要仅依赖主机端静态绑定,必须在交换机层面开启防护,才能从根本上防攻击。
  3. 不支持 IPv6:IPv6 废除 ARP,改用 NDP 协议,NDP 用组播替代广播,且支持地址认证,安全性更高。

一句话总结(运维版)ARP 是局域网 IP 与 MAC 的映射桥梁,运维核心是管好缓存表、防住 ARP 欺骗、快速定位 IP 冲突,保障局域网通信的稳定与安全。

我们在介绍ARP协议的是介绍过两种网络传输协议,这两种协议在网络通信(包括但不限制于计算机网络)里面使用得很广泛。

单播是一台设备向另一台特定设备发送数据(一对一),

广播是一台设备向同一局域网内所有设备发送数据(一对所有)。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2026-03-15,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 运维小路 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 故障 1:ARP 欺骗(最常见,流量劫持 / 断网)
    • 现象部分主机突然无法上网,或网速极慢;
    • 现象系统弹窗提示「IP 地址冲突」冲突主机间无法通信,或通信时断时续。
    • 运维解决思路在冲突主机执行 arp -n,查看冲突 IP 对应的 MAC 地址;
  • 3. 故障 3:ARP 缓存失效 / 老化导致通信延迟
    • 现象主机第一次访问目标设备时,有 1~2 秒延迟,后续访问正常;抓包可见每次延迟时都会触发 ARP 请求。
    • 运维解决思路对核心业务主机,延长 ARP 缓存老化时间;对固定通信的设备(如数据库主从、服务器与网关),配置静态 ARP 绑定。
  • 三:ARP 协议的局限性
  • 一句话总结(运维版)ARP 是局域网 IP 与 MAC 的映射桥梁,运维核心是管好缓存表、防住 ARP 欺骗、快速定位 IP 冲突,保障局域网通信的稳定与安全。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档