《计算机网络》实验五ICMP报文分析实验

目录

实验五 ICMP报文分析实验.......................... 2

一、实验目的................................................. 2

二、实验内容................................................. 2

1. 掌握网络协议分析软件的常用过滤规则使用方法;............................................. 2

2. 分析ICMP协议报文............................. 2

三、实验原理................................................. 2

(1)实验设备........................................... 3

四、 实验内容与步骤................................... 3

1. 分析ICMP协议..................................... 3

2. 用Tracert程序俘获ICMP分组。..... 5

五. 实验思考:........................................... 7

实验五 ICMP报文分析实验

一、实验目的

了解网络协议分析软件的过滤方式和原则,包括:按协议类型过滤,按IP地址过滤,按协议模式过滤,按端口过滤等,通过设置不同的过滤条件,熟悉协议类型、端口、协议等概念;分析以太网数据帧的构成,数据链路层将不可靠的物理层转变为一条无差错的链路,涉及的数据单位是帧(frame),高层的协议数据被封装在以太网帧的数据字段发送。使用网络协议分析软件可以捕获各种协议数据包,通过查看这些协议数据包中数据链路帧的各字段可以分析网络协议的内部机制。                     

二、实验内容

  1. 掌握网络协议分析软件的常用过滤规则使用方法;
  2. 分析ICMP协议报文

三、实验原理

ICMP协议是IP协议的补充,用于IP层的差错报告、拥塞控制、路径控制以及路由器或主机信息的获取。ICMP报文由首部和数据段组成。首部为定长的8个字节,前4个字节是通用部分,后4个字节随报文类型的不同有所差异。ICMP报文的一般格式如图所示。

 

补充ICMP协议的几种报文及其含义。

ICMP 类型报文分为 2 类: (1)差错报告报文 类型值为 3 时:表示终点不可达 类型值为 4 时:表示源点抑制 类型值为 5 时:表示改变路由(Redirect) 类型值为 11 时:表示超时 类型值为 12 时:表示参数问题 (2)询问报文 类型值为 8 或者 0 时:表示回送(Echo)请求或应答 类型值为 13 或 14 时:表示时间戳(Timestamp)请求或应答

(1)实验设备

计算机以太网环境及Wireshark网络协议分析软件

1. 分析ICMP协议

  1. 利用Ping程序产生ICMP分组。Ping向因特网中的某个特定主机发送特殊的探测报文并等待表明主机在线的回复。具体做法:
  1. 启动打开网络协议分析软件(Wireshark),选择菜单命令“Capture”“Options”子菜单项。弹出“Wireshark: Capture Options”对话框。在Capture中选择网卡。Capture filter字段填入:“icmp”,单击“Start”按钮开始网络数据包捕获。

  1. 打开Windows命令提示符窗口(Windows Command Prompt),输入“ping –n 10 hostname” ,其中“-n 10”指明应返回10条ping信息,附上执行结果图。

 

  1. 当ping程序终止时,停止Wireshark 分组俘获。
  1. 停止分组俘获后,附上wireshark的界面:

  1. 截取其中ICMP协议的详细信息

  1. 观察这个ICMP分组,分析属于ICMP的哪种分组。

从截取ICMP协议的详细信息观察可以看出,此ICMP分组的Type: 8 and Code :0 即所谓的ICMP “echo request” 分组。

  1. 查看ping请求分组,ICMP的type 和code是多少?这个ICMP 包包含了哪些其他的字段?Checksum、sequence number 和identifier 字段的值各为多少?

与此同时该 ICMP 包包含了 checksum,identifier (BE),identifier(LE),sequence number(BE),sequence number(LE),Response frame 字段。 具体每个字段的值如下所示:

Type:8(Echo(ping)requ est) Code:0

checksum:0x98f9 correct[checksum Status: Good]

Identifier(BE):7134(0x1bde) Identifier (LE):56859(0) xde1b)

  1. 查看相应的ICMP响应信息,ICMP的type 和code又是多少?这个ICMP 包包含了哪些其他的字段?Checksum、sequence number 和identifier 字段的值各为多少?

ICMP 的 type = 0,code = 0,与此同时该 ICMP 包包含了 checksum,identifier (BE),identifier(LE),sequence number(BE),sequence number(LE),Request frame,Response time 字段。 具体每个字段的值如下所示:

Type:0   Code:0

Checksum:0x54cd

Sequence number;36352(0x8e00)

Identifier:256(0x0100)

  1. 用Tracert程序俘获ICMP分组。

Tracert能够映射出通往特定的因特网主机途径的所有中间主机。源端发送一串ICMP分组到目的端。发送的第一个分组时,TTL=1;发送第二个分组时,TTL=2,依次类推。路由器把经过它的每一个分组TTL字段值减1。当一个分组到达了路由器时的TTL字段为1时,路由器会发送一个ICMP错误分组(ICMP error packet)给源端。

  1. 启动Window 命令提示符窗口
  2. 启动Wireshark分组嗅探器,开始分组俘获。
  1. 在cmd窗口,运行Tracert命令, 附上执行结果图

  1. 当Tracet 程序终止时,停止分组俘获,附上捕获ICMP分组的截图

  1. 查看ICMP echo 分组 ,是否这个分组和前面使用 ping命令的ICMP echo 一样?

答:不一样,前者是32,后者是64。

  1. 查看ICMP错误分组,它比ICMP echo 分组包括的信息多。ICMP错误分组比ICMP echo 分组多包含的信息有哪些?

多了 IP 数据报的首部以及 TCP 或 UDP 协议的端口号

在实验中遇到了哪些问题,如何解决的,获取了什么启发。

在实验过程中,在刚开始的时候,一直无法抓包icmp协议的任何信息。在经过网上查询wireshark分析icmp协议的实现过程后,有了一些收获。Ping是用来测试网络连通性的命令,一旦发出Ping命令,主机会发出连续的测试数据包到网络中,在通常的情况下,之际会收到回应数据包,ping采用的是icmp协议。ICMP协议主要是Type和Code来识别,“Type:8,Code:0”表示报文类型为诊断报文的请求测试包,“Type:0,Code:0”表示报文类型为诊断报文类型正常的包。通过此次实验,对协议了解的更深刻了。

 

  • 1
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
网络协议TCP/IP实验是对ICMP(Internet Control Message Protocol,互联网控制报文协议)协议进行分析实验ICMP是TCP/IP协议族中的一个重要协议,主要用于在IP网络中传递诊断和控制信息。 在实验中,首先需要了解ICMP协议的作用和功能。ICMP协议主要用于网络的故障排除和错误报告,它可以对某些错误情况作出响应并提供相应的错误报告。例如,当IP包无法到达目的地时,ICMP协议可以发送“目标不可达”错误报告;当网络拥塞或繁忙时,ICMP协议可以发送“超时”报告。此外,ICMP协议还可以用于网络探测和诊断,如发送“回显请求”报文以测试网络的可达性和延迟。 实验中可以通过使用网络抓包工具(如Wireshark)来捕获ICMP协议相关的数据包。通过分析数据包的格式和字段,可以理解ICMP协议的具体工作机制。ICMP报文中包含各种类型的消息,如目标不可达、回显请求和回显回答等,通过分析报文中的各个字段,可以了解每个消息的作用和承载的信息。 在分析ICMP协议时,还可以关注ICMP协议与其他协议的配合使用。例如,ICMP协议通常与IP协议配合使用,用于传递错误和控制信息。此外,ICMP报文也可以嵌入到其他协议的数据包中,如在Ping命令中使用ICMP报文进行网络连通性测试。 通过实验分析ICMP协议,我们可以更深入地理解网络协议的工作原理,并掌握网络故障排除和网络诊断的技巧。同时,对于网络安全和网络性能优化也有一定的帮助。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

光而不耀-2001

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值