地址解析协议ARP

       地址解析协议ARP(Address Resolution Protocal),用途是从网络层使用的IP地址,解析出在数据链路层使用的硬件地址。解决同一局域网内的主机或路由器的IP地址和硬件地址的映射问题。

       每一台主机都设有一个ARP高速缓存(ARP cache),里面有本局域网上的各主机和路由器的IP地址到硬件地址的映射表,这些都是该主机目前知道的一些地址。并且这个映射表会经常更新(新增或超时删除)。

       以下通过例子说明ARP协议是如何工作的:

      当主机A要向本局域网上的某台主机B发送IP数据时,就先在其ARP高速缓存中查看有无主机B的IP地址。如有,就在ARP高速缓存中查出其对应的硬件地址,再把这个硬件地址写入MAC帧,然后通过局域网把该MAC帧发往此硬件地址。

      也有可能查不到主机B的IP地址的项目。这可能是主机B刚入网,也可能是主机A刚刚加电,其高速缓存还是空的。在这种情况下,主机A就自动运行ARP,然后按此步骤找出主机B的硬件地址。

       (1)ARP进程在本局域网上广播发送一个ARP请求分组。 ARP请求分组的主要内容是:“我的IP地址是...,硬件地址是...。我想知道IP地址为...的主机的硬件地址。”

       (2)在本局域网上的所有主机上运行的ARP进程都收到此ARP请求分组。

       (3)主机B收下ARP请求,将主机A的这一地址映射写入主机B自己的高速缓存中,发送ARP响应分组(单播发送),写入自己的硬件地址。本局域网内其余主机不与理睬。

       (4)主机A收到主机B的ARP响应分组后,就在其ARP高速缓存中写入主机B的IP地址到硬件地址的映射。

timg.jpg

       ARP对保存在高速缓存中的每一个映射都设置生存时间。凡超过生存时间的项目就从高速缓存中删除掉。

猜你喜欢

转载自blog.csdn.net/weixin_42061048/article/details/80171029