网络层IP、ARP协议分析实验报告

实验内容:网络层IP/ARP协议分析

一、实验目的

1、理解IP协议报文类型和格式,掌握IP V4 地址的编址方法。

2、分析 ARP 协议的报文格式,理解 ARP 协议的解析过程。

二、实验设备

安装有Ethereal软件和windows操作系统的微机系统

三、实验内容

1、IP协议分析实验

使用 Ping 命令在两台计算机之间发送数据报,用 Ethereal 截获数据报,分析 IP 数据报的格式,理解 IP V4 地址的编址方法,加深对 IP 协议的理解。

2、IP 数据报分片实验

 我们已经从前边的实验中看到,IP 报文要交给数据链路层封装后才能发送。理想情况下,每个 IP 报文正好能放在同一个物理帧中发送。但在实际应用中,每种网络技术所支持的最大帧长各不相同。例如:以太网的帧中最多可容纳 1500 字节的数据;FDDI帧最多可容纳 4470 字节的数据。这个上限被称为物理网络的最大传输单元(MTU,MaxiumTransfer Unit)。

TCP/IP 协议在发送 IP 数据报文时,一般选择一个合适的初始长度。当这个报文要从一个 MTU 大的子网发送到一个 MTU 小的网络时,IP 协议就把这个报文的数据部分分割成能被目的子网所容纳的较小数据分片,组成较小的报文发送。每个较小的报文被称为一个分片(Fragment)。每个分片都有一个 IP 报文头,分片后的数据报的 IP 报头和原始 IP 报头除分片偏移、MF 标志位和校验字段不同外,其他都一样。

重组是分片的逆过程,分片只有到达目的主机时才进行重组。当目的主机收到 IP 报文时,根据其片偏移和标志 MF 位判断其是否一个分片。若 MF 为 0,片偏移为 0,则表明它是一个完整的报文;否则,则表明它是一个分片。当一个报文的全部分片都到达目的主机时,IP 就根据报头中的标识符和片偏移将它们重新组成一个完整的报文交给上层协议处理。

3、ARP协议分析实验

Arp 命令简介

本次实验使用的Windows自带的Arp命令提供了显示和修改地址解析协议所使用的地址

映射表的功能。

Arp 命令的格式要求如下:

ARP -s inet_addr eth_addr [if_addr]

ARP -d inet_addr [if_addr]

ARP -a [inet_addr] [-N if_addr]

四、实验步骤

1、IP协议分析

步骤1:截获 PC1 上 ping PC2 的报文,结果保存为 IP-学号;

步骤4:任取一个数据报,分析 IP 协议的报文格式,完成下列各题:

1)分析 IP 数据报头的格式,完成表 5.2;

表 5.2   IP协议

2)查看该数据报的源 IP 地址和目的 IP 地址,他们分别是哪类地址?体会 IP 地址的编

址方法。

答:他们是C类地址;IP地址编址方法:把IP地址划分为三个类别,各种网络的差异很大,有的网络拥有很多主机,而有的网络上的主机则很少。把IP地址划分为A类、B类、C类是为了更好地满足不同用户的要求。当某个单位申请到一个IP地址时,实际上时获得了具有同样网络号的一块地址。其中具体的各个主机号则由该单位自行分配,只要做到在该单位管辖的范围内无重复的的主机号即可。

2、IP数据报分片实验

步骤1:在 PC1、PC2 两台计算机上运行 Ethereal,为了只截获和实验有关的数据报,设

置 Ethereal 的截获条件为对方主机的 IP 地址,开始截获报文;

步骤2:在 PC1 上执行如下 Ping 命令,向主机 PC2 发送 4500B 的数据报文:

Ping –l 4500 –n 2  PC2的IP地址

步骤3:停止截获报文,分析截获的报文,回答下列问题:

1)以太网的 MTU 是多少?

2)对截获的报文分析,将属于同一ICMP 请求报文的分片找出来,主机 PC1 向主机 PC2

发送的 ICMP 请求报文分成了几个分片?

3)若要让主机PC1向主机PC2发送的数据分为 3 个分片,则 Ping 命令中的报文长度应为多大?为什么?

答:1)以太网的 MTU 是1500字节;

2)主机 PC1 向主机 PC2发送的 ICMP 请求报文分成了4个分片;

3)若要让主机PC1向主机PC2发送的数据分为 3 个分片,则 Ping 命令中的报文长度应为4432字节,因为每个以太网帧中能够装载1480个字节,最后一个报文分片中还包括ICMP的报头,有8个字节,所以1480*3-8=4432(字节)。

4)将第二个 ICMP 请求报文的分片信息填入表 5.3:

表 5.3 ICMP请求报文分片信息

3ARP协议分析实验

步骤1:在 PC1、PC2 两台计算机上执行如下命令,清除 ARP 缓存:

ARP –d

步骤2:在 PC1、PC2 两台计算机上执行如下命令,查看高速缓存中的 ARP 地址映射表

的内容:

ARP –a

步骤3:在 PC1 和 PC2 上运行 Ethereal 截获报文,为了截获和实验内容有关的报文,

Ethereal 的 Captrue Filter 设置为默认方式;

步骤4:在主机 PC1 上执行 Ping 命令向 PC2 发送数据报;

步骤5:执行完毕,保存截获的报文并命名为 arp-1-学号;

步骤6:在 PC1、PC2 两台计算机上再次执行 ARP –a 命令,查看高速缓存中的 ARP 地

址映射表的内容:

1)这次看到的内容和步骤 3 的内容相同吗?结合两次看到的结果,理解 ARP 高速缓存

的作用。

答:内容结果不相同。ARP高速缓存是动态的,每当发送一个指定地点的数据报且高速缓存中不存在当前项目时,ARP便会自动添加该项目。计算机进行路由选择时首先在ARP高速缓存中查找,如果没有找到,再通过广播请求消息来查找。

2)把这次看到到的高速缓存中的 ARP 地址映射表写出来。

步骤7:重复步骤 4—5,将此结果保存为 arp-2-学号;

步骤8:打开 arp-1-学号,完成以下各题:

)在截获的报文中有几个 ARP 报文?在以太帧中,ARP 协议类型的代码值是什么?

答:在截获的报文中有6个 ARP 报文;在以太帧中,ARP 协议类型的代码值是IP(0x0800)。

)打开 arp-2-学号,比较两次截获的报文有何区别?分析其原因。

答:在arp-2中没有ARP报文,这是因为在第一次操作时,已经将路由信息存入ARP高速缓存中,不用通过ARP广播请求消息来获得路由信息。

a)  分析 arp-1 中 ARP 报文的结构,完成表 5.4。

表 5.4  ARP报文分析

 

第二篇:ARP协议分析实验报告

APR协议分析实验报告

实验目的:1熟悉ARP的工作过程

          2熟悉APR的数据包结构

实验步骤:

由于实验中出现了一些状况先在此说明:

  在这个实验中我担任的主机D的角色。

  但是在实验过程中发现主机D接收不到主机A发送的ARP请求,主机A在ping主机D的时候总是显示time out。但是主机D能收到主机C发送来的ARP请求并且在主机Cping主机D之后,主机D的APR缓存表能找到主机C的IP地址与物理地址的映射。

于是我跟使用主机A的同学换了一组电脑,由于实验只涉及主机A与主机D还有中间连接的主机B因此我们只开了三台电脑。

以下为正常情况下的实验过程及结果:

练习一

1. ARP高速缓存表有哪几项组成?

高速缓存表用项目数组来实现,每个项目包括以下字段:
状态:表示项目的状态.其值为FREE(已超时),PENDING(已发送请求但未应答)或RESOLVED(已经应答).
硬件类型,协议类型,硬件地址长度,协议地址长度:与ARP分组中的相应字段相同.
接口号:对应路由器的不同接口.
队列号:ARP使用不同的队列将等待地址解析的分组进行排队.发往同一个目的地的分组通常放在同一个队列中.
尝试:表示这个项目发送出了多少次的ARP请求.
超时:表示一个项目以秒为单位的寿命.
硬件地址:目的硬件地址,应答返回前保持为空.
协议地址:目的高层协议地址如IP地址

2主机A、B、C、D启动协议分析器,打开捕获窗口进行数据捕获并设置过滤条件(提取ARP、ICMP)

下图为设置过滤选项完成后的截图

3主机A、B、C、D在命令行下运行“arp -d”命令,清空ARP高速缓存。

4.          主机A ping 主机D(172.16.1.4)。这里我的主机D的IP地址为169.254.209.191

5.          主机A、B、C、D停止捕获数据,并立即在命令行下运行“arp -a”命令察看ARP

捕获数据后的图如下:

运行arp –a后的结果如下图:

ARP协议的报文交互过程以及ARP高速缓存表的更新过程:

?1每台主机或路由器都有一个  ARP缓存表,用来保存IP地址与MAC地址的对应关系。

2?以主机A  (192.168.1.5)向主机B  (192.168.1.1) 发送数据为例。当发送数据时,主机A会在自己的ARP缓存表中寻找是否有目标IP地址,如果找到了,也就知道了目标MAC地址,直接把目标MAC地址写入桢里面发送就可以了。

3?如果在ARP缓存表中没有找到目标IP地址,主机A就会在网络上发送一个广播 arp request, 请求包中包含了主机A的IP地址和MAC地址。

4?网络上其他主机并不响应ARP询问,直接丢弃,只有主机B接受到这个桢时,才以单播方式向主机A做出回应  arp reply, 并带上自己的IP 地址和 MAC地址,而主机B收到主

机A的请求包时,也会将主机A的IP地址与MAC地址对应关系保存在ARP缓存区。

5主机A收到主机B的回应包后,便可得知主机B的MAC地址,将其存入ARP缓存。此后主机A再向主机B发送数据时,就可以之际从缓存表中查找主机B的地址,然后直接把数据发送给主机B。

6?由于主机B在接受主机A的请求时也保存了主机A的地址信息,因此主机B要向主机A发送数据也可以之际从缓存表中查找

练习二中没有需要主机D参与的步骤。

讨论与分析:经过这个实验我更加熟悉了ARP的工作过程;同时也更加熟悉了APR的数据包结构。在实验过程中遇到的困难我们也都找到了解决的办法。

网络工程1201 俞佳玲 201226680122

其他组员余露高雯雯何文婷张静李瑶婷

相关推荐