如下图,思考一下同一局域网的两个人通信时,会经过哪些协议解析
同网段arp通信.png
讲解完ARP基础时,我们再回头讲解通信过程

ARP(Address Resolution Protocol)即地址解析协议,可以理解为将IP地址解析为物理地址(MAC)的过程,对应RFC826。
物理层寻址是根据物理地址(MAC),网络层传下来包到物理层时,需要找到下一跳的MAC地址,报文才能封装完成发送出去,如果查询MAC表有对应的MAC,直接封装报文发送,如果表中没有则需要发送arp请求报文解析MAC地址。
对于ARP协议属于哪一层的协议,一直比较有争议,有的说arp协议封装在以太网头之上和IP同属于IP层,但实际上arp协议层并未用到ip地址寻址,用抓包软件wireshark根据ip地址也无法过滤出arp报文,所以有的说arp协议属于二层。记得第一份工作的时候,我的导师对协议非常较真,他和我说arp可以说是2.5层协议(突然回忆起大学的老师和刚工作时的导师对协议基础都是理解特别深刻的人,所以才有我如今对协议的理解)。话说回来这只是一个对协议更深的理解,对新手来说arp协议属于哪层其实不重要,只要明白其原理。下面是抓的arp报文
arp报文.jpg

2012041215590890.jpg
pc1 ping pc2通信过程如下
1.pc1 根据pc2的ip地址查询路由表,发现是同网段局域网
2.pc1 查询arp表,如果有pc2对应的mac地址,则直接发送icmp请求。如果没有pc2的mac的地址,发送arp请求
3.pc1 收到arp回复,填入arp表。发送icmp请求报文
4.pc2 收到请求报文,进行回复


波利维亚的天堂
0 声望0 粉丝