ARP扫描/IP扫描

328 阅读2分钟

ARP(Address Resolution Protocol)是一种网络协议,用于在某个网络中发现并将 IP 地址映射到对应的物理地址(通常是 MAC 地址)。可以使用arp命令来查询本地 ARP 缓存,以查找已知的 IP 到 MAC 地址的映射。

例如可以使用以下命令查询 ARP 缓存:

arp -a

这将列出已知的 IP 地址和对应的物理地址。要发现网络内的所有设备,您可以使用网络扫描工具,例如 nmap。

请注意,在没有授权的情况下使用这些工具可能是非法的,并可能损害网络的安全。

ARP 缓存是由 ARP 协议维护的系统缓存表,其中包含了已知的 IP 到 MAC 地址的映射。更新 ARP 缓存机制是动态的,主要分为以下三种:

手动更新:用户可以使用命令行工具或图形化界面来添加、修改或删除 ARP 缓存中的条目。

ARP 请求/回复:如果主机需要与另一个主机通信,但是其 ARP 缓存中不存在对应的映射,它将发送 ARP 请求报文,询问对应的主机的 MAC 地址。收到 ARP 请求的主机将返回 ARP 回复报文,提供对应的 MAC 地址。

ARP 刷新:ARP 缓存中的条目是有时限的,通常是几分钟或几小时。当条目过期时,主机将再次发送 ARP 请求以确保缓存中的条目是有效的。如果收到回复,则表示对应的主机仍在线,并且 ARP 缓存的条目将被更新。

以上是 ARP 缓存更新的主要机制,它们保证了 ARP 缓存中的条目始终是最新的,以便确保网络中的主机可以通过 ARP 协议进行通信。

不同的操作系统有不同的 ARP 刷新命令。以下是一些常见操作系统中的 ARP 刷新命令:

Windows:使用“arp -d *”命令可以删除 ARP 缓存中的所有条目,然后通过网络通信重新填充 ARP 缓存。

Linux:使用“arp -d”命令可以删除 ARP 缓存中的指定条目,例如“arp -d 192.168.1.100”。也可以使用“ip neigh flush all”命令删除 ARP 缓存中的所有条目。

macOS:使用“sudo arp -a -d”命令可以删除 ARP 缓存中的指定条目,例如“sudo arp -a -d 192.168.1.100”。也可以使用“sudo killall -HUP mDNSResponder”命令刷新 ARP 缓存。

请注意,在刷新 ARP 缓存前请确保您对操作系统有足够的了解,以免对系统造成不必要的影响