电子科大TCPIP第四次实验报告.docx

上传人:b****2 文档编号:25745301 上传时间:2023-06-12 格式:DOCX 页数:15 大小:54.76KB
下载 相关 举报
电子科大TCPIP第四次实验报告.docx_第1页
第1页 / 共15页
电子科大TCPIP第四次实验报告.docx_第2页
第2页 / 共15页
电子科大TCPIP第四次实验报告.docx_第3页
第3页 / 共15页
电子科大TCPIP第四次实验报告.docx_第4页
第4页 / 共15页
电子科大TCPIP第四次实验报告.docx_第5页
第5页 / 共15页
点击查看更多>>
下载资源
资源描述

电子科大TCPIP第四次实验报告.docx

《电子科大TCPIP第四次实验报告.docx》由会员分享,可在线阅读,更多相关《电子科大TCPIP第四次实验报告.docx(15页珍藏版)》请在冰豆网上搜索。

电子科大TCPIP第四次实验报告.docx

电子科大TCPIP第四次实验报告

电子科技大学

 

学生姓名:

学号:

课程名称:

TCP/IP协议

指导教师:

日期:

2016年11月26日

实验项目名称:

排错工具Ping和Trace

报告评分:

教师签字:

1、实验原理

“PING”这个名字源于声纳定位操作。

PING程序的目的是测试另一台主机否可达,它发送ICMP回送请求报文给被测主机,并等待返的ICMP回送应答差错报告报文。

ICMP协议(RFC792)是IP协议的辅助协议,提供差错报告和查询机制。

一台主机的可达性不仅取决于IP层是否可达,还取决于使用的高协议及端口号。

仅当被测主机可达时,PING程序才能收到返回的ICMP回送应答报文,并能测出到该主机的往返时间。

如果被测主机不可达,PING程序会收到一些ICMP差错报告报文,甚至收不到任何返回信息。

根据ICMP差错报告文的类型,可粗略判定主机不可达的原因。

不同的物理网络具有不同的最大传送单元(MTU)值,因此可能需要对IP分组进行分片操作使其能够通过这些物理网络。

当IP分组被分片时,需要修改头中的标志、分片偏移和总长度值,其余各字段将被复制到所有分片中。

已经分片的IP分组在遇到具有更小MTU的网络时还会被再次分片。

TTL字段是由发送端初始设置在IP分组首部中的一个8bit字段,不同操作系统上的不同应用程序指定的初始值不同。

路由器在转发每个IP分组时需要将该分组的TTL值减1或减去该分组在路由器中停留的秒数。

由于大多转发IP分组的时延都小于1秒钟,因此TTL最终成为一个跳站计数器,即分组每经过台路由其最终成为一个跳站计数器,即分组每经过台路由其最终成为一个跳站计数器,即分组每经过一台路由其TTL值被减1。

TTL字段的目是为了防止分组在选路时被无休转发。

当由器收到一份需转发的IP分组时,如果该分组的TTL值为1,路由器则丢弃该分组,并向源发送一份ICMP的TTL超时报文。

TRACE程序使用IP分组首部的TTL字段(生存时间)和ICMP报文,让使用者可以看到IP分组从一台主机传到另一台主机所经过的路由。

TRACE程序首先发送一份TTL值为1的IP分组给目的主机,处理该分组的第1个路由器即会返回一份以自己的IP地址为源的携带有ICMP超时报文的IP分组,这样TRACE程序就得到了该路径中第1个路由器的IP地址。

然后,TRACE程序发送一份TTL值为2的IP分组,同样又可获得该路径中第2个路由器的IP地址。

TRACE程序不断增加所发送IP分组的TTL值直至IP分组到达目的主机,即可获得所经过每一个路由器地址。

但是,IP分组的目的主机不处理该分组的TTL值,即使收到TTL值为1的IP分组也不会丢弃该分组并产生一份ICMP超时报文。

因此,TRACE程序必须判断IP分组是否已到达目的主机,不同操作系统上TRACE程序的判断方法不同。

目前通常有两种实现方法:

一种是利用“端口不可达”的ICMP差错报文,另一种则是使用ICMP回送请求和回送应答报文。

在前一种方法中,TRACE程序发给目的主机的IP分组中携带的是一份UDP数据报,该UDP数据报的目的端口是一个目的主机上任一应用程序都不可能使用的UDP端口(通常大于30000)。

当该IP分组到达目的主机时,目的主机的UDP模块会产生一份“端口不可达”的ICMP差错报文返回给TRACE程序。

这样,TRACE程序即可根据收到的ICMP报文是超时还是端口不可达来判断何时结束。

在后一种方法中,TRACE程序发给目的主机的IP分组中携带的是ICMP回送请求报文。

当该IP分组到达目的主机时,目的主机即会返回一份ICMP回送应答报文给TRACE程序。

这样,TRACE程序即可根据收到的ICMP报文是超时还是回送应答来判断何时结束。

二、实验目的

1、了解网络连通性测试的方法和工作原理

2、了解网络路径跟踪的方法和工作原理

3、掌握MTU的概念和IP分片操作

4、掌握IP分组生存时间(TTL)的含义和作用

5、掌握路由表的作用和查找算法

三、实验内容

实验拓扑中VMware虚拟机PC2、PC3和PC4(未开机)分别位于由提供集线器功能的虚拟网卡VMnet1和VMnet2模拟实现的两个以太网Ethernet1和Ethernet2中,这两个以太网对应的IP子网A和子网B分别连在Dynamips软件模拟实现的路由器R1和R2的F0/0接口上。

R1和R2经由Dynamips软件模拟实现的路由器R3和R4互联,R1、R2、R3和R4之间运行OSPF路由协议,没有缺省路由。

实验者在PC2上使用通信测试命令(ping)和路径跟踪命令(tracert),结合Dynamips软件的分组捕获功能以及Wireshark软件的捕获分组查看功能,测试子网A、B之间的连通性和通信路径,考察IP地址和分组长度对网络间通信的影响以及IP分组生存时间(TTL)对网络间IP分组交付的影响,体会ICMP协议的差错报告机制,理解并掌握PING和TRACE的工作原理和操作命令。

四、实验器材(设备、元器件)

装有相关软件的机房电脑

五、实验步骤

1、确保网络连接中的VMnet1和VMnet2均被启用,然后依次启动VMwareWorkstation中TCPIP组内的虚拟机PC2和PC3。

(注:

不开启PC4)

2、运行Dynagen中的“Networkdevicelist”程序,核对确保文件中R1的F0/0值与“Networkdevicelist”中VMnet1的“NIO_gen_eth…”一致,R2的F0/0值与“Networkdevicelist”中VMnet2的“NIO_gen_eth…”一致。

然后启动DynamipsServer(直到步骤14才能关闭DynamipsServer窗口),接着运行,在Dynagen窗口中提示符“=>”后依次输入以下命令启动路由器R1、R2、R3和R4:

=>startR1

=>startR2

=>startR3

=>startR4

3、在PC2上使用“routeprint”命令查看并记录该主机的路由表。

4、在PC2的cmd窗口键入“ping”命令,查看并记录选项-n、-l、-f的含义和功能。

然后在PC2上pingPC3的IP地址确保整个实验网络运行正常。

5、在Dynagen窗口中提示符“=>”后依次输入以下命令捕获子网A和子网B中的分组:

=>captureR1f0/0aping.cap

=>captureR2f0/0bping.cap

6、在PC2上使用-n选项pingPC3的IP地址,记录ping回应信息。

ping-n1

7、在PC2上使用-n和-l选项pingPC3的IP地址,记录ping回应信息。

ping-n1-l1500

8、在PC2上使用-n、-l和-f选项pingPC3的IP地址,记录ping回应信息。

ping-n11500-f

9、在PC2上ping未开机的PC4,记录ping回应信息。

ping-n1192.168.22.4

10、在PC2上ping10.1.1.1,记录ping回应信息。

ping-n110.1.1.1

11、在DynagenDynagenDynagenDynagenDynagenDynagenDynagen窗口中提示符“窗口中提示符“=>”后依次输入以下命令重新捕获子网”后依次输入以下命令重新捕获子网”后依次输入以下命令重新捕获子网”后依次输入以下命令重新捕获子网”后依次输入以下命令重新捕获子网A和子网B的分组:

=>nocaptureR1f0/0

=>nocaptureR2f0/0

=>captureR1f0/0atrace.cap

=>captureR2f0/0btrace.cap

12、在PC2上tracePC3的IP地址,记录trace回应信息。

tracert

13、在Dynagen窗口中提示符“=>”后依次输入以下命令停止捕获子网A和子网B中的分组:

=>nocaptureR1f0/0

=>nocaptureR2f0/0

14、实验结束后,按照以下步骤关闭实验软件、上传实验数据、还原实验环境:

(1)在Dynagen窗口中提示符“=>”后依次输入以下命令关闭Dynagen窗口,然后再关闭DynamipsServer窗口:

=>stop/all

=>exit

(2)依次关闭PC2和PC3,再关闭VMware窗口;

(3)运行所在目录下的“ftp.bat”程序来上传实验数据(注意:

务必按照“ftp.bat”程序运行中的提示信息执行正确操作)。

(4)确认实验数据上传成功后,运行所在目录下的“reset.bat”程序还原实验环境(注意:

“reset.bat”程序会自动删除实验数据文件)。

15、用Wireshark软件查看并分析捕获的分组文件(aping.cap、bping.cap、atrace.cap、btrace.cap)中的ping和trace通信分组,查看过滤条件为“ip.proto==1”(在Wireshark主窗口界面“过滤工具栏”的“Filter:

”域中输入)。

六、实验数据及结果分析

1、按照现实顺序记录步骤3中PC2的路由表信息:

No.

NetworkDestination

Netmask

Gateway

1

0.0.0.0

0.0.0.0

192.168.11.254

2

127.0.0.0

255.0.0.0

127.0.0.1

3

192.168.11.0

255.255.255.0

192.168.11.2

4

192.168.11.2

255.255.255.255

127.0.0.1

5

192.168.11.255

255.255.255.255

192.168.11.2

6

224.0.0.0

240.0.0.0

192.168.11.2

7

255.255.255.255

255.255.255.255

192.168.11.2

DefaultGateway:

192.168.11.254

【分析】

1)请按照网关(gateway)地址分类分析主机路由表中每条路由表项的网关地址的特征,路由的目的地,以及所采取的分组交付方式。

No.1:

缺省路由。

当系统收到一个目的地址不在路由表中的数据包时,系统会将该数据包发送到缺省网关192.168.11.254;采取间接交付。

No.2:

本地环路。

当系统接收到一个发往目标网段127.0.0.0的数据包时,系统将接收发往该网段的所有数据包。

采取直接交付。

No.3:

直连网段。

当系统接收到一个发往目的网段192.168.11.0的数据包时,系统会将该数据包通过192.168.11.2这个接口发送出去(表中没给出interface的相应记录,对于该表项,gateway和interface是同一个,因为分组的目的网段正是路由器所直连的网段)。

采取直接交付。

No.4:

本地主机路由。

当系接收到一个目标IP地址为本地网卡IP地址的数据包时,系统将接收该数据包。

采取直接交付。

No.5:

本地广播路由。

当系统接收到一个发给直连网段的本地广播数据包时,系统会将该数据包从192.168.11.2这个接口以广播的形式发送出去(对于该表项,gateway和interface相同)。

No.6:

组播路由。

当系统接收到一个组播数据包时,系统会将该数据包从192.168.11.2这个接口以组播的形式发送出去(对于该表项,gateway和interface相同)。

 

No.7:

广播路由 当系统接收到一个广播数据包时,系统会将该数据包从192.168.11.2这个接口直接发送出去。

2) 本实验中PC2将使用哪条路由发送对目的主机的ping报文?

答:

使用第一条,即缺省路由。

 

2、记录步骤4中PC2上显示的PING命令选项-n、-l、-f的含义。

-n count       Number of echo requests to send.

 -l size        Send buffer size. 

-f             Set Don't Fragment flag in packet.

3、记录步骤6中PC2上的ping命令回应信息,并按分组的捕获顺序记录该步骤在子网A和子网B上捕获的ICMP报文信息:

Ping命令

PING回应信息

ping-n1192.168.22.3

Send=1,Received=1

子网

IP分组首部

ICMP报文首部

TTL

源IP地址

目的IP地址

Type

Code

报文类型

A

128

192.168.11.2

192.168.22.3

8

0

Echorequest

124

192.168.22.3

192.168.11.2

0

0

Echoreply

B

124

192.168.11.2

192.168.22.3

8

0

Echorequest

128

192.168.22.3

192.168.11.2

0

0

Echoreply

说明:

IP地址用点分十进制表示,其他值均用十进制表示。

【分析】解释PING命令回应信息中的bytes、time和TTL参数的含义。

bytes:

发送字节数 

time:

往返时间 

TTL:

生存时间

4、记录步骤7中PC2上的ping命令回应信息,并按分组的捕获顺序记录该步骤在子网A和子网B上捕获的ICMP报文的IP分组头信息:

Ping命令

PING回应信息

ping-n1-l1500192.168.22.3

Send=1,Receive=1

子网

IP分组首部

总长度

标识

不分片

还有分片

分片偏移

源IP地址

目的IP地址

A

60

73

0

0

0

192.168.11.2

192.168.22.3

60

72

0

0

0

192.168.22.3

192.168.11.2

48

74

0

0

1480

192.168.11.2

192.168.22.3

724

73

0

1

776

192.168.22.3

192.168.11.2

B

60

73

0

0

0

192.168.11.2

192.168.22.3

60

72

0

0

0

192.168.22.3

192.168.11.2

724

74

0

1

776

192.168.11.2

192.168.22.3

48

73

0

0

1480

192.168.22.3

192.168.11.2

说明:

IP地址用点分十进制表示,其他值均用十进制表示。

注意:

“分片偏移”填写的是分组首部中以8字节为单位的片偏移值。

【分析】

1)PC2发出的IP分组(源IP地址PC2,目的IP地址PC3)在子网A和子网B上分别有几个分片?

这些分片分别是由实验拓扑中的哪些设备划分的?

为什么要划分这些分片?

这些分片的重组操作将由实验拓扑中的哪台设备进行?

答:

子网A:

2个分片,子网B:

3个分片;子网A的分片由PC2划分,子网B的分片由路由器R3划分;从实验记录可知PC2发送的分组总长度为1500字节,在Ethernet1中,当数据报被封装成帧时,帧的长度大于了它的MTU(1500),因此PC2要将数据报分片;当分组到达路由器R3时,从实验拓扑图可以看出,R3-R4之间的链路带宽比较大,分组将选择该路径,而链路的MTU是800,因此对总长度为1500的那个分组还要继续分片,而总长度为48的分组则不需要,分片的过程由R3完成;分片的重组操作将由目的主机PC3进行。

2)PC3发出的IP分组(源IP地址PC3,目的IP地址PC2)在子网A和子网B上分别有几个分片?

这些分片分别是由实验拓扑中的哪些设备划分的?

为什么要划分这些分片?

这些分片的重组操作将由实验拓扑中的哪台设备进行?

答:

 子网A:

3个分片,子网B:

2个分片;子网B的分片由PC3划分,子网A的分片由路由器R4划分;PC3发送的分组总长度为1500字节,在Ethernet 2中,当数据报被封装成帧时,帧的长度大于了它的MTU(1500),因此PC3要将数据报分片;当分组到达路由器R2时,从实验拓扑图可以看出,R2-R4之间的链路带宽比较大,分组将选择该路径,它的MTU是1500,被分片的2个分组都可正常通过,当分组到达路由器R4时,R4-R3是下一跳必须要经过的路径,而它的MTU只有800,因此对总长度为1500的分组还要继续分片,而总长度为48的分组则不需要,分片的过程由R4完成;分片的重组操作将由目的主机PC2进行。

3)在分片重组操作中,应根据分片首部中的什么信息判断收到的分片属于哪个IP分组?

属于同一IP分组的分片需按照分片首部中的什么信息进行重组?

答:

 应根据分片首部中的“标识”字段判断收到的分片所属的IP分组;属于同一IP分组的分片需按照分片首部中“标志”字段中的第三位(M,即“还有分片”位)和“分片偏移”字段进行重组。

5、记录步骤8中PC2上的ping命令回应信息。

步骤

Ping命令

PING回应信息

8

ping-n1-l1500-f192.168.22.3

Send=1,Receive=0

【分析】本步骤中是否捕获到PC2发送或接收的报文?

结合PING回应信息解释其原因。

答:

 没有捕获到。

PING回应信息意思是分组应该被分片才能正常通信。

Ping命令中-f使得分组不分片,导致分组封装成帧后长度大于以太链路的MTU而无法传输。

6、记录步骤9中PC2上的ping命令回应信息。

步骤

Ping命令

PING回应信息

9

ping-n1192.168.22.4

Send=1,Receive=0

【分析】

1)本步骤中是否捕获到PC2发送或接收的报文?

结合PING回应信息解释其原因。

答:

能捕获到PC2发送的报文,但不能捕获到PC2希望接收的报文。

PING回应信息的意思是请求超时,因为PC4没有开机,所以无法给予应答。

2)在ping时如果收到“Requesttimedout.”信息,是否能确定目的主机一定未开机响应或一定没有可达的路由?

为什么?

答:

   不一定。

有可能是因为请求分组丢失或网络拥塞等原因。

7、记录步骤10中PC2上的ping命令回应信息,并按分组的捕获顺序记录该步骤在子网A上捕获的ICMP报文信息:

Ping命令

PING回应信息

ping-n110.1.1.1

Send=1,Receive=0

IP分组首部

ICMP报文首部

ICMP差错报文的数据

标识

源IP地址

Type

Code

标识

源IP地址

78

192.168.11.2

8

0

-

No

212

192.168.11.254

3

1

78

192.168.11.2

说明:

IP地址用点分十进制表示,其他值均用十进制表示。

【分析】请指出步骤9和步骤10中目的主机可达性的差异之处,并解释其差异产生的原因。

答:

差异在于PING回应信息内容不同。

步骤9中主机不可达,但主机所在的子网是可达的,而步骤10中主机和主机所在的子网均不可达。

8、记录步骤12中主机上输入的TRACE命令及其回应信息,并按分组的捕获顺序记录该步骤在子网A和子网B上捕获的如下报文信息:

子网

IP分组首部

ICMP报文首部

TTL

源IP地址

目的IP地址

Type

Code

报文类型

A

1

192.168.11.2

192.168.22.3

8

0

EchoRequest

255

192.168.11.254

192.168.11.2

11

0

Time-to-liveexceed

2

192.168.11.2

192.168.22.3

8

0

EchoRequest

254

192.168.13.2

192.168.11.2

11

0

Time-to-liveexceed

3

192.168.11.2

192.168.22.3

8

0

EchoRequest

253

192.168.34.2

192.168.11.2

11

0

Time-to-liveexceed

4

192.168.11.2

192.168.22.3

8

0

EchoRequest

252

192.168.24.1

192.168.11.2

11

0

Time-to-liveexceed

5

192.168.11.2

192.168.22.3

8

0

EchoRequest

124

192.168.22.3

192.168.11.2

0

0

EchoReply

B

1

192.168.11.2

192.168.22.3

8

0

EchoRequest

128

192.168.22.3

192.168.11.2

0

0

EchoReply

说明:

TTL、源IP地址和目的IP地址都相同的分组只记录1次;

【分析】

1)TRACE程序根据什么报文中的什么信息获得每一跳路由器的IP地址?

答:

根据每次返回的TTL Exceeded类型的ICMP报文中的源IP地址。

2)TRACE程序在跟踪每一跳路由器时,发送了几个测试报文?

这样做的目的是什么?

答:

发送了3条测试报文。

类似于PING,是为了防止因报文丢失或网络拥塞而收到错误的回应。

3)WinXP系统的TRACE程序使用何种方法判断测试分组是否已到达目的主机?

答:

根据收到的ICMP应答中IP分组首部的源IP地址,如果源地址是所要跟踪的目的地址(这里是192.168.22.3),则意味着测试分组已到达目的主机。

7、实验结论

1、总结ICMP差错报告机制的作用和ICMP差错报告报文中数据部分的作用。

 答:

ICMP差错报告机制可以及时通知发出数据报的主机出现了差错,以及帮助网络管理员获得来自其他主机或路由器的信息。

ICMP差错报告报文中数据部分的作用是通告源主机具体的差错类型(如终点不可达、源点抑制、超时等。

2、交付出错的哪些IP分组不会产生ICMP差错报告报文?

答:

携带ICMP差错报文的数据报; 分片的数据报,并且不是第一个分片; 具有多播地址的数据报; 具有特殊地址的数据报(如127.0.0.0或0.0.0.0)

3、请根据实验

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 党团工作 > 入党转正申请

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1