在OSI模型中ARP协议属于链路层;而在TCP/IP模型中,ARP协议属于网络层。 这里还是借鉴一下 从数据封装的角度来说,ARP和RARP应该都是属于网络层的协议,一般通过抓包工具都可以抓到ARP的数据包,可以看到ARP的信息是封装在IP报头之后。但是在有的书上把它纳入数据链路层,实际上发送一个数据包到未知目的MAC地址的情况,数据包完成网络层的封装,封装到数据链路层,因为不知道目的MAC地址,就会触发ARP请求,请求目的IP地址的MAC地址,所以很多书才会把ARP协议当作是数据链路层的协议,但我个人认为ARP和RARP还是属于网络层的协议的。
2. ARP协议工作在数据链路层,所以它没有端口的概念,即ARP不是像DNS、DHCP那种C/S模式,它就是一个单纯的数据链路层的广播。