Windows 中同一 LAN 上的 MAC 地址到 IP 地址

Windows 中同一 LAN 上的 MAC 地址到 IP 地址

有没有什么方法可以帮助我通过 MAC 地址找到连接在同一 LAN 中的机器的 IP 地址。

答案1

由于你们在同一个局域网中,因此你可以检查你的机器的 arp 表。如果机器没有出现,你可以 ping 你的广播地址,让所有机器响应你。

在 Windows 上,您要查找的命令是arp -a(在 Nix 上,您只需输入arp

如果机器位于另一个子网,您必须能够访问第 3 层设备(路由器、L3 交换机、防火墙),您可以在那里查看 arp 表。


询问如何 ping 你的广播地址:

首先,您需要确定广播地址。使用 /8/16/24 地址,这相当容易。我将在此示例中使用 /24。

设置:

IP: 192.168.2.150
NETMASK: 255.255.255.0

您的广播地址是子网中的最后一个 IP。(有关子网划分的更多信息,Evan Anderson 有一个伟大的写上去。

在我的情况下,我的广播地址是 192.168.2.255。所以我要ping 192.168.2.255ping 我的广播地址。这基本上是要求网络上的所有机器通过 ICMP 回显与您通信。要做到这一点,您的机器需要获取 mac 地址,因此它会向网络上的所有机器发送 arp 请求,它们都会回复其 mac 地址。然后您的机器在其 arp 表中就有它们的 MAC -> IP 映射。

答案2

对于 Windows 系统,有一个免费工具叫做Mac 扫描仪

答案3

对广播地址执行 ping 操作不一定能保证获得响应。根据我的经验,只有打印机软件会响应广播 ping 操作。

您需要的实际上是 Reverse-Arp,但它已被 BOOTP 取代。不过我猜不出 BOOTP 能如何帮助您找到答案。

LLDP 和 CDP 等第 2 层发现协议应该会有所帮助,但它们不采用查询/响应模型,而是依赖于发送定期信标。如果您确定您的 LAN 仅由 Windows 7 PC 组成,您可以监听 LLDP 数据包并过滤掉感兴趣的数据包。

但对我来说最万无一失的方法似乎是 Netbios。Netbios 查询返回的详细信息包括接口 IP 和 Mac 地址详细信息。我会使用以下工具nbts扫描并 grep 查找 MAC 地址

nbtscan 192.168.1.0/24 | findstr "00:11:22"

这具有额外的优势,只要中间没有防火墙,就可以跨子网进行查询。

相关内容