ARP广播查询数据包必须包含目标节点的MAC地址吗?

ARP广播查询数据包必须包含目标节点的MAC地址吗?

据我所知,地址解析协议(ARP)将本地网络上计算机的IP地址转换为等效的第2层地址(MAC地址),例如使用第2层交换机将数据包从机器A发送到B。

因此,所有相关方都必须在同一个局域网上,不是吗?

ARP广播查询包必须包含目标节点的MAC地址吗?

也许只需 IP 地址就足够了?

答案1

ARP 广播的全部目的是解析拥有 IP 地址的特定计算机的 MAC 地址。

Wireshark 像这样转换数据包:Who has 192.168.x.254? Tell 192.168.x.23

广播时,所有机器都会检查自己的 IP 配置是否与列出的 IP 相符,如果自己的 IP 匹配,则回复源机器。

如果没有目标 IP,协议就没有什么意义。请注意,MAC 表示FF:FF:FF:FF:FF:FF“向所有人广播”,所有计算机都可以读取发送的数据包。否则,如果数据包中包含特定 MAC,则数据包将转到特定 MAC,如果没有 MAC,则数据包将被默默忽略。

答案2

问:因此,所有相关方都必须在同一个局域网上,不是吗?

答:是的。

问:ARP广播查询包中一定要包含目标节点的MAC地址吗?

答:ARP 查询是针对目标 MAC 地址的查询。如果查询主机已经知道目标 MAC 地址,则无需通过 ARP 进行查询。

相关内容