地址解析协议(arp)是Internet协议(IP) [ RFC826](特别是IPv4 )使用的协议,用于将IP网络地址映射到数据链路协议使用的硬件地址。
该协议在网络层下面作为OSI网络和OSI链路层之间接口的一部分运行。在通过以太网使用IPv4时使用。
ARP地址解析是指在网络中查找计算机地址的过程。使用协议“解析”地址.
在该协议中,一条信息由在本地计算机上执行的客户端进程发送到在远程计算机上执行的服务器进程。
服务器接收的信息允许服务器唯一地标识需要其地址的网络系统,从而提供所需的地址。当客户端从服务器收到包含所需地址的响应时,地址解析过程即告完成。
一个以太网的网络使用,其识别由所述发送的每个帧的源和目的地两个硬件地址的以太网。
目的地地址(全1)也可以标识广播 数据包(发送给所有连接的计算机)。参照定义以太网的标准,该硬件地址也称为媒体访问控制(MAC)地址。每台计算机的 网络接口卡当工厂制造卡(存储在PROM中)时,会被分配一个全局唯一的6字节链接地址。
这是接口使用的普通链接源地址。计算机发送使用自己的硬件源链接地址创建的所有数据包,并接收与目标字段中的相同硬件地址或一个(或多个)预选广播/多播地址匹配的所有数据包。
以太网地址是链路层地址,并取决于所使用的接口卡。IP在网络层运行,并且与要使用的各个节点的链接地址无关,因此地址解析协议(arp)用于在两种类型的地址之间进行转换。
arp客户端和服务器进程在使用 IP over Ethernet的所有计算机上运行。这些过程通常作为驱动网络接口卡的软件驱动程序的一部分来实现。
arp协议可以发送四种类型的arp消息。这些由arp消息的“ operation”字段中的四个值标识。消息类型为:
- ARP请求(广播,请求者的源IP地址)
- ARP答复(单播到请求者,目标)
ARP消息格式如下所示:
为了减少地址解析请求的数量,客户端通常会在(短)时间段内缓存已解析的地址。
但是arp高速缓存的大小是有限的,如果允许不加检查地增长,则对于不使用的计算机将充满不完整和过时的条目。
因此,arp缓存会定期清除所有条目。这将删除未使用的条目并释放缓存中的空间。它还消除了所有与当前未运行的计算机联系的失败尝试。
如果主机更改了它正在使用的MAC地址,则删除缓存条目并发送新的arp消息以建立新的关联时,其他主机可以检测到该地址。
使用gratuitous arp 无故 arp(例如,当使用IP地址启用新的NIC接口时触发)可更快速地更新此信息。