1、 电 子 科 技 大 学 实 验 报 告 学 号 2901305032 学生姓名: XXX 课程名称: TCP / IP 任课老师: 张 科 实验项目名称 排错工具-Ping和Trace
2、 实验2:排错工具-Ping和Trace 【实验内容】 PC2 PC3 R1 R2 F0/0 F0/0 Ethernet1 (VMnet1) Ethernet2 (VMnet2) R1 F0/0 = 192.168.11.254/24 R2 F0/0 = 192.168.22.254/24 R1~R4间4个IP子网掩码均为/30 PC2 = 192.168.11.2/24 PC3 = 192.168.22.3/24 PC4 = 192.168.22.4/24(未开机) R4 R3 子网A 子网B
3、 BW=100M MTU=1500 BW=2M MTU=800 BW=100M MTU=1500 BW=64K MTU=800 MTU=1500 MTU=1500 PC4 F0/1 F0/0 S1/1 S1/0 S1/0 F0/1 F0/0 S1/0 实验拓扑中VMware虚拟机PC2、PC3和PC4(未开机)分别位于由提供集线器功能的虚拟网卡VMnet1和VMnet2模拟实现的两个以太网Ethernet1和Ethernet2中,这两个以太网对应的IP子网A和子网B分别连在Dynamips软件模拟实现的路由器R1和R2的F0/0接口上。R1和R2经由
4、Dynamips软件模拟实现的路由器R3和R4互联,R1、R2、R3和R4之间运行OSPF路由协议,没有缺省路由。 实验者在PC2上使用通信测试命令(ping)和路径跟踪命令(tracert),结合Dynamips软件的分组捕获功能以及Wireshark软件的捕获分组查看功能,测试子网A、B之间的连通性和通信路径,考察IP地址和分组长度对网络间通信的影响以及IP分组生存时间(TTL)对网络间IP分组交付的影响,体会ICMP协议的差错报告机制,理解并掌握PING和TRACE的工作原理和操作命令。 【实验步骤】 1、依次启动VMware Workstation中TCPIP组内的虚拟机PC2和
5、PC3。(注:不开启PC4) 2、启动Dynamips Server,然后运行,在Dynagen窗口中提示符“=>”后依次输入以下命令启动路由器R1、R2、R3和R4: => start R1 => start R2 => start R3 => start R4 3、在PC2上使用“route print”命令查看并记录该主机的路由表。 4、在PC2的cmd窗口键入“ping”命令,查看并记录选项-n、-l、-f的含义和功能。然后在PC2上ping PC3的IP地址确保整个实验网络运行正常。 5、在Dynagen窗口中提示符“=>”后依次输入以下命令捕获子网A和子网B中的分组
6、
=> capture R1 f0/0 aping.cap
=> capture R2 f0/0 bping.cap
6、在PC2上使用-n选项ping PC3的IP地址,记录ping回应信息。
ping -n 1
7、ng未开机的PC4,记录ping回应信息。
ping -n 1 192.168.22.4
10、在PC2上ping 10.1.1.1,记录ping回应信息。
ping -n 1 10.1.1.1
11、在Dynagen窗口中提示符“=>”后依次输入以下命令重新捕获子网A和子网B的分组:
=> 、
=> no capture R2 f0/0
=> capture R1 f0/0 atrace.cap
=> capture R2 f0/0 btrace.cap
12、在PC2上trace PC3的IP地址,记录trace回应信息。
tracert 8、址>
13、在Dynagen窗口中提示符“=>”后依次输入以下命令停止捕获子网A和子网B中的分组:
=> no capture R1 f0/0
=> no capture R2 f0/0
14、用Wireshark软件查看并分析捕获的分组文件(aping.cap、bping.cap、atrace.cap、btrace.cap)中的ping和trace通信分组,查看过滤条件为“ip.proto == 1”(在Wireshark主窗口界面“过滤工具栏”的“Filter:”域中输入)。
15、实验结束后,按照以下步骤关闭实验软件、上传实验数据、还原实验环境:
(1)在Dynagen窗口中 9、提示符“=>”后依次输入以下命令关闭Dynagen窗口,然后再关闭Dynamips Server窗口:
=> stop /all
=> exit
(2)依次关闭PC2和PC3,再关闭VMware窗口;
(3)运行所在目录下的“reset.bat”文件。
【实验数据和结果分析】
1、按照显示顺序记录步骤3中PC2的路由表信息:
No.
Network Destination
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.1 10、1.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
Default Gateway:
192.168.11.254
【分析】
1) 请按照网关(gateway)地址分类分析主机路由表中每条路由表项的网关地址的 11、特征,路由的目的地,以及所采取的分组交付方式。
第一条, 缺省路由。解释:当一个数据包的目的的网段不在你的路由记录中,数据包则发到这个地方。缺省路由的网管由default gatewat决定,它采用间接交付方式。
第二条, 本地环路,127.0.0.0网段内所有地址都指向自己的机器。
第三条, 直联网段的路由记录,当一个数据包的目的的网段是192.168.11.0,则机器将数据包通过192.168.11.2这个接口发出去,采用直接交付。。
第四条, 本地主机路由,当路由器收到发送给自己的数据包将如何处理
当机器接收到的数据包的目的网段是192.168.11.2时,机器会将这个数据包接 12、收下来,因为这个数据包是发给此机器的。
第五条, 本地广播路由,当路由器收到发送给直联网段的本地广播时如何处理
当机器收到广播数据包的目的网段是192.168.11.255时,机器将这个数据包从192.168.11.2接口以广播的形式发送出去
第六条, 组播路由,当路由器收到一个组播数据包时该如何处理
当机器收到组播数据包时,机器将这个数据包从192.168.11.2接口以组播的形式发送出去
第七条, 广播路由,当路由器收到一个绝对广播时该如何处理
当机器收到绝对广播数据包时,将该数据包丢弃掉
2) 本实验中PC2将使用哪条路由发送对目的主机的ping报文?
第3条
2、 13、记录步骤4中PC2上显示的PING命令选项-n、-l、-f的含义。
-n count number of echo requests to send
-l size send buffer size
-f send don’t fragment flag in packet
3、记录步骤6中PC2上的ping命令回应信息,并按分组的捕获顺序记录该步骤在子网A和子网B上捕获的ICMP报文信息:
Ping命令
PING回应信息
ping -n 1 192.168.22.3
Send=1,Received=1
子网
IP分组首部
ICMP报文首部
14、TTL
源IP地址
目的IP地址
Type
Code
报文类型
A
128
192.168.11.2
192.168.22.3
8
0
Eho request
124
192.168.22.3
192.168.11.2
0
0
Echo reply
B
124
192.168.11.2
192.168.22.3
8
0
Echo request
192.168.22.3
192.168.11.2
0
0
Echo reply
说明:IP地址用点分十进制表示,其他值均用十进制表示。
【分析】解释PING命令回应信息中的bytes 15、time和TTL参数的含义。
Bytes 是命令中发送的字节数
Time 是往返所需时间
TTL 是生存时间
4、记录步骤7中PC2上的ping命令回应信息,并按分组的捕获顺序记录该步骤在子网A和子网B上捕获的ICMP报文的IP分组头信息:
Ping命令
PING回应信息
ping -n 1 -l 1500 192.168.22.3
Send=1,Received=1
子网
IP分组首部
总长度
标识
不分片
还有分片
分片偏移
源IP地址
目的IP地址
A
1500
109
0
1
0
192.168.11.2
192.168.22.3
16、
48
109
0
0
185
192.168.11.2
192.168.22.3
796
19
0
1
0
192.168.22.3
192.168.11.2
724
19
0
1
97
192.168.22.3
192.168.11.2
48
19
0
0
185
192.168.22.3
192.168.11.2
B
48
109
0
0
185
192.168.11.2
192.168.22.3
796
109
0
1
0
192.168.11.2
192.168.22.3
724
109
0
17、1
97
192.168.11.2
192.168.22.3
1500
19
0
1
0
192.168.22.3
192.168.11.2
48
19
0
0
185
192.168.22.3
192.168.11.2
说明:IP地址用点分十进制表示,其他值均用十进制表示。
注意:“分片偏移”填写的是分组首部中以8字节为单位的片偏移值。
【分析】
1) PC2发出的IP分组(源IP地址PC2,目的IP地址PC3)在子网A和子网B上分别有几个分片?这些分片分别是由实验拓扑中的哪些设备划分的?为什么要划分这些分片?这些分片的重组操作将由实验拓扑中的哪台设 18、备进行?
答:子网A中有两个分片,在子网B中有三个分片,这些分片是路由器R1划分的,因为网络的MTU比报文的长度短,需要分片传输。重组是在目的主机PC3上完成。
2) PC3发出的IP分组(源IP地址PC3,目的IP地址PC2)在子网A和子网B上分别有几个分片?这些分片分别是由实验拓扑中的哪些设备划分的?为什么要划分这些分片?这些分片的重组操作将由实验拓扑中的哪台设备进行?
答:在子网A中有三个分片,在子网B中有两个分片,这些分片是路由器R2划分的,因为网络的MTU比报文的长度短,就得分片传输。重组是在目的主机PC2上完成。
3) 在分片重组操作中,应根据分片首部中的什么信息判断收到的 19、分片属于哪个IP分组?属于同一IP分组的分片需按照分片首部中的什么信息进行重组?
答:根据标示位的数据信息来判断分片属于什么IP分组,属于同一IP分组的分片需要分片偏移和是否有分片着连信息来进行重组。
5、记录步骤8中PC2上的ping命令回应信息。
步骤
Ping命令
PING回应信息
8
ping -n 1 -l 1500 -f 192.168.22.3
Send=1,Received=0
【分析】本步骤中是否捕获到PC2发送或接收的报文?结合PING回应信息解释其原因。
答:未捕获到,因为-f不分片,而这个报文的长度大于那段介质的MTU,就会被丢弃。
6、记录步骤9 20、中PC2上的ping命令回应信息。
步骤
Ping命令
PING回应信息
9
ping -n 1 192.168.22.4
Send=1,Received=0
【分析】
1) 本步骤中是否捕获到PC2发送或接收的报文?结合PING回应信息解释其原因。
答:能捕获到,因为PC2ping一台不存在的主机,路由器R1不会知道,只会转发
2) 在ping时如果收到“Request timed out.”信息,是否能确定目的主机一定未开机响应或一定没有可达的路由?为什么?答:
答:不一定,有可能是网络过于拥塞。
7、记录步骤10中PC2上的ping命令回应信息,并按分组的捕获顺序 21、记录该步骤在子网A上捕获的ICMP报文信息:
Ping命令
PING回应信息
ping -n 1 10.1.1.1
Send=1,Receive=0
IP分组首部
ICMP报文首部
ICMP差错报文的数据
标识
源IP地址
Type
Code
标识
源IP地址
113
192.168.11.2
8
0
109
192.168.11.254
3
1
113
192.168.11.2
说明:IP地址用点分十进制表示,其他值均用十进制表示。
【分析】请指出步骤9和步骤10中目的主机可达性的差异之处,并解释其差异产生的原因。
答:在步骤9中只 22、有主机不可以到达,该网段还是可到达的;
在步骤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
Request
255
192.168.11.254
192.168.11.2
11
0
Exceeded
2
192.168.11.2
192.168.22.3
8
23、
0
Request
254
192.168.13.2
192.168.11.2
11
0
Exceeded
3
192.168.11.2
192.168.22.3
8
0
Request
253
192.168.34.2
192.168.11.2
11
0
Exceeded
4
192.168.11.2
192.168.22.3
8
0
Request
252
192.168.24.1
192.168.11.2
11
0
Exceeded
5
192.168.11.2
192.168.22.3
8
0
Request
24、
124
192.168.22.3
192.168.11.2
0
0
Reply
B
1
192.168.11.2
192.168.22.3
8
0
Request
128
192.168.22.3
192.168.11.2
0
0
Reply
说明:TTL、源IP地址和目的IP地址都相同的分组只记录1次;
【分析】
1) TRACE程序根据什么报文中的什么信息获得每一跳路由器的IP地址?
答:根据每一次返回的ICMP报文中的源IP地址确定。
2) TRACE程序在跟踪每一跳路由器时,发送了几个测试报文?这样做的目的是什么?
答:发送了三个测试报 25、文,这样做防止ICMP报文丢失,确保接收到回应信息。
3) WinXP系统的TRACE程序使用何种方法判断测试分组是否已到达目的主机?
答:TRACE程序发给的目的主机的IP分组中携带的是ICMP回送请求报文。当该IP分组达到目的主机时,目的主机回返回一份ICMP会送应答报文给TRACE程序。如此,TRACE程序即可根据收到的ICMP报文是超市还是回答应答来判断何时解释。
【实验结论】
1、 总结ICMP差错报告机制的作用和ICMP差错报告报文中数据部分的作用。
答:ICMP差错报告机制使原始的数据发送端知道它自己发送数据失败,而ICMP报文中的数据则可以让发送端知道发送失败的类 26、型和原因。
2、 交付出错的哪些IP分组不会产生ICMP差错报告报文?
答:有四种情况,
① 对于携带ICMP差错报文的数据包,不再产生ICMP差错分组;
② 对于分片的数据包,如果不是第一个分片,不再产生ICMP差错分组;
③ 对于具有多播地址的数据报,不再产生ICMP差错分组;
④ 对具有特殊地址的数据报,不再产生ICMP差错分组。
3、请根据实验中的TRACE回应信息和实验拓扑图,写出路由器R1的F0/1接口、R2的F0/1和S1/0接口、以及R3和R4的所有接口的IP地址,并指出本实验中子网A到子网B的通信路径。
答:R1 F0/1:192.168.13.1
R2 F0/1:192.168.24.1 S1/0:未知
R3 F0/0:192.168.13.2 S1/1:192.168.34.2 S1/0:未知
R4 S1/0:192.168.34.2 F0/0:192.168.24.2
通信路径:PC2→R1→R3→R4→R2→PC3






