概述
根据OSI模型的要求,为了跨越不同类型物理网络进行分组交换,需要网络层软件使用的地址和底层网络硬件使用的地址之间进行转换。网络接口硬件通常有一个主要的硬件地址(如MAC地址),由硬件交换的帧需要使用正确的硬件地址定位到正确的接口。但Internet网络需要使用自己的IP地址。主机之间的通信需要跨越多层网络,仅知道IP地址是不够的,还需要知道主机在网络中的有效硬件地址。在TCP/IP中,地址解析协议(Address Resolution Protocol,ARP)提供了IP地址到硬件地址(主要是MAC地址)的动态映射,可以根据IP地址获取到MAC地址。
ARP提供的从网络层地址到相关硬件地址的映射是动态的,它会自动执行并随时间变化,这意味着当网络发生改变时,ARP可以在一定延时后继续正常运作,不需要管理员重新配置。
ARP仅用于IPv4,IPv6使用邻居发现协议(Neighbor Discovery Protocol,NDP),它被合入ICMPv6。
工作过程
ARP的工作过程如图所示:
ARP工作在正常模式下,仅适用于广播网络,以使链路层能将一个消息(ARP帧)交付到它连接的所有网络设备,这是ARP运行的一个重要要求。在