TCPIP协议实验指导书Word格式文档下载.docx
《TCPIP协议实验指导书Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《TCPIP协议实验指导书Word格式文档下载.docx(55页珍藏版)》请在冰点文库上搜索。
标识一个IP网络或子网。
●直接广播地址:
表示该分组应由特定网络上的所有主机接收和处理。
●受限广播地址:
表示该分组应由源所在网络或子网上的所有主机接收和处理。
●本网络上本主机地址:
表示主机自己。
●环回地址:
用来测试机器的协议软件。
IP分组被交付到最终目的地有两种不同的交付方式:
直接交付和间接交付。
交付时首先通过路由选择技术确定交付方式:
如果IP分组的目的与交付者在同一个IP网络上,就直接交付该分组至目的站点;
如果IP分组的目的与交付者不在同一个IP网络上,就间接交付该分组至下一个路由器(即下一跳站点)。
在以太网上,IP分组是封装在以太帧中发送的,因此发送时除了要有接收站的IP地址(IP分组中的目的IP地址)外,还需要接收站的MAC地址(以太网帧中的目的MAC地址)。
ARP协议(RFC826)实现了IP地址(逻辑地址)到MAC地址(物理地址)的动态映射,并将所获得的映射存放在ARP高速缓存表中。
不同的交付方法将导致不同的ARP解析操作,获取不同的目的物理地址。
直接交付时,交付者直接将IP分组交付给该分组的目的站点,因此交付者使用ARP协议找出IP分组中目的IP地址对应的物理地址。
间接交付时,交付者需要将IP分组交付给下一跳站点,而不是该IP分组的目的端,因此交付者使用ARP协议找出下一跳站点IP地址对应的物理地址。
IP网络是一个逻辑网络,一个物理网络可以被逻辑划分成若干个IP网络。
两个IP网络之间的通信必须经由路由器中继,未经路由器互连的两个IP网络即使在同一物理网中也不能通信。
主机的默认网关地址就是连接该主机所在IP网络的路由器接口的IP地址。
【实验内容】
实验拓扑中VMware虚拟机PC1、PC2、PC3和PC4分别位于由提供集线器功能的虚拟网卡VMnet1和VMnet2模拟实现的两个以太网Ethernet1和Ethernet2中,这两个以太网对应的IP子网A和子网B分别连在Dynamips软件模拟实现的路由器R1和R2的F0/0接口上。
R1和R2之间通过PPP链路互联。
R1、R2、PC2、PC3和PC4的网络连接均已配置。
实验者首先在PC1上配置其网络连接,并配合通信测试命令(ping)来检验特殊IP地址的用途以及IP子网设置对同一物理网内计算机间通信的影响,从而理解并掌握子网地址、子网广播地址和主机地址的概念、特征与用途。
然后在PC1上使用ping命令分别进行IP子网内通信和IP子网间通信,通过ARP缓存表操作命令、Dynamips软件的分组捕获功能以及Wireshark软件的捕获分组查看功能,分析IP分组的直接交付、间接交付操作和路由器的作用,掌握ARP协议的工作原理,以及IP分组投递过程中源/目的IP地址与源/目的MAC地址的特征,理解IP子网对IP分组交付的影响。
【实验步骤】
1、依次启动VMwareWorkstation中TCPIP组内的虚拟机PC1、PC2、PC3和PC4,使用ipconfig命令查看并记录这4台PC的网络连接信息,在PC1上pingPC2的IP地址,记录并分析ping的结果。
2、设置PC1的子网掩码为255.255.255.0,然后将其IP地址分别设为192.168.11.0、192.168.11.255,记录并分析设置结果。
3、根据实验拓扑中的各子网信息以及步骤1中记录的PC2、PC3、PC4的网络连接信息,配置PC1的IP地址、子网掩码和默认网关,使得PC1能够ping通PC2,并在PC1上分别pingPC3和PC4的IP地址,记录并分析ping的结果。
4、在PC1上分别ping以下8个IP地址:
0.0.0.0、255.255.255.255、192.168.11.0、192.168.11.255、127.0.0.0、127.0.0.1、127.0.0.10、127.255.255.255,记录并分析ping的结果。
5、启动DynamipsServer,然后运行,在Dynagen窗口中提示符“=>
”后依次输入以下命令启动路由器R1和R2,并进入其CLI:
=>
startR1
startR2
conR1
conR2
6、分别在R1的CLI提示符“R1>
”后以及R2的CLI提示符“R2>
”后输入“showarp”命令查看并记录两台路由器当前的ARP缓存表,例:
R1>
showarpR2>
showarp
7、在Dynagen窗口中提示符“=>
”后依次输入以下命令捕获子网A、子网B和子网C中的分组:
captureR1f0/0a.cap
captureR2f0/0b.cap
captureR2s1/0c.capPPP
8、分别在PC1、PC2、PC3、PC4上使用命令“arp-d*”清空四台PC上的ARP缓存表,然后使用命令“arp-a”查看并记录清空操作后的ARP缓存表。
9、在PC1上pingPC2的IP地址,记录ping回应信息。
ping结束后分别在PC1、PC2、PC3、PC4上使用命令“arp-a”、在R1和R2的CLI上使用命令“showarp”查看并记录四台PC和两台路由器的ARP缓存表。
10、在PC1上pingPC3的IP地址,记录ping回应信息。
11、在PC1上pingPC4的IP地址,记录ping回应信息。
12、在PC1上ping子网A内一台不存在主机的IP地址,记录ping回应信息。
ping结束后在PC1上使用命令“arp-a”查看并记录其的ARP缓存表。
13、在Dynagen窗口中提示符“=>
”后依次输入以下命令停止捕获子网A、子网B和子网C中的分组:
nocaptureR1f0/0
nocaptureR2f0/0
nocaptureR2s1/0
14、用Wireshark软件查看并分析捕获的分组文件(a.cap、b.cap和c.cap)中的ARP和ICMP分组,查看过滤条件为“arp||icmp”(在Wireshark主窗口界面“过滤工具栏”的“Filter:
”域中输入)。
15、实验结束后,按照以下步骤关闭实验软件、上传实验数据、还原实验环境:
(1)关闭R1、R2的CLI窗口,在Dynagen窗口中提示符“=>
”后依次输入以下命令关闭Dynagen窗口,然后再关闭DynamipsServer窗口:
stop/all
exit
(2)将PC1的网络连接设置为“自动获得IP地址”,然后依次关闭PC1、PC2、PC3和PC4,关闭VMware窗口;
(3)运行所在目录下的“reset.bat”文件。
【实验数据和结果分析】
1、记录实验中PC1、PC2、PC3和PC4的网络连接。
PC1
PC2
PC3
PC4
步骤1
步骤3
IP地址
子网掩码
默认网关
【分析】PC1在步骤1和步骤3中是否与PC2、PC3、PC4在一个IP子网中?
为什么?
2、记录实验中PC1的ping通信结果。
步骤
目的主机
PING回应信息
能否通信
1
3
4
0.0.0.0
255.255.255.255
192.168.11.0
192.168.11.255
127.0.0.0
127.0.0.1
127.0.0.10
127.255.255.255
9
10
11
12
本子网内不存在的主机
说明:
因Dynamips软件模拟问题,在步骤10和步骤11中R2不会转发PC1发给PC3和PC4的第1个ping测试请求报文,故实验中请忽略该报文。
【分析】PC1在什么情况下能与PC2、PC3、PC4通信?
3、记录实验中PC1、PC2、PC3、PC4、R1和R2的ARP缓存表项:
步骤6:
使用“showarp”命令查看R1和R2当前的ARP缓存表
MAC地址
Interface
R1
R2
步骤8:
使用“arp–a”命令查看清空操作后PC1~PC4的ARP缓存表
步骤9:
PC1pingPC2后,R1、R2和PC1~PC4的ARP缓存表
步骤10:
PC1pingPC3后,R1、R2和PC1~PC4的ARP缓存表
步骤11:
PC1pingPC4后,R1、R2和PC1~PC4的ARP缓存表
步骤12:
PC1ping本子网内一台不存在的主机后,PC1的ARP缓存表
如果某个步骤中某设备的ARP缓存表为空,则填写“无”。
如果某个步骤中某设备有多条ARP缓存表项,则要填写每一条表项。
【分析】
1)每台PC的ARP缓存表中能否有其它IP子网中PC的地址映射?
2)在实验中PC2的ARP缓存表中能否会有其默认网关192.168.11.254的地址映射?
3)如果步骤11中出现了某条ARP表项消失的情况,原因可能是什么?
4、记录步骤9、步骤10、步骤11、步骤12中捕获的分组信息:
步骤:
PC1ping
子网A
ARP请求
以太帧头
源地址
目的MAC
ARP分组
发方MAC
目标MAC
发方IP
目标IP
ARP响应
源MAC
ICMP回送请求
IP分组头
源IP
目的IP
ICMP回送应答
子网B
PPP帧头
地址
子网C
MAC和IP地址可用对应的设备标识填写(如“R1f0/0”、“PC1”),如果无对应的设备标识,则填写16进制MAC地址或点分十进制IP地址;
如果某个步骤中某子网内没有捕获到相应类型的分组,则填写“无”。
1)4个步骤中是否在子网A、B和C中都有ARP分组?
2)4个步骤中PC1是否每次都发出了封装着ICMP报文的IP分组?
3)4个步骤中PC1是否每次都收到了封装着ICMP报文的IP分组?
4)如果PC1、PC2和路由器R1之间采用以太网交换机连接,那么在步骤9中R1能否捕获到PC1pingPC2时产生的ARP请求分组、ARP响应分组以及ICMP回送请求报文和ICMP回送应答报文?
5)步骤10中路由器R1和R2在转发源为PC1、目的为PC3的IP分组时,分别采用的是直接交付还是间接交付?
【实验结论】
1、根据步骤2和4,总结本实验中所有特殊IP地址的地址结构特征,以及它们在通信中的使用情况。
2、总结主机发送IP分组时的直接交付和间接交付操作过程,以及过程中ARP协议和ARP缓存表的具体操作步骤。
3、总结当源和目的主机间跨越多个IP网络时,它们的IP分组在交付过程中源和目的IP地址的变化情况,以及封装该分组的数据帧的源和目的MAC地址的变化情况。
实验2:
排错工具-Ping和Trace
1、了解网络连通性测试的方法和工作原理
2、了解网络路径跟踪的方法和工作原理
3、掌握MTU的概念和IP分片操作
4、掌握IP分组生存时间(TTL)的含义和作用
5、掌握路由表的作用和路由查找算法
1、ICMP原理和作用
2、Windows系统中的Ping命令及其各种选项
3、Windows中的Tracert命令及其各种选项
“PING”这个名字源于声纳定位操作。
PING程序的目的是测试另一台主机是否可达,它发送ICMP回送请求报文给被测主机,并等待返回的ICMP回送应答或差错报告报文。
ICMP协议(RFC792)是IP协议的辅助协议,提供差错报告和查询机制。
一台主机的可达性不仅取决于IP层是否可达,还取决于使用的高层协议及端口号。
仅当被测主机可达时,PING程序才能收到返回的ICMP回送应答报文,并能测出到该主机的往返时间。
如果被测主机不可达,PING程序会收到一些ICMP差错报告报文,甚至收不到任何返回信息。
根据ICMP差错报告报文的类型可粗略判定主机不可达的原因。
不同的物理网络具有不同的最大传送单元(MTU)值,因此可能需要对IP分组进行分片操作使其能够通过这些物理网络。
当IP分组被分片时,需要修改分组头中的标志、分片偏移和总长度值,其余各字段将被复制到所有分片中。
已经分片的IP分组在遇到具有更小MTU的网络时还会被再次分片。
TTL字段是由发送端初始设置在IP分组首部中的一个8bit字段,不同操作系统上的不同应用程序指定的TTL初始值不同。
路由器在转发每个IP分组时需要将该分组的TTL值减1或减去该分组在路由器中停留的秒数。
由于大多数路由器转发IP分组的时延都小于1秒钟,因此TTL最终成为一个跳站计数器,即分组每经过一台路由器其TTL值被减1。
TTL字段的目的是为了防止分组在选路时被无休止的转发。
当路由器收到一份需转发的IP分组时,如果该分组的TTL值为1,路由器则丢弃该分组,并向分组源发送一份ICMP的TTL超时报文。
TRACE程序使用IP分组首部的TTL字段(生存时间)和ICMP报文,让使用者可以看到IP分组从一台主机传到另一台主机所经过的路由。
TRACE程序首先发送一份TTL值为1的IP分组给目的主机,处理该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报文是超时还是回送应答来判断何时结束。
实验拓扑中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、依次启动VMwareWorkstation中TCPIP组内的虚拟机PC2和PC3。
(注:
不开启PC4)
2、启动DynamipsServer,然后运行,在Dynagen窗口中提示符“=>
”后依次输入以下命令启动路由器R1、R2、R3和R4:
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<
PC3的IP地址>
7、在PC2上使用-n和-l选项pingPC3的IP地址,记录ping回应信息。
ping-n1-l1500<
8、在PC2上使用-n、-l和-f选项pingPC3的IP地址,记录ping回应信息。
ping-n1-l1500-f<
9、在PC2上ping未开机的PC4,记录ping回应信息。
ping-n1192.168.22.4
10、在PC2上ping10.1.1.1,记录ping回应信息。
ping-n110.1.1.1
11、在Dynagen窗口中提示符“=>
”后依次输入以下命令重新捕获子网A和子网B的分组:
captureR1f0/0atrace.cap
captureR2f0/0btrace.cap
12、在PC2上tracePC3的IP地址,记录trace回应信息。
tracert<
”后依次输入以下命令停止捕获子网A和子网B中的分组:
14、用Wireshark软件查看并分析捕获的分组文件(aping.cap、bping.cap、atrace.cap、btrace.cap)中的ping和trace通信分组,查看过滤条件为“ip.proto==1”(在Wireshark主窗口界面“过滤工具栏”的“Filter:
(1)在Dynagen窗口中提示符“=>
(2)依次关闭PC2和PC3,再关闭VMware窗口;
(3)运行所在目录下