ARP协议-地址解析的过程

关于ARP协议,大部分人只是简单地知道:这个协议是通过IP地址来获取MAC地址的

但是,这个真的有这么简单吗???它是如何获取MAC地址的呢???


(ARP地址解析协议,   RARP反向地址解析协议),我们习惯上把它们认为是链路层的协议,实际上,从分层的角度来看,更准确的说是,(应该是一种介于网络IP层与链路层之间的一种协议)


我们知道在ISO/OSI模型中,数据在传输的过程中,有不断封装过程,到了链路层的话(以太网传输),在以太网的帧格式中会出现目的主机的MAC地址,但是我们从一开始就只知道目的主机的IP地址,所以这里用到了ARP协议

大致过程如下:

ARP协议-地址解析的过程_第1张图片



源主机先在自己的ARP缓冲区中寻找映射,如果有(直接填充于以太网帧中),如果没有,通过路由广播请求,这时一些联网的主机就会收到这个请求,并将这个请求传回网络层,对比IP地址,检验是否可以接受,如果不行,则直接丢失这个信息,如果可以那么回复ARP请求,并且将源主机的MAC地址加入到目的ARP缓冲区中,形成映射,源主机接受到请求后,将目的的MAC地址加入到ARP缓冲区,也形成映射,并将mac地址传输至连接层。此时转化完成


你可能感兴趣的:(网络编程)