发布网友 发布时间:2022-04-22 09:28
共2个回答
热心网友 时间:2022-04-20 09:50
每个网络终端在运行的时候,都会有个arp表,在这个表里面有IP地址和mac地址的对应关系。在网络底层数据交换过程中,每一个终端都会有一个固定的mac地址,这个地址是全世界唯一的,出厂的时候就固化到硬件里面了。网络访问的时候实际上是通过这个唯一的地址来确定数据包的流向的。所以,任何一次数据传输,都需要先访问arp表,从而获得对应的mac地址,才知道传输的对象在哪里。
热心网友 时间:2022-04-20 11:08
在以太网协议中规定,同一局域网中的一台主机要和另一台主机进行直接通信,必须要知道目标主机的MAC地址。而在TCP/IP协议栈中,网络层和传输层只关心目标主机的IP地址。这就导致在以太网中使用IP协议时,数据链路层的以太网协议接到上层IP协议提供的数据中,只包含目的主机的IP地址。于是需要一种方法,根据目的主机的IP地址,获得其MAC地址。这就是ARP协议要做的事情。
另外,当发送主机和目的主机不在同一个局域网中时,即便知道目的主机的MAC地址,两者也不能直接通信,必须经过路由转发才可以。所以此时,发送主机通过ARP协议获得的将不是目的主机的真实MAC地址,而是一台可以通往局域网外的路由器的某个端口的MAC地址。于是此后发送主机发往目的主机的所有帧,都将发往该路由器,通过它向外发送。这种情况称为ARP代理。不是只有局域网才用arp协议。