ARP协议属于网络层还是数据链路层?

发布网友 发布时间:2022-04-19 21:55

我来回答

2个回答

热心网友 时间:2023-09-01 09:12

很多教科书和培训教材上,都把ARP协议划分到网络层。我想主要的原因在于ARP协议属于TCP/IP协议簇,而在TCP/IP模型中,所有定义的协议至少是在网际层(或称网络层,IP层)。

但是,按照OSI的标准,当数据向下传递时,每层会加上自己的信息,各层互不干扰.这样当网络层的IP包进入链路层时,链路层该如何加这个头部的目标信息呢?它要依靠ARP协议来完成.显然如何加链路头并不是网络层的功能。而且,ARP协议工作时,并不使用IP的包头。所以也有很多人说,ARP是链路层的。
可以说,在TCP/IP模型中,ARP协议属于IP层;在OSI模型中,ARP协议属于链路层。

扩展资料:

地址解析协议,即ARP,是根据IP地址获取物理地址的一个TCP/IP协议。主机发送信息时将包含目标IP地址的ARP请求广播到网络上的所有主机,并接收返回消息,以此确定目标的物理地址;收到返回消息后将该IP地址和物理地址存入本机ARP缓存中并保留一定时间,下次请求时直接查询ARP缓存以节约资源。

地址解析协议是建立在网络中各个主机互相信任的基础上的,网络上的主机可以自主发送ARP应答消息,其他主机收到应答报文时不会检测该报文的真实性就会将其记入本机ARP缓存;由此攻击者就可以向某一主机发送伪ARP应答报文,使其发送的信息无法到达预期的主机或到达错误的主机,这就构成了一个ARP欺骗。

ARP命令可用于查询本机ARP缓存中IP地址和MAC地址的对应关系、添加或删除静态对应关系等。相关协议有RARP、代理ARP。NDP用于在IPv6中代替地址解析协议。

参考资料:百度百科-ARP

热心网友 时间:2023-09-01 09:12

很多教科书和培训教材上,都把ARP协议划分到网络层。我想主要的原因在于ARP协议属于TCP/IP协议簇,而在TCP/IP模型中,所有定义的协议至少是在网际层(或称网络层,IP层)。但是,按照OSI的标准,当数据向下传递时,每层会加上自己的信息,各层互不干扰.这样当网络层的IP包进入链路层时,链路层该如何加这个头部的目标信息呢?它要依靠ARP协议来完成.显然如何加链路头并不是网络层的功能.而且,ARP协议工作时,并不使用IP的包头。所以也有很多人说,ARP是链路层的。
可以说,在TCP/IP模型中,ARP协议属于IP层;在OSI模型中,ARP协议属于链路层。
在sniffer软件中,捕获协议数据时,如果使用IP地址是无法捕获到ARP包的,因为IP地址是ARP协议的载荷,不在包头中。但ARP协议的载荷中,也并不包含任何上层的IP数据包。所以,构造和使用ARP协议的主体理解IP地址。从这个角度考虑,将ARP协议划分到IP层也有一定道理。
总之,具体到某个协议,它到底属于哪一层,并不是那么严格。到目前为止,理解到此。
声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。
E-MAIL:11247931@qq.com