ARP 请求如何工作

网络工程 arp
2021-07-15 15:46:59

所以我可能有一个愚蠢的问题,主要是因为我在试验时得到了奇怪的结果。

我有点不确定 ARP 请求是如何工作的。

例如,我怎样才能 arp 我的整个本地网络 192.168.0.1/24。我必须向每个单独的 ip 发送 arp 请求,还是将 arp 请求发送到路由器或交换机,路由器或交换机又会回复哪个主机已启动及其相应的 ip 和 MAC 地址。

我正在尝试使用 python 以编程方式执行此操作,使用一个名为 scapy 的模块...我正在看一个教程,如果我不是,他们将本地 IP 地址和掩码提供给 scapy.all.arping错误

1个回答

我是否必须向每个单独的 ip 发送 arp 请求

是的。

或者 arp 请求是否被发送到路由器

路由器永远不会转发 ARP 请求(除了非常特殊的情况)。

或切换

交换机确实像任何其他广播一样转发 ARP 请求(到所有端口,但接收广播的端口除外)。

谁又会回复哪台主机已启动及其对应的 IP 和 MAC 地址。

不 - 回复的是主持人本身。

ARP 请求作为广播发送到整个第 2 层网络(通过交换机、集线器连接)。所有主机都会收到请求,但除了请求的主机之外的所有主机都简单地忽略/删除它。具有请求的 IP 地址的一台主机回复对源主机的请求,通知它相关联的 MAC 地址。