Wireshark可以跟踪网络协议的通讯过程,本节通过ICMP协议,在了解Wireshark使用的基础上,重温ICMP协议的通讯过程。
ICMP(Internet Control Message Protocol)Internet控制报文协议,用于在IP主机、路由器之间传递控制消息。控制消息是指网络通不通、主机是否可达、路由是否可用等网络本身的消息。这些控制消息虽然并不传输用户数据,但是对于用户数据的传递起着重要的作用。
ICMP是TCP/IP模型中网络层的重要成员,与IP协议、ARP协议、RARP协议及IGMP协议共同构成TCP/IP模型中的网络层。
在Wireshark界面,我们可以看到529、531号数据包,就是一对标准的ICMP请求和响应包。
打开ICMP请求数据包报文,
打开ICMP响应数据包报文,
通过分析可知,
1.ICMP协议尽管并不传输数据内容,仍然归于网络层,但是基于ip协议。
2.主机发送一个ICMP Echo Request的包,接受方在可正常响应的情况下,返回一个ICMP Echo Reply。
3.两个数据包都包含了相同的数据内容指令。
4.ICMP请求数据包的数据类型是0,正常响应的数据包类型是8。
ICMP大概分为两类报文:一类是通知出错原因 ;一类是用于诊断查询。
类型及含义如下表: