简单说就是发现某系统没法被ping通,须要确认是服务器收到了ping包没有响应,仍是它压根没有收到ping包
前端
在Linux系统上执行如下命令bash
tcpdump -i eth0 icmp
-i:指定检测哪一个网口,不指定此参数将捕获全部接口数据,包括lo;服务器
#-v:显示详细信息,可选,对于上述问题来说,不加-v也能完成,且输出格式更整齐;网络
icmp:ping包走icmp协议,这个不用解释了吧
tcp
执行命令后,查看是否有request和reply。以下:ide
[root@VLT ~]# tcpdump -i eth0 icmp
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on eth0, link-type EN10MB (Ethernet), capture size 65535 bytes
11:15:41.138115 IP 172.16.x.xxx > 172.30.x.xxx: ICMP echo request, id 1, seq 17, length 40
11:15:41.138149 IP 172.30.x.xxx > 172.16.x.xxx: ICMP echo reply, id 1, seq 17, length 40
11:15:42.139969 IP 172.16.x.xxx > 172.30.x.xxx: ICMP echo request, id 1, seq 18, length 40
11:15:4