使用Wireshark简单分析ICMP报文

1、ICMP是“Internet Control Message Protocol”(Internet控制消息协议)的缩写。它是TCP/IP协议族的一个子协议,用于在IP主机、路由器之间传递控制消息。控制消息是指网络通不通、主机是否可达、路由是否可用等网络本身的消息。这些控制消息虽然并不传输用户数据,但是对于用户数据的传递起着重要的作用。

2、ICMP报文作为IP层数据报的数据,加上数据报的首部,组成数据报发送出去。

3、ICMP报文的种类有两种,即ICMP差错报告报文和ICMP询问报文。

利用ping 程序分析一个ICMP协议交互过程

CMD下执行  ping

使用Wireshark简单分析ICMP报文

过滤只显示ICMP协议

使用Wireshark简单分析ICMP报文

可以看到windows下ping默认执行4次ping程序,wireshark抓到8个ICMP查询报文,具体看一次请求和应答过程

首先先看一个包的格式,由下图可知,报文由IP首部和ICMP报文组成,先看下IP包的首部和大小

红色框中蓝色为IP首部,共有20字节

使用Wireshark简单分析ICMP报文

下图为红色框中的蓝色为ICMP报文,共有40个字节

使用Wireshark简单分析ICMP报文

ICMP报文的具体格式

使用Wireshark简单分析ICMP报文

由此可以看到刚才的截图

Type:8

Code:0

Checksum:0x4c90

通过查询ICMP报文类型可知,Type为8的包为 回射请求(Ping请求)

使用相同的方法,查看Echo (ping) reply包,得到type类型为0

通过查询ICMP报文类型可知,Type为0的包为 回射应答(Ping应答)

具体如下图

使用Wireshark简单分析ICMP报文

网络抓包工具Wireshark的简单使用

Ubuntu 12.04 下安装Wireshark

Linux中从普通用户启动Wireshark抓包

Linux下安装和运行Wireshark

Wireshark 的详细介绍请点这里
Wireshark 的下载地址请点这里

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:http://www.heiqu.com/180caad638b30691603c0f1a000ca09e.html