当每个设备都有自己的 IP 地址时,为什么我们需要 ARP?

网络工程 ip IPv4 MAC地址 IP地址 ARP
2022-02-18 06:34:11

我不太了解地址解析协议(ARP)。当每个设备都有自己的 IP 地址时,为什么我们需要 ARP?

2个回答

需要 ARP(用于 IPv4)和 NDP(用于 IPv6)来获取仅知道第 3 层 IP 地址的目标主机的第 2 层 MAC 地址。二层地址和三层地址之间没有内在的关系,流量是通过二层地址在本地二层局域网上传递的。

以太网和 IP 是两个完全不相关的协议,由不同的人创建,尽管大约在同一时间,出于不同的原因,它们由不同的标准组织维护。(见这个答案。)

当你想向它发送东西时,你需要一些方法来发现你的目的地的 MAC 地址。

每个设备都有一个称为 MAC 地址的第 2 层地址和称为 IP 地址的第 3 层地址。

每当您制作数据包时,您都需要输入目标 MAC 地址和目标 IP 地址的值。这是强制性的。

您的设备知道您通过显式命令提供的目标 IP 地址。例如ping 1.2.3.4

所以我们留下了目标MAC地址。

现在,如果源 IP 地址和目标 IP 地址在同一网络中,则目标 MAC 将是目标主机的 MAC 地址。

如果它们在不同的网络中,您需要在目标 MAC 地址字段中输入“网关”的 MAC 地址。

无论哪种情况,您的设备都需要某种机制来找出所需的目标 MAC 地址。

该机制称为 ARP。

它基本上说:I want the MAC address of the device who has IP address of x.x.x.x