实验三:分析ARP及IP协议

一、实验目的:

1.学会使用PacketTracer进行包跟踪及数据包协议格式分析。

2.理解ARP工作机制,熟悉ARP协议格式。

3.熟悉典型的IP协议格式。

4.理解IP分段机制。

 

二、实验环境:

 Cisco Packet Tracer

 

三、实验内容:

1、PacketTracer5.3或以上版本)打开文件31_ARP&IP_Testing.pkt.pkt。注意:Router1Eth1/0MTU1420Byte,其余均为1500Byte

2、分析ARP的工作原理。

1)在Realtime模式下,尽量清除所有设备(PC机及路由器)中的ARP缓存信息,对于不能清除(有些路由器中的ARP缓存信息不能清除)的记录下相关缓存信息。

注:PC机中查看ARP缓存的命令为arp –a,清除ARP缓存的命令为arp –d。

 实验三:分析ARP及IP协议_第1张图片

路由器中查看ARP缓存的命令为Router#show arp,清除的命令为Router#clear arp-cache。

R1:

 实验三:分析ARP及IP协议_第2张图片

R2:

 实验三:分析ARP及IP协议_第3张图片

(2)在simulation模式下,由PC(1.10)PC(1.20)发送一个Ping包,观察包(ICMPARP)的传递过程,同时注意相关PC机、路由器的ARP缓存变化情况,记录下相关信息,并对其中的ARP包进行协议格式分析。注意:在Filter中同时选中ICMPARP

答:a、首先,选择在simulation模式下,选择ICMPARP

 实验三:分析ARP及IP协议_第4张图片

B、查看pc机的ARP

PC1.10

 

PC1.20

 

路由器:

 

注:路由器的第一条ARP地址格式,是PC1.10的默认网关的地址。

C、发送数据包后,路由器ARP变换如图:

 实验三:分析ARP及IP协议_第5张图片

数据包传送的路径:数据包先到达交换机,再到达pc1.20;数据包也会传送到路由器,但发送了错误。

 实验三:分析ARP及IP协议_第6张图片

数据包传送的路径:数据包返回时,只经过交换机,就直接到达pc1.10,并不会再传送到路由器。

 实验三:分析ARP及IP协议_第7张图片

实验三:分析ARP及IP协议_第8张图片

 

(3)重复(2)一次,观察结果有何不同,分析原因。

答:第二次发送数据包,数据包到达交换机后直接到达pc1.20,不再传送到路由器了。

 实验三:分析ARP及IP协议_第9张图片

原因:交换机已经把mac地址记录在它的内存中了。

 实验三:分析ARP及IP协议_第10张图片

 

(4)在simulation模式下,由PC(1.10)PC(3.11)发送一个Ping包,观察包的传递过程,同时注意相关PC机、路由器的ARP缓存变化情况,记录下相关信息,并对其中的ARP包进行协议格式分析。

答:a、数据包到达路由器后,再次点击传送,数据包直接从路由器返回交换机:

           实验三:分析ARP及IP协议_第11张图片

实验三:分析ARP及IP协议_第12张图片  

B、路由器的ARP中多了一个ARP记录:数据包第一次返回pc1.10,没有传送到pc3.11.

 

达到Pc1.10后,其ARP增加了一条记录:

 


 

(5)重复(4)一次,观察结果有何不同,分析原因。

答:重复(4),数据包能够通过路由器,到达交换机1,并且直接到达pc3.11.

        实验三:分析ARP及IP协议_第13张图片

实验三:分析ARP及IP协议_第14张图片

此时路由器的ARP列表中又新增了一条ARP记录:增加的这个记录的格式是pc3.11的默认网关。

 实验三:分析ARP及IP协议_第15张图片

Pc3.11ARP的地址协议是它的默认网关的IP

 


实验三:分析ARP及IP协议_第16张图片 

 

(6)试分析此时,由PC(1.20)PC(12.12)发送一个Ping包的处理过程,并验证之。

答:a、数据包从pc1.20发送,到达路由器R1,直接返回pc1.20.此时pc1.20ARP中保存了它的默认网关。

 

C、点击再次发送数据包,数据包通过了路由器R1,并且到达路由器R2,最后数据包从R2返回:

 实验三:分析ARP及IP协议_第17张图片

R2ARp中,增加一条ARP记录,是pc12.12的默认网关

 

D、把数据包再次从pc1.20发送,数据包能够通过路由器R1R2,到达pc12.12。并且能够原谅返回pc1.20

 实验三:分析ARP及IP协议_第18张图片

 

(7)总结ARP工作机器,包括什么时候启动ARPAPR高速缓存更新机制、ARP数据包协议格式。

答:总结:pc机中都有自己的ARP缓冲区,用来表示IP地址和mac地址的对应关系,当主机发送数据包到目的主机时,就启动ARP协议,它首先会查看自己的ARP列表中,是否有目的主机ARP对应的IP地址,若有,直接将数据包发送出去,若无,向它所在的网段发起一个ARP请求的广播包,查询能够到达该目的主机的对应MAC地址。

ARP高速缓存更新机制:主机发送数据包后,此网段的主机就会检查数据包 中的目的IP地址是否和自己的IP地址一致,如果不想提就忽略此数据包,若同,则该主机就把源主机的mac地址和IP地址添加到自己的ARp列表中;若ARP列表中已经存在IP地址,就直接覆盖,已完成ARP的更新。

ARP数据包协议格式:路由器ARP列表中,包含三个信息:一个是主机的IP地址,一个是主机所在的物理地址,另一个是接口名称。IP地址包括源主机的IP地址和主机的默认网关,该主机所在的网段。

 

3、IP协议格式分析:在simulation模式下,PC(1.10)PC(3.11)发送一个Ping包(开始几次有可能失败,试分析原因),从其中随机取几个包,分析该包的MAC首部及IP首部信息,特别注意该包进入该设备及离开该设备时相关信息的变化情况注意:在Filter中仅选中ICMP或者仅选中IP

答:ping包在到达R1后,包的mac首部和IP首部信息如下:

 实验三:分析ARP及IP协议_第19张图片

Ping包到达pc3.11后,再次返回R1后,包的mac地址信息没有变化,但是ip地址首部信息变化了,原来的源IP地址和目的IP地址都反过来了,如图:

 实验三:分析ARP及IP协议_第20张图片

IP地址和目的IP不变,分别是pc1.10pc3.11IP地址。但Mac地址是变化的 ,因为数据包经过了不同的设备。

 

4IP分段机制分析。

1)在Realtime模式下,PC(1.10)PC(12.12)发送一个Ping包。(试分析此步骤的作用)

答:确保pc1.10ping包能通过pc12.12.

 

(2)在simulation模式下,PC(1.10)PC(12.12)发送一个自定义Ping包(长度为2000字节),跟踪数据包的流动情况,特别注意:a、该包在PC(1.10)出来时是否进行了分段,b该包在Router1出来时是否进行了分段,c该包在Router2出来时是否进行了重组,d该包到达PC(12.12)后是否进行了重组,回复的Ping命令包是否在PC(12.12)处进行了分段,e回复的Ping命令包是否在Router2出来时进行了分段。在每一处发生了分段的地方,观察包中与分段有关的几个字段的信息(数据包长度、标识号、标志、偏移值),并记录下必要的信息。

答:a、该包在PC(1.10)出来时没有进行了分段:

       实验三:分析ARP及IP协议_第21张图片

实验三:分析ARP及IP协议_第22张图片      

B、该包在Router1出来时没有进行了分段:

 实验三:分析ARP及IP协议_第23张图片

 

 

 

 

 

C、该包在Router2出来时没有进行了重组

 实验三:分析ARP及IP协议_第24张图片

 

D、该包到达PC(12.12)后是没有进行了重组,回复的Ping命令包没有PC(12.12)处进行了分段

e回复的Ping命令包没有Router2出来时进行了分段

 

(3)总结IP分段的条件与方法。

答:IP分段是网络上传输ip报文的一种技术手段。Ip协议在传输数据包时,将数据报文分为若干分段进行传输,并在目标系统中进行重组。每一种物流网络都会规定链路层数据帧的最大长度,称为链路层MTU,ip协议在传输数据包时,若ip数据报加上数据帧头部长度大于MTU,则将数据报文分为若干分片进行传输,并在目标系统中进行重组。

4.测试TTL的作用。

1)在Realtime模式下,PC(1.10)PC(12.12)发送一个Ping包。

 

 

2)在simulation模式下,PC(1.10)PC(12.12)发送一个自定义Ping包(长度为32字节,TTL的值为1),跟踪数据包的流动情况,观察TTL的值的变化情况,并记录下必要的信息。

答:数据包只能到的R1,然后TTL值由1减1,此时TTL的值为0,所有R1将其丢弃。

 实验三:分析ARP及IP协议_第25张图片

(4)在simulation模式下,PC(1.10)PC(12.12)发送一个自定义Ping包(长度为32字节,TTL的值为2),跟踪数据包的流动情况,观察TTL的值的变化情况,并记录下必要的信息。

答:数据包可以到达R2,到达R1后TTL由2减1,变成1,然后到达R2后TTL的值再减1,此时TTL的值为0,所以R2将其丢弃。

数据包到达R1之前:

 

数据包到达R2:

 

 

(5)在simulation模式下,PC(1.10)PC(12.12)发送一个自定义Ping包(长度为32字节,TTL的值为3或更大),跟踪数据包的流动情况,观察TTL的值的变化情况,并记录下必要的信息。

答:TTL的值为6的时候,数据包可以到达pc12.12,TTL的值每经过一个路由器就减1,然后由PC12.12返回到PC1.10.在返回过程中,TTL的值由128,每经过一个路由器就减1.

(6)总结TTL的变化规律及其作用。

答;TTL表示一个ip数据包能够经过的最大的路由器跳数,TTL字段是由ip数据发送端初设置,每个处理该数据包的路由器都需要将其TTL值减1,当路由器接收到一个TTL的值为0的数据包,路由器会将其丢弃。TTL的作用就是为了防止1个ip数据包网络中循环流动。

5.进行其它你认为必要的测试。

答: 自定义数据包最大值只能填写200,所以测试一下TTL为最大值时,是否会出现某些被路由器求其的情况,测试结果,当TTL为最大值时不会出现丢包的情况。

(四)、实验后应能回答的问题

1.关于ARP协议:

(1)ARP请求数据包内容是什么,ARP应答数据包内容是什么?

:请求内容是主机的ip地址和物理地址,以及目的主机的ip地址和物理地址;应答内容是:将网络层地址解析为数据链路层的mac地址,并且把经过的ARO地址记录下来。

 

(2) ARP协议的工作方式是怎样的?比如:谁发出ARP请求,谁回复ARP应答。

答:当主机发送数据包时,就启用ARP协议若目的主机在同意网段,则可以直接通信;若不在同遗忘段,则不能直接通信,需要保存一条能够通往目的主机的MAC地址。在同一网段的主机,若数据包的目的地址不是它,则他会显示拒绝接受数据包的错误请求。

 

(3) 什么时候会调用ARP?调用ARP时是希望获取谁的MAC地址?比如:在不考虑高速缓存影响的情况下,PC(1.10)访问PC(1.30)时,会调用ARP吗,若调用ARP是用来获得谁的MAC地址;PC(1.10)访问PC(3.22)呢;PC(1.10)访问PC(12.12)呢。

答:当源主机发送数据包请求时就启用ARP协议;希望获取的是目的主机的MAC地址;pc1.10访问pc1.30时,会调用ARP,其希望来获取PC1.30的MAC地址。其他访问类似。

 

2.关于ARP高速缓存:

(1)ARP高速缓存中每条记录包含哪些信息?

答:包含了源主机的IP地址、源主机所在的网段、源主机的默认网关、目的主机的ip地址,以及目的主机所在的网段和默认网关。

 

(2) 什么时候会向ARP高速缓存中添加记录,添加的记录是什么?

答:主机发送数据包后,此网段的主机就会检查数据包中的目的ip地址一致,若干不相同就忽略次数据包;若是相同,则该主机就把源主机的mac地址和ip地址添加到自己的ARP列表中;若是ARP列表中已经存在该ip地址,就直接覆盖,以完成ARP的更新。

 

(3) ARP高速缓存可以起到什么样的作用,是如何起作用的?

答:pc机中都有自己的ARP缓冲区,用来表示ip地址和mac地址的对应关系,当主机发送数据包到目的主机时,就启动ARP协议,它首先将书记包发送出去;若没有,就向它所在的网段发起一个ARP请求的广播包,查询能够到达该目的主机对应的mac地址。

 

3.关于IP协议:

(1)IP数据包中MAC首部及IP首部的格式是怎样的,相关信息是如何获得的?

答:mac首部格式:000n(n表示不同数字),ip首部是占4位,可表示的最大十进制数值是15.主要是通过主机所在的局域网决定的。

 

(2) PC(1.10)用IP包传输信息到PC(12.12),整个过程中MAC首部及IP首部中哪些信息会发生变化,是如何发生变化的?

答:从pc1.10发送给pc12.12过程中,mac首部不断发生变,因为数据包要经过不同的网络设备,而每个网络设备的物流地址都是不相同的。Ip首部不会发生变化,因为数据包的ip地址都是pc12.12的IP地址。

 

4.关于IP分片与重组:

(1)什么条件下,在什么地方会发生IP分片?比如:当PC(1.10)向PC(12.12)发送一个长度为2000字节(包括IP首部,但不包括MAC首部)时,在哪些地方会发生分片;若是PC(12.12)向PC(1.10)发送数据呢。

答:数据链路层具有最大传输单MTU这个特性,它限制了数据帧的最大长度,如果ip层有数据包要传送,而且数据包的长度超过MTU,那么ip层就要对数据包进行分片,每一个片的长度都小于或等于MTU;分片后的ip数据包,只有到的目的直接才进行重新组装。

 

(3) 一个IP数据包如何进行分片?比如:分片时哪些信息会被继承,哪些信息会发生改变;如何识别同一个IP数据包的多个分片;如何对同一个IP数据包的多个分片进行排序。

答:对于发送端发送的每份ip数据包来说,其标识符字段都包含一个唯一值,该值在数据包分片时被复制到每个片中。除了最后一片外,其他每个数据包的片都要把该片的自己置位1.分片时,除最后一片外,其他每一片中的数据部分,必须是8字节的整数倍。

你可能感兴趣的:(实验三:分析ARP及IP协议)