一、实验目的:

        通过使用wireshark抓取的ICMP数据包对这个ICMP控制报文进行分析

二、预备知识:

        1.ICMP协议概述:ICMP是Internet Control Message Protocol的缩写,即互联网控制报文协议。它是TCP/IP协议族的一个子协议,用于IP主机、路由器直接传递控制信息。控制信息是指网络通不通、主机是否可达、路由是否可用等网络本身的消息。这些消息虽然并不传输用户数据,但是对于用户数据的传递起着非常重要的作用。
        2.Echo 请求与响应:ICMP因为其ping功能而著名。ping是用来检测一个设备的可连接性,大部分人都会对ping很熟悉。在命令行中输入ping <ip地址>。如果目标设备在线,用户的计算机就会收到目标主机的响应,并且没有防火墙影响。
      基本上来说,ping每次向一个设备发送一个数据包,并等待回复,以确定设备是否可连接。例如,当主机A向主机B发送一个Echo Ping请求包时,主机B就会向主机A发送一个Echo ping响应包。
        3.路由跟踪:路由跟踪功能是用来识别一个设备到另一个设备的网络路径。在一个简单的网络上,这个网络路径可能只经过一个路由器,甚至一个都不经过。但在复杂的网络中,数据包可能会经过数十个路由器才会到达最终目的地。在通信过程中, 出现故障时可能无法判断问题出在哪,这时候就可以通过路由跟踪功能,找出网络故障的位置。

三、网络拓扑:

wireshark 广播分析_wireshark 广播分析

 四、实验过程:

part1:正常、超时、不可达这3中数据包的获取

1.通过ping 10.1.1.33抓取到对应的ICMP控制报文并保存留待分析

2.为了得到请求超时和不可达的报文,这里决定ping4.2.2.1:然后,实验机上出问题了,一个ICMP的数据包都没有capure到,所以,直接用桌面上给的超时和不可达数据包进行分析号了

part2:这3种数据包的分析:

1.对应正常的ICMP的请求和响应数据包的分析如下:

wireshark 广播分析_网络拓扑_02

这里取1组进行分析:

(1)请求报文:

wireshark 广播分析_网络_03

 

里面包含的信息:

这个icmp的类型是echo request

还有序列number什么,还有data中的数据 

(2)响应报文:

wireshark 广播分析_网络故障_04

 类似,方正也是那些内容

2.超时的数据包的特征:

wireshark 广播分析_网络_05

wireshark 广播分析_IP_06

 记住type =11 , code =0 就好了

 3.不可达的数据包:

wireshark 广播分析_IP_07

 

wireshark 广播分析_wireshark 广播分析_08

记住type =3 , code =3 就好了