今天在一台服务器上ping一个地址,发现返回的ICMP包中如下记录:
[root@test ~]# ping 60.209.126.73
PING 60.209.126.73 (60.209.126.73) 56(84) bytes of data.
64 bytes from 60.209.126.73: icmp_seq=1 ttl=53 time=20.8 ms
64 bytes from 60.209.126.73: icmp_seq=2 ttl=53 time=21.1 ms
64 bytes from 60.209.126.73: icmp_seq=2 ttl=53 time=25.0 ms (DUP!)
64 bytes from 60.209.126.73: icmp_seq=3 ttl=53 time=20.6 ms
64 bytes from 60.209.126.73: icmp_seq=4 ttl=53 time=20.7 ms
64 bytes from 60.209.126.73: icmp_seq=5 ttl=53 time=20.6 ms
64 bytes from 60.209.126.73: icmp_seq=6 ttl=53 time=20.7 ms
(DUP!)是来标记重复应答的。就是响应一个echo-request时,除了第一个echo-reply以外都标记成(DUP!),windows系统上不会有这样的结果,因为微软的Ping程序不对多个回应进行解包,收到第一个包以后就丢弃后面的了,同样微软的系统默认也不回应广播地址的包,所以这种情况一般发生在linux机器上。
查了资料后发现产生这种情况有一些可能的原因:
1、对方网络使用了很多静态路由,导致产生了环路
2、对方路由器负载很高
3、有多个设备使用同个地址,比喻你ping广播地址会产生大量的这样的包
阅读(6618) | 评论(0) | 转发(0) |