网络层ARP和RARP协议

Posted huangjiaping

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了网络层ARP和RARP协议相关的知识,希望对你有一定的参考价值。

 

 

ARP协议的概念

ARP(地址解析协议 Address Resolution Protocol)是获取物理地址的一个TCP/IP协议。某节点的IP地址的ARP请求被广播到网络上后,这个节点会收到确认其物理地址的应答,这样的数据包才能被传送出去。RARP(逆向ARP)经常在无盘工作站上使用,以获得它的逻辑IP地址。

在硬件层次上进行的数据帧交换必须有正确的接口地址(即硬件地址),但是,TCP/IP有自己的地址:32 bit的IP地址,知道主机的IP地址并不能让内核(如以太网驱动程序)发送一帧数据给主机,内核必须知道目的端的硬件地址才能发送数据,ARP的功能是在32 bit的IP地址和采用不同网络技术的硬件地址之间提供动态映射。从逻辑Internet地址到对应的物理硬件地址需要进行翻译,这就是ARP的功能。

ARP有两个方法来实现将一个已知的IP地址映射到MAC地址。一是检查ARP高速缓存表;二是若地址不包含在表中,就向网上发广播来寻找。具有该IP地址的目的站用其MAC地址作为响应。ARP只能用于具有广播能力的网络。

 

ARP协议的四种应用

技术图片

(1)同一个网络中的两台主机之间需要通信。

(2)一台主机与另一个网络中的一台主机之间通信,包首先被发送到对应的路由器上。

(3)一个路由器与另一个网络中的一台主机之间通信,包首先被发送到对应的路由器上。

(4)路由器将数据包发给同网络的主机。

 

ARP报文

技术图片

硬件类型:指明了发送方想知道的硬件接口类型,以太网的值为1;

协议类型:指明了发送方提供的高层协议类型,IP为0800(16进制);

硬件地址长度和协议长度:指明了硬件地址和高层协议地址的长度,这样ARP报文就可以在任意硬件和任意协议的网络中使用;

操作类型:用来表示这个报文的类型,ARP请求为1,ARP响应为2,RARP请求为3,RARP响应为4;

发送方硬件地址(0-5字节):源主机硬件地址;

发送方IP地址(0-3字节):源主机IP地址;

目标硬件地址(0-5字节):目的主机硬件地址;

目标IP地址(0-3字节):目的主机的IP地址。

 

ARP帧格式

ARP协议的数据是要被封装在帧中的,帧的格式如下:

技术图片

 

ARP协议数据包封装在帧中时,ARP帧格式:

技术图片

对应ARP请求包来说,目的端的硬件地址字段无须填充,其他字段都需要填充。对于ARP回复包来说,所有字段都需要填充。需要注意的是APR请求包是广播的,但是ARP应答帧是单播的。

 

RARP协议的概念

技术图片

RARP协议(反向地址转换协议Reverse Address Resolution Protocol),将局域网中某个主机的物理地址转换为IP地址。广泛用于获取无盘工作站的IP地址。RARP允许局域网的物理机器从网关服务器的ARP表或者缓存上请求其 IP 地址。网络管理员在局域网网关路由器里创建一个表以映射物理地址(MAC)和与其对应的IP地址。当设置一台新的机器时,其RARP 客户机程序需要向路由器上的 RARP 服务器请求相应的 IP 地址。假设在路由表中已经设置了一个记录,RARP服务器将会返回 IP 地址给机器,此机器就会存储起来以便日后使用。RARP 可以使用于以太网、光纤分布式数据接口及令牌环LAN 。

以上是关于网络层ARP和RARP协议的主要内容,如果未能解决你的问题,请参考以下文章

计算机网络详解网络层ARP和RARP

地址解析协议ARP与逆地址解析协议RARP

网络七层协议之部分协议详解

第二章: 链路层

02-链路层

arp和rarp协议