实验1 网络协议分析与仿真(3)

2019-05-27 20:43

计算机网络协议仿真实验

(c) 为什么产生这样的报文?

4、在命令提示符下运行arp –a命令,检查ARP高速缓存中的内容是否发生变化,分析原因。

5、比较练习二和练习三两实验中得到的ARP报文,有何不同? 分析产生二者区别的原因是什么?

【思考问题】

结合实验过程中的实验结果,回答下列问题

1、观察实验过程中捕获网络上的多个ARP请求帧,观察这些帧的以太网目的地址是否相同,分析其原因。

2、观察实验过程中捕获网络上的多个ARP应答帧,观察这些帧的以太网目的地址是否相同,分析其原因。

【实验结论】

实验四 IP控制管理协议:ICMP

【实验目的】

1、了解ICMP的格式和响应方式及作用 2、了解常见的网络故障 【实验学时】 4学时

【实验类型】 综合型

【实验要求】

1、理解和掌握ICMP协议的基本作用 2、知道ICMP报文的格式

3、理解ICMP协议与IP协议的封装关系

4、学会根据各种响应信息进行出错分析的方法 5、学会使用ping命令 【实验原理】 请参考教材:

第三章 IP网络协议及技术 包括:

ICMP协议;报文格式;报文类型;时间戳请求和应答报文格式;不可达报文格式;ICMP回显请求和应答报文格式等

计算机网络协议仿真实验

【实验步骤】

练习一:仿真发送各种ICMP报文

1、从地址本中选择一台主机,向该主机仿真发送ICMP回显请求报文。 (a) 打开协议仿真编辑器。

(b) 填写该帧的以太网协议首部:

①“源MAC地址”和“目的MAC地址”字段:注意:当选择的目的主机与本机不在同一子网的情况,目的MAC地址该怎样填写

②注意填写“类型或长度”字段值为:0800(即IP协议的类型值) (c) 填写IP协议头信息:

注意协议字段,即上层协议类型应为1(ICMP协议的类型为1),可手工填写也可选择下拉菜单中的“ICMP”协议; 2、填写ICMP协议头信息: (a) 类型字段值为:8; (b) 代码字段值为:0;

(c) 标识符:任选16位二进制数(如0x1234); (d) 序列号:任选16位二进制数(如0x5677); (e) 数据字段:任选;

(f) 校验和:首先把该字段置为0,接下来计算ICMP首部的校验和。ICMP协议校验和字段覆盖整个ICMP报文,包括数据部分。 3、击工具栏或菜单栏中的“发送”,在弹出菜单上选择“发送”按钮,发送ICMP报文; 4、在监控机一端截获相应的请求报文及应答报文并分析,注意当源MAC与源IP属于另一台主机的时候,响应报文的情况。

5、从地址本中选择一台主机,向该主机仿真发送ICMP时间戳请求报文。

(a) 步骤同上。注意对于ICMP时间戳请求报文,类型字段值为13,代码字段值为0。 (b) 在监控机一端截获相应的请求报文及应答报文并分析。 6、编辑IP数据包并主动引入一些错误:

(a) 向目标主机发送一个只有IP头的IP数据包;

(b) 向目标主机发送一个数据包,版本号字段填入7; (c) 向目标主机发送一个数据包,协议类型字段填入120; (d) 向目标主机发送一个数据包,填写不正确的IP报头长度; 向另一台主机发送上述数据包; 在监控机一端捕获响应报文并分析。

练习二:运行ping命令 选择菜单栏中的“工具”,运行下拉菜单中的ping命令

1、从地址本中选择与本机属于同一子网的一主机的主机名或IP地址,作为ping命令的参数;

2、从地址本中选择与本机属于不同子网的一主机的主机名或IP地址,作为ping命令的参数;

计算机网络协议仿真实验

对于上述两种情况,在仿真机和监控机端分别进行观察和分析: 在仿真机端观察:

(a) 是否收到响应包?

(b) 如果收到,观察响应包的个数,并对每个响应包的各信息字段进行分析。 (c) 比较两种次实验中TTL字段值是否相同,为什么? 监控机一端捕获数据并分析: (a) 是否捕获到响应包?

(b) 如果捕获到,观察并分析每个响应包的ICMP协议头部分。

(c) 比较两次实验中监控机一端捕获到的响应包的个数是否相同,为什么? 3、同时打开多个DOS命令提示符窗口,在每个窗口中运行一个ping程序 在监控机一端捕获数据,分析各程序如何识别属于自己的返回信息?

练习三:运行netstat命令

在Dos环境下运行netstat–s,观察ICMP协议部分,查看本机已经接收和发送的ICMP报文类型及报文个数。

练习四:运行tracert命令

在命令提示符下运行类似以下的命令: tracert oa.jlu.edu.cn tracert yahoo.com.cn 观察运行结果并分析。

【思考问题】

结合实验过程中的实验结果,回答下列问题:

1、根据练习一的实验结果说明:

实验室环境所使用操作系统默认的TTL最大值是多少?

2、运行ping 127.0.0.1,再运行ping 本机名(或本机IP地址)。在监控机端是否捕获到相应的ICMP回显请求报文?为什么?

【实验结论】

实验五 UDP数据报的传送

【实验目的】

1、理解UDP协议的工作原理及工作过程 2、了解基本的端口分配

计算机网络协议仿真实验

3、理解DNS的工作原理 【实验学时】 4学时

【实验类型】 综合型

【实验要求】

1、理解UDP协议的通信过程 2、学会手工计算UDP校验和 3、理解DNS的作用及原理

4、初步学会应用C语言与WinSock2进行网络程序设计 【实验原理】

请参考教材第三章 IP网络协议及技术。主要包括

UDP的封装,UDP首部格式,以及UDP校验和的计算方法。

尽管UDP校验和的基本计算方法与IP首部校验和的计算方法类似(16bit字的二进制反码和),但是它们之间存在不同的地方。

首先,UDP数据报长度可以为奇数字节,但是校验和的算法是把若干个16bit字相加。解决方法是必要时在最后增加填充字节0,这只是为了校验和的计算(也就是说,可能增加的填充字节不被传送)。

其次,UDP数据报和TCP段都包含一个12字节长的伪首部,它是为了计算校验和而设置的。伪首部包含IP首部一些字段。其目的是让UDP两次检查数据是否已经正确到达目的地(例如,IP有没有接受地址不是本主机的数据报,以及IP有没有把应传给另一高层的数据报传送给UDP)。

UDP数据报中的伪首部格式如图:

0 15 16 32位源IP地址 32位目的IP地址 0

UDP伪16位UDP长度 16位目的端口号 16UDP检查和 UDP伪8位协议16位源端口号 16位UDP长度 数据 数据 填充字节计算机网络协议仿真实验

【实验步骤】

练习一:编辑并发送UDP数据包 1、打开协议仿真编辑器。

2、填写该帧的以太网协议首部:

(a) 源MAC地址”和“目的MAC地址”字段,注意:当选择的目的主机与本机不在同一子网的情况,目的MAC地址该怎样填写

(b) “类型或长度”字段值应为:0800(即IP协议的类型值) 3、填写IP协议头信息:

注意协议字段,即上层协议类型应为17(UDP协议的类型为17); 4、填写UDP协议信息: (a) 16位源端口号:自选 (b) 16位目的端口号:自选 (c) 数据字段:可有可无

(d) 16位UDP长度:UDP报头长度与UDP数据长度之和

(e) 校验和:覆盖UDP首部(含伪首部)和数据两部分。请先根据参考原理的内容进行手工计算,然后利用协议仿真编辑器来计算(方法二),比较二者的结果,检验手工计算结果的正确性。

方法一:手工计算。

按照参考原理(3)中介绍的内容,计算好UDP伪首部和首部中的各项值,然后按16bit进行反码求和(方法同计算IP校验和),将结果填入相应字段。

方法二:利用协议仿真编辑器来计算。步骤为:

①将UDP长度填写到16位UDP校验和字段中作为伪首部中UDP长度字段值; ②选中IP首部中的32位源IP地址和32位目的IP地址作为UDP伪首部中的32位源IP地址和32位目的IP地址;

③选中IP首部中8位的协议字段作为UDP伪首部中的8位的协议字段; ④在8位的协议字段之前选择一个8位的0作为UDP伪首部中的8位0; ⑤再选中UDP首部的及数据各字段; ⑥点击鼠标右键,选择“计算校验和”;

⑦将得到的校验和值填写到16位UDP校验和字段。

下面是一个计算UDP校验和的一个例子:

一个不含数据部分的UDP数据报的十六进制对照表如下: 00 01 02 03 04 05 06 07 08 09 0A 0B 08 00 45 00 00 4F 94 48 40 00 80 11 E4 9D C0 A8 00 20 C0 A8 00 52 00 00 00 00 00 08 00 08 其中黑体部分为用来计算校验和的UDP伪首部和UDP首部,其中: 00 11(十进制的17):为UDP伪首部中8位的0和8位的协议字段; C0 A8 00 20:为UDP伪首部中32位源IP地址; C0 A8 00 52:为UDP伪首部中32位目的IP地址;


实验1 网络协议分析与仿真(3).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:关于中西方绘画差异

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: