2024年4月24日发(作者:)

1.掌握 ARP 协议的报文格式

2.掌握 ARP 协议的工作原理

3.理解 ARP 高速缓存的作用

4.掌握 ARP 请求和应答的实现方法

5.掌握 ARP 缓存表的维护过程

2 学时

该实验采用网络结构二

物理地址是节点的地址, 由它所在的局域网或者广域网定义。 物理地址包含在数据

链 路层的帧中。物理地址是最低一级的地址。

物理地址的长度和格式是可变的, 取决于具体的网络。 以太网使用写在网络接口卡

(NIC)上的 6 字节的标识作为物理地址。

物理地址可以是单播地址 (一个接收者) 、多播地址 (一组接收者) 或者广播地址 (

由 网络中的所有主机接收) 。有些网络不支持多播或者广播地址, 当需要把帧发送给

一组主 机或者所有主机时,多播地址或者广播地址就需要用单播地址来摹拟。

在互联网的环境中仅使用物理地址是不合适的,因为不同网络可以使用不同的地址

格式。 因此, 需要一种通用的编址系统, 用来惟一地标识每一台主机, 而不管底层使用

什么样的物理网络。

逻辑地址就是为此目的而设计的。 目前 Internet 上的逻辑地址是 32 位地址, 通常

称为 IP 地址,可以用来标识连接在 Internet 上的每一台主机。在 Internet 上没有两

个主机具有同样的 IP 地址。

逻辑地址可以是单播地址、 多播地址和广播地址。 其中广播地址有一些局限性。 在

实验三中将详细介绍这三种类型的地址。

Internet 是由各种各样的物理网络通过使用诸如路由器之类的设备连接在一起组

成的。 主机发送一个数据包到另一台主机时可能要经过多种不同的物理网络。 主机和路

由器都是在网络层通过逻辑地址来识别的,这个地址是在全世界范围内是惟一的。然而,

数据包是通过物理网络传递的。在物理网络中,主机和路由器通过其物理地址来识别的,

其范围限于本地网络中。 物理地址和逻辑地址是两种不同的标识符。 这就意味着将一个

数据包传递到一个主机或者路由器需要进行两级寻址: 逻辑地址和物理地址。 需要能将

一 个逻辑地址映射到相应的物理地址。

ARP 协议(地址解析协议)是“AddressResolution Protocol”的缩写。所谓“地

址解析”就是主机在发送帧前将目的逻辑地址转换成目的物理地址的过程。在使用

TCP/IP 协议的以太网中, ARP 协议完成将 IP 地址映射到 MAC 地址的过程。

下图为 ARP 数据报的报文格式:

图 2-1 ARP 报文格式

ARP 报文格式具有如下的一些字段:

● 硬件类型:这是 16 位字段,用来定义运行 ARP 的网络的类型。每一个局域网

基于其类型被指派给一个整数。 例如, 以太网的硬件类型是 1。ARP 可用在任何网络上。

● 协议类型:这是 16 位字段。用来定义协议的类型。例如,对IPv4 协议,这个

字段的值是 0x0800。ARP 可用于任何高层协议。

● 硬件地址长度:这是一个 8 位字段,用来定义以字节为单位的物理地址长度。

例如,以太网物理地址为 6 字节,所对应的硬件地址长度值为 6。

● 协议地址长度: 标识用于该数据包的逻辑地址的长度, 用十进制标识, 单位为

一个字节,例如, IPv4 为 4 个字节,所对应的协议地址长度值为 4。

● 操作码:这是 16 位字段,用来定义数据包的类型。已定义了两种类型:为 1

时表示 ARP 请求,为 2 时表示 ARP 应答。

● 发送端硬件地址: 这是可变长度字段, 用来定义发送端的物理地址。 对于以太

网这个字段是 6 字节长。