由于ARP冲突导致上网慢

发布时间:  2014-09-20 浏览次数:  351 下载次数:  0
问题描述
组网结构:


USG2200作为内网网关接入客户网络,故障时客户反馈上网打开网页很慢,同时在内网PC ping百度、新浪等公网地址延时很大并且不稳定,丢包严重。
处理过程
1. 从内网PC逐跳ping USG2200内网口、外网口、下一跳以及公网地址,观察各 个阶段ping延时和丢包情况。
PC ping USG2200内网口E2/0/0 10.100.20.1:
C:\Users\xxx\Desktop\IPOP>ping 10.100.20.1 -t

正在 Ping 10.100.20.1 具有 32 字节的数据:
来自 10.100.20.1 的回复: 字节=32 时间=2ms TTL=255
来自 10.100.20.1 的回复: 字节=32 时间=3ms TTL=255
来自 10.100.20.1 的回复: 字节=32 时间=2ms TTL=255
来自 10.100.20.1 的回复: 字节=32 时间=2ms TTL=255
来自 10.100.20.1 的回复: 字节=32 时间=2ms TTL=255
来自 10.100.20.1 的回复: 字节=32 时间=2ms TTL=255
来自 10.100.20.1 的回复: 字节=32 时间=2ms TTL=255
来自 10.100.20.1 的回复: 字节=32 时间=2ms TTL=255
来自 10.100.20.1 的回复: 字节=32 时间=5ms TTL=255
来自 10.100.20.1 的回复: 字节=32 时间=6ms TTL=255

PC ping USG2200外网口E0/0/0 192.168.10.235:
C:\Users\xxx\Desktop\IPOP>ping 192.168.10.235 -t

正在 Ping 192.168.10.235 具有 32 字节的数据:
来自 192.168.10.235 的回复: 字节=32 时间=5ms TTL=255
来自 192.168.10.235 的回复: 字节=32 时间=3ms TTL=255
来自 192.168.10.235 的回复: 字节=32 时间=2ms TTL=255
来自 192.168.10.235 的回复: 字节=32 时间=4ms TTL=255
来自 192.168.10.235 的回复: 字节=32 时间=2ms TTL=255
来自 192.168.10.235 的回复: 字节=32 时间=2ms TTL=255
来自 192.168.10.235 的回复: 字节=32 时间=2ms TTL=255
来自 192.168.10.235 的回复: 字节=32 时间=4ms TTL=255
来自 192.168.10.235 的回复: 字节=32 时间=3ms TTL=255
来自 192.168.10.235 的回复: 字节=32 时间=2ms TTL=255
……

PC ping USG2200下一跳192.168.10.1:
C:\Users\ xxx \Desktop\IPOP>ping 192.168.10.1 -t

正在 Ping 192.168.10.1 具有 32 字节的数据:
来自 192.168.10.1 的回复: 字节=32 时间=238ms TTL=253
来自 192.168.10.1 的回复: 字节=32 时间=323ms TTL=253
来自 192.168.10.1 的回复: 字节=32 时间=195ms TTL=253
来自 192.168.10.1 的回复: 字节=32 时间=337ms TTL=253
请求超时。
请求超时。
来自 192.168.10.1 的回复: 字节=32 时间=299ms TTL=253
来自 192.168.10.1 的回复: 字节=32 时间=501ms TTL=253
来自 192.168.10.1 的回复: 字节=32 时间=201ms TTL=253
来自 192.168.10.1 的回复: 字节=32 时间=224ms TTL=253
请求超时。
来自 192.168.10.1 的回复: 字节=32 时间=353ms TTL=253
来自 192.168.10.1 的回复: 字节=32 时间=389ms TTL=253
来自 192.168.10.1 的回复: 字节=32 时间=500ms TTL=253
来自 192.168.10.1 的回复: 字节=32 时间=362ms TTL=253
来自 192.168.10.1 的回复: 字节=32 时间=277ms TTL=253
来自 192.168.10.1 的回复: 字节=32 时间=187ms TTL=253
请求超时。
来自 192.168.10.1 的回复: 字节=32 时间=320ms TTL=253
......

PC ping 公网baidu地址 www.baidu.com:
C:\Users\Guojixiang\Desktop\IPOP>ping www.baidu.com -t

正在 Ping www.a.shifen.com [61.135.169.105] 具有 32 字节的数据:
来自 61.135.169.105 的回复: 字节=32 时间=68ms TTL=54
来自 61.135.169.105 的回复: 字节=32 时间=69ms TTL=54
来自 61.135.169.105 的回复: 字节=32 时间=21ms TTL=54
来自 61.135.169.105 的回复: 字节=32 时间=53ms TTL=54
请求超时。
来自 61.135.169.105 的回复: 字节=32 时间=136ms TTL=54
来自 61.135.169.105 的回复: 字节=32 时间=83ms TTL=54
来自 61.135.169.105 的回复: 字节=32 时间=131ms TTL=54
来自 61.135.169.105 的回复: 字节=32 时间=30ms TTL=54
来自 61.135.169.105 的回复: 字节=32 时间=60ms TTL=54
来自 61.135.169.105 的回复: 字节=32 时间=346ms TTL=54
来自 61.135.169.105 的回复: 字节=32 时间=277ms TTL=54
来自 61.135.169.105 的回复: 字节=32 时间=309ms TTL=54
来自 61.135.169.105 的回复: 字节=32 时间=215ms TTL=54
请求超时。
来自 61.135.169.105 的回复: 字节=32 时间=124ms TTL=54
来自 61.135.169.105 的回复: 字节=32 时间=106ms TTL=54
来自 61.135.169.105 的回复: 字节=32 时间=186ms TTL=54
来自 61.135.169.105 的回复: 字节=32 时间=105ms TTL=54
来自 61.135.169.105 的回复: 字节=32 时间=22ms TTL=54
请求超时。
来自 61.135.169.105 的回复: 字节=32 时间=91ms TTL=54
来自 61.135.169.105 的回复: 字节=32 时间=99ms TTL=54
来自 61.135.169.105 的回复: 字节=32 时间=156ms TTL=54
来自 61.135.169.105 的回复: 字节=32 时间=133ms TTL=54
……

从ping测试的结果分析,内网PC ping USG2200内网口,外网口延时很小并且不存在丢包现象,ping USG2200下一跳开始延时就增大,并且不断有丢包,到ping公网的时候也延时较大,丢包严重。判断故障的出现在USG2200和下一跳之间的链路。
2. 检查USG2200的logbuff,发现有大量的ARP冲突日志,同时冲突的接口就是USG2200的外网口Ethernet0/0/0。
%2013-07-07 21:33:20 USG %%01ARP/4/DUP_IPADDR(l): Receive an ARP packet with duplicate ip address 192.168.10.235 from Ethernet0/0/0, source MAC is 0024-xxxx-xxxx!
%2013-07-07 21:33:15 USG %%01ARP/4/DUP_IPADDR(l): Receive an ARP packet with duplicate ip address 192.168.10.235 from Ethernet0/0/0, source MAC is 0024-xxxx-xxxx!
%2013-07-07 21:33:10 USG %%01ARP/4/DUP_IPADDR(l): Receive an ARP packet with duplicate ip address 192.168.10.235 from Ethernet0/0/0, source MAC is 0024-xxxx-xxxx!
%2013-07-07 21:33:05 USG %%01ARP/4/DUP_IPADDR(l): Receive an ARP packet with duplicate ip address 192.168.10.235 from Ethernet0/0/0, source MAC is 0024-xxxx-xxxx!
%2013-07-07 21:33:00 USG %%01ARP/4/DUP_IPADDR(l): Receive an ARP packet with duplicate ip address 192.168.10.235 from Ethernet0/0/0, source MAC is 0024-xxxx-xxxx!

3. 当E0/0/0上存在ARP冲突的时候,表明跟E0/0/0相连的广播域中有其他的设备 跟E0/0/0的IP地址(192.168.10.235)相同,导致其他设备请求192.168.10.235的ARP时,E0/0/0和冲突的设备都会回应ARP,导致E0/0/0上产生ARP冲突的日志。在这种情况下,USG2200下行设备对于192.168.10.235的ARP表项就可能刷新到冲突的设备上去,而不再指向USG2200的E0/0/0,此时内网PC上网的业务就会收到影响。当下行设备的ARP表项重新刷会到USG2200的E0/0/0时,上网又正常。正是因为E0/0/0上的ARP冲突,导致USG2200的下行设备到192.168.10.235的ARP表象不断在USG2200和冲突设备之间来回刷新,导致PC上网时延时增加,并且丢包严重。
4. 现场根据冲突mac地址排查冲突设备,发现是一台无线路由器跟USG2200冲突,去掉该设备后上网慢及延时丢包问题解决。
根因
综上分析,经过USG2200上网慢并且ping延时和丢包问题的原因是跟USG2200的E0/0/0接口广播域内存在ARP冲突的设备,导致USG2200下行设备到E0/0/0的IP地址的ARP表项来回刷新,进而影响上网业务,出现ping延时和丢包严重的现象。
解决方案
现场排查导致ARP冲突的设备,并且去掉ARP冲突。

END