(网际控制报文协议)ICMP、(网际组管理协议)IGMP使用IP协议(网际协议),IP协议使用ARP协议(地址解析协议)。
ARP协议的用途是:从网络层使用的IP地址,解析出在数据链路层使用的硬件地址。
1.ARP协议的要点:
网络层使用的是IP地址,但是在实际的网络链路上传送数据帧时,最终还是必须使用该网络的物理地址。
(IP地址32位,物理地址48位)
主机ARP高速缓存中存放一个从IP地址到硬件地址的映射表,这个映射表还经常动态更新。每台主机都设有一个ARP高速缓存,里面有本局域网的各主机和路由器的IP地址到硬件地址的映射表。
在本局域网中:
主机A广播————> 发送ARP请求分组(包含A的IP地址和物理地址)————> B收到ARP请求并发送ARP响应分组(将A的地址映射写入B的ARP高速缓存中)————> A收到ARP响应分组————> A写入IP地址与硬件地址的映射
(ARP是解决同一个局域网中的主机或路由器的IP地址和硬件地址的映射问题!)
注意!问:既然在网络链路上传送的帧最终是按照硬件地址找到目的主机的,为什么还要用抽象的IP地址,而不直接使用硬件地址进行通信?这样似乎可以避免使用ARP。
答:全世界存在着各种各样的网络,它们使用不同的硬件地址,要使这些异构网络能够互相通信必须进行非常复杂的硬件地址转换工作,因此由用户或用户主机来完成这些工作几乎是不可能的事。但是IP编址能把这个复杂问题解决了。连接到互联网的主机只需要各自拥有一个唯一的IP地址,它们之间的通信就像连接在同一个网络上一样方便,因此上述的调用ARP的复杂过程都是计算机软件进行的,用户看不见这种调用过程。
原文:https://www.cnblogs.com/doublejing26/p/11385571.html