ICMP协议分析实验

您所在的位置:网站首页 执行ping涉及的网络协议 ICMP协议分析实验

ICMP协议分析实验

2024-07-16 06:18| 来源: 网络整理| 查看: 265

实验目的: 1.熟悉和掌握IP层典型协议ICMP协议的格式 2.熟悉和掌握ICMP协议的工作过程,理解IP层在网络中的作用 3.理论联系实际,引导学生使用指令探究网络协议

实验要求: 掌握ping 和tracert 命令的使用方法,了解ICMP 协议报文类型及其作用。执行ping 和tracert 命令,分别捕获询问(请求应答)报文和差错报文,分析wireshark.捕获的ICMP 报文类型和ICMP 报文格式,了解了ICMP 协议的原理作用以及ICMP协议可能存在的安全漏洞。

实验内容: 一、分析ICMP协议 问题1:ICMP协议工作中,哪些设备参与交换? ICMP是Internet控制消息协议的缩写,它是TCP/IP协议族的一个子协议,主要用于在IP主机、路由器之间传递控制消息。ICMP工作时,涉及到的设备包括发送ICMP消息的源主机和接收ICMP消息的目标机或路由器。在网络中,路由器是负责转发数据包的设备,因此在路由器之间传递ICMP消息也是很常见的。 利用Ping程序产生ICMP分组。Ping向因特网中的某个特定主机发送特殊的探测报文并等待表明主机在线的回复。具体做法:

启动打开网络协议分析软件(Wireshark),选择菜单命令“Capture”“Options”子菜单项。弹出“Wireshark: Capture Options”对话框。在Capture中选择网卡。Capture filter字段填入: icmp,单击“Start”按钮开始网络数据包捕获。 在这里插入图片描述打开Windows命令提示符窗口,输入“ping –n 10 23.42.181.221 ,其中“-n 10”指明应返回10条ping信息,附上执行结果图: ping –n 10 23.42.181.221(哔哩哔哩的IP) 在这里插入图片描述 当ping程序终止时,停止Wireshark 分组俘获。 停止分组俘获后,附上wireshark的界面: 问题2:对报文进行分析,出现的ICMP报文是什么类型?什么原因出现该类型报文? 请求和应答报文两个为一组,正好十条。ICMP报文类型包括回显请求、回显应答,出现的原因是客户端向服务器端访问发出的请求(request)报文,以及服务器端回复客户端的应答(reply)报文. 在这里插入图片描述 截取其中ICMP协议的详细信息 蓝色方框是报文涉及的协议种类;红色是Mac地址;绿色是源地址和目的地址。 问题3:ICMP的报文是封装在什么协议中的? ICMP协议是封装在IP协议中的。因为在网络协议栈中,IP协议位于传输层协议(如TCP和UDP)之上,而ICMP协议则是作为IP协议的一个子协议而存在的。因此,如果一个数据包的协议类型为IP协议,那么它有可能封装了ICMP协议。我们可以通过抓包工具(如Wireshark)来查看数据包的协议类型和协议头部信息,以判断该数据包是否封装了ICMP协议。 在这里插入图片描述 观察这个ICMP分组,分析属于ICMP的哪种分组。 分为两大类:询问(请求应答)报文和差错报文 A.询问报文的回送请求报文 在这里插入图片描述 B.询问报文的回送应答报文 在这里插入图片描述 捕获ICMP请求和回应报文并分析 问题4:封装ICMP报文的封装协议,其中的TTL值,在报文的交换过程中,是否发生了变化?说明什么? Tracert能够映射出通往特定的因特网主机途径的所有中间主机。源端发送一串ICMP分组到目的端。发送的第一个分组时,TTL=1;发送第二个分组时,TTL=2,依次类推。路由器把经过它的每一个分组TTL字段值减1。当一个分组到达了路由器时的TTL字段为1时,路由器会发送一个ICMP错误分组(ICMP error packet)给客户端;当TTL值为0时,数据包将被丢弃。因此,可以通过分析ICMP报文中的TTL值,了解数据包在网络中的传输情况。一般情况下,TTL值会随着数据包经过的路由器数量的增加而逐渐减小。使用tracert命令对blibli网站查看其路径。Tracert 23.42.181.221命令截图: 在这里插入图片描述 tracert命令可以用于跟踪数据包在网络中的传输情况。tracert命令会向目标主机发送一系列的数据包,并记录每个数据包经过的路由器。通过分析tracert命令的输出结果,可以了解数据包在网络中的传输情况,以及每个路由器的IP地址和响应时间等信息。当Tracet 程序终止时,停止wireshark分组捕获,附上捕获ICMP分组的截图: 在这里插入图片描述 继问题2:对报文进行分析,出现的ICMP报文是什么类型?什么原因出现该类型报文? 该ICMP报文类型是超时报文,出现ICMP超时报文的原因是:当一个IP数据包在传输过程中,如果在规定的时间内没有到达目的地,那么就会被路由器丢弃,并向源主机发送一个ICMP超时报文类型的差错报文,告诉源主机数据包传输失败。这种情况通常发生在网络拓扑结构发生变化或者网络拥堵的情况下。 C.差错报告报文:请求超时 在这里插入图片描述

问题5:为什么会出现上访问无法到达现象。数据包中会有哪些内容? 出现ICMP超时不可达的原因是:当一个IP数据包在传输过程中,如果在规定的时间内没有到达目的地,那么就会被路由器丢弃,并向源主机发送一个ICMP超时报文类型的差错报文,告诉源主机数据包传输失败。这种情况通常发生在网络拓扑结构发生变化或者网络拥堵的情况下。 在这里插入图片描述 问题6:该实验体现了一种构造ICMP 报文的思路,构造报文能够对信息和网络安全带来威胁。请结合所学知识和实验,讨论利用协议的漏洞可能形成的威胁。 作为恶意使用ICMP 的最有代表性的例子,“ping 洪水”的攻击。它利用ping 的原理,向目标服务器发送大量的ICMP 回送请求。这是黑客向特定的机器连续发送大量的ICMP 回送请求报文。目标机器回答到达的ICMP 回送请求已经用尽全力了,原来的通信处理就变得很不稳定了。进一步,目标机器连接的网络也可能由于大量的ICMP 数据包而陷入不可使用的状态,其攻击本质与DOS攻击类似,一样是使服务器/主机无法正常提供服务。 与ping 洪水相似,以更加恶劣的使用方法而闻名的是称为“smurf”的攻击手法。smurf 同样,黑客m恶意的使用ICMP 回送请求报文。这一点同ping 洪水是相同的。不过在surf,对ICMP 回送请求实施了一些加工。源IP 地址被伪装成攻击对象服务器的地址,目标地址也不是攻击对象服务器的地址,而是成为中转台的网络的广播地址。

实验总结: 本次ICMP实验中,ICMP工作涉及到的设备,包括发送ICMP消息的源主机和接收ICMP消息的目标机或路由器。在网络中,路由器是负责转发数据包的设备,先采用ping命令分别对网络的连通性进行测试,后采用tracert对网站blibli数据传输情况进行跟踪,利用抓包软件wireshark了解了ICMP协议的工作过程并对协议字段进行分析,使我以后看到相关字段能够一目了然,通过抓取的请求应答报文分析得出ICMP协议是封装在IP协议中的。 实验过程中,使用tracert命令对哔哩哔哩网站的数据传输进行跟踪中,测试结果为请求超时,然后根据wireshark抓的tracert的ICMP数据包中的超时报文字段进行分析其参数和含义,还对数据包中的TTL字段进行了学习和分析,了解数据包在网络中的传输情况。一般情况下,TTL值会随着数据包经过的路由器数量的增加而逐渐减小。 反思:经过本次实验我对ICMP协议有了更深的理解,但是不足的是,该实验对如何防范和抵御 ICMP 攻击没有提出方案,以及ICMP 协议在现代网络中还有哪些应用场景以及在不同场景出现的安全漏洞。 《网络协议分析》课程实验,有哪里不对的,望大佬指出,谢谢!



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3