一直很迷惑的一个问题:ARP 到底是属于哪一层的协议
在OSI体系和TCP/IP中很明确说是在第三层,即网络层。
但是仔细想想,在局域网中发送ARP报文广播,以及交换机转发数据帧,交换机是二层交换机,很明显没有经过网络层。而且网络层的功能是IP寻址、路由选择。并没有说在网络层中有什么数据帧的关系呀。
通过询问老师,以及sniff抓包分析:
不管是IP地址到MAC地址的映射,还是ARP头部的封装都是在数据链路层。ARP实现的功能都是在数据链路层。
所以个人认为ARP是很特殊。
可以这样理解,名义上ARP 是属于网络层的,但是实现的功能都是在数据链路层中实现的。