RARP是什么协议,RARP和ARP的联系

虽然ARP和RARP都属于网络层协议,但它们是为了解决链路层的帧转发问题,ARP的功能是将IP解析为MAC地址,而RARP则相反。

ARP地址解析协议(Address Resolution Protocol )的基本功能是可以通过目标设备的IP地址查询目标设备的MAC地址。

首先,每个主机都有一个ARP列表,用于缓存IP地址和MAC地址之间的对应关系。

源主机发送数据时,首先检查是否存在与ARP列表对应的IP地址的目的地址的主机的MAC地址,如果存在,则直接发送数据。 否则,以广播形式将ARP包发送到子网的所有主机。 此数据包包括源主机的IP地址、源主机的MAC地址和目标主机的IP地址。

本网段的所有主机接收到该ARP数据包时,首先检查数据包中的IP地址是否有自己的IP地址,如果没有,则无视该数据包。 如果是,则首先从数据包中取出源主机的IP地址和MAC地址,写入到ARP列表中,如果已经有,则进行复盖,然后将自己的MAC地址写入ARP响应数据包中,确认是自己要寻找的MAC地址

发送主机接收到ARP响应数据包后,将发送主机的IP地址和MAC地址写入ARP列表,使用该信息发送数据。 如果源主机没有收到启用ARP的包,则表示ARP查询失败。 广播发送ARP请求,并且该单播发送ARP回复。

使用ARP协议的四种典型情况

)1)源是主机,将IP数据发送到本地网络上的另一主机。 此时,通过ARP获取目标主机的MAC地址。 )2)如果源是主机,并且要将IP数据发送到其他网络上的主机,则必须使用ARP获取路由器的MAC地址,然后将数据发送到路由器。 在这种情况下)4),路由器在不同的路由器之间完成跨越网络的数据传输,而到达目标网络的路由器时)3)。 )3)源是路由器,必须将IP数据发送到本地网络上的主机。 此时,使用ARP找到目标主机的IP地址。 )4)发送方是路由器,需要将IP分组转发到另一网络的主机。 此时,ARP将找到到该主机的下一跳路由器,然后由下一个路由器执行后续操作。

(如果路由器接收到ARP,它将选择转发哪个端口并使用路由器的路由算法进行确定)

RARP RARP将MAC的物理地址转换为IP地址。 RARP也有request和reply,RARP request也是广播的,没有目标地址。 RARP reply也具有目的地地址,并且也是单播。 这两点和ARP一样。 看起来像是ARP协议的反向操作,但设计RARP server的复杂性远远超过了ARP server。 首先,虽然ARP server驻留在kernel中,但RARP server只是一个用户进程,RARP存在“先天不足”。 其次,RARP是查找与物理地址相对应的IP地址。 这表明RARP request packet包没有IP地址,当然也无法通过路由器进行传输。 因为路由器在网络层运行,并且网络层协议是IP协议,所以ARP request在ARP request packet中有一个IP地址字段,ARP request packet可以通过路由器传输

RARP还有一种机制,即每个网络都有多个RARP服务器。 我认为这可能是为了提高可靠性而使用的主从服务器的设计理念。 源地址通常只接受第一个RARP reply。 如果有多台服务器,当然也有可能发生冲突。 因此,RARP server是这样设计的。 在:接收到请求后立即发送RARP reply,没有发送延迟。其他服务器即使接收到请求,也会在发生随机发送延迟后发送reply。 此外,通常在短时间内接收到重复的第二个request,然后发送reply。 如果这些次要服务器第二次收到相同的request,则主体服务器通常会挂起。

RARP的工作方式:

1 )将源设备和目标设备的MAC地址字段设置为源MAC地址和IP地址,然后发送主机发送本地RARP广播,该广播可以到达网络上的所有设备。 此广播包声明自己的MAC地址,并请求接收此请求的RARP服务器为其分配一个IP地址。 2 )本地段上的RARP服务器收到该请求后,检查其RARP列表,查找与该MAC地址相对应的IP地址; 3 )如果存在,则RARP服务器向源主机发送回复分组,并将该IP地址提供给另一侧主机用于; 如果不存在,RARP服务器对此不作出任何回应; 4 )源主机从RARP服务器接收应答消息,使用获得的IP地址进行通信; 如果没有收到来自RARP服务器的响应消息,则初始化失败。

参考:

33559 www.cn blogs.com/Zhou sysu/p/5483900.html

3359 blog.csdn.net/stream _ star/article/details/74498593

Published by

风君子

独自遨游何稽首 揭天掀地慰生平

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注