ARP、RARP、Inverse ARP的工作原理与区别

1、地址解析和逆向地址解析的需求


当网络设备发送数据包时,一般情况,他需要知道本端的上层协议地址(IP地址)和硬件地址以及对端的硬件地址和上层协议地址。但是在很多情况下,这个网络设备并不能完全知道这些信息。比如刚初始化的设备有可能只知道自己的IP地址和硬件地址,当它想要发送一个数据包到某个主机时(知道IP地址),但不知道其对应设备的硬件地址。而在网络的链路层进行数据转发时,需要指定目的硬件地址,所以这就需要一定的协议来发现其对应的硬件地址。这就是ARP出现的直接原因。相反,对于某些工作站只有硬件地址而没有IP地址,此时就需要RARP来解决这个IP地址申请的问题。另外一种特殊的地址解析协议就是应用与帧中继网络中的Inverse ARP,在帧中继网络中,需要配置和维护IP地址和虚电路号DLCI的一一映射关系,为了减轻网络管理人员的工作量,借助于RARP的工作原理出现了一种特殊的地址解析协议,它用于本端IP地址和硬件地址以及对端的硬件地址已知的情况下,求解对端的IP地址。


2、ARP的工作原理


ARP用于已知本端IP地址和硬件地址以及对端IP地址的情况下,求解对端的IP地址,其工作原理简示如下:


A首先发送广播消息请求其对应目的IP地址的硬件地址是多少?同时在该广播消息中还附带自己的IP地址和硬件地址。


B接受到该广播包后,取出A的IP地址和硬件地址,将其添加到地址映射表中。同时返回单播响应,响应包中包含B的IP地址和硬件地址。


A收到响应,取出B的IP地址和硬件地址,将其添加到地址映射表中。


之后设备A和B就可以正常进行数据传送了。


3、RARP的工作原理


RARP用于已知硬件地址,而IP地址未知的情况。其工作原理简示如下:


A首先发送广播消息请求其对应目的硬件地址的IP地址是多少?同时在该广播消息中还附带自己的硬件地址。


B接受到该广播包后,返回单播响应,响应包中包含B的IP地址和硬件地址(常常还包含A的IP地址,这是为了减少ARP的解析)。


A收到响应,取出B的IP地址和硬件地址,将其添加到地址映射表中。


之后设备A和B就可以正常进行数据传送了。


4、Inverse ARP的工作原理


Inverse ARP用于帧中继网络中IP地址和虚电路号的映射关系的动态维护。其工作原理简示如下:


A首先发送单播消息请求其对应目的硬件地址的IP地址是多少?同时在该广播消息中还附带自己的IP地址。


B接受到该广播包后,修改该请求数据包,从帧中继帧头中提取硬件地址放入请求包的源硬件地址域中,即可形成A的地址映射。然后形成单播响应,响应包中包含B的IP地址以及A的IP地址和硬件地址。


A收到响应,修改响应数据包,从帧头中取出硬件地址放入响应数据包的源硬件地址域中,然后将其添加到地址映射表中。


之后设备A和B就可以正常进行数据传送了。

你可能感兴趣的:(ARP、RARP、Inverse ARP的工作原理与区别)