反向ARP查找


14

如何在Windows和/或Linux中进行反向ARP查找?假设我拥有在网络中运行的无线访问点的MAC地址,但是我忘记了它的IP地址?


2
我知道,如果我将其作为答案,就会被激怒:expert-exchange.com/Networking/Q_20279274.html
Jeffrey,2009年

@Jeffrey-只需将其标记为社区Wiki-并且如果推荐人不是google,则该链接仍然无用。
BinaryMisfit

3
您是对的-该网站确实是魔鬼。
杰弗里

2
我相信这个词是“逆向arp”,而不是逆向,您在搜索此词时可能会遇到更多的运气。
2009年

我也这么认为,但是反向arp是另一回事。它询问网络您自己的IP是什么(由DHCP代替)
Bart van Heukelom

Answers:


19

最简单的方法是ping子网(通常为.255)上的广播地址(ping -b [广播地址),然后转储arp表(在Linux上为arp -a),您应该找到MAC地址为机器及其IP。


3
为什么使用-b?在osx上,-b指定要绑定的接口
mist

-b在Linux上ping广播需要@mist ,但在OSX上则不需要@mist
Znarkus 2015年

1
广播ping并非总是有效。我在回答中提供了另一个解决方案。
乔纳森·J

3

arping2有一个示例arping-scan-net.sh,该示例在给定的网络子网中找到给定的mac地址的IP地址。它通过扫描每个ip地址来工作,因此当广播ping被丢弃时就可以工作(一种非常常见的情况)


所提供的方法在arping-scan-net.shIP地址中循环并调用arping -A -q -c 1 -T 192.168.0.$i $TARGET_MAC,这在时间上等效于ping给定IP地址。有什么方法可以通过一次实用程序调用从给定的MAC解析IP地址?
dma_k

2

从一个糟糕的地方,由scraig84编写:

通常,您需要在计算机的arp表之一上找到它。如果您的网络中有一个路由器,通常这是收集此类信息的最中心位置。在cisco路由器上,命令为“ show arp”-它会为您提供MAC地址及其对应IP地址的列表。在Windows框上,从DOS提示符下,您可以键入“ arp -a”以查看类似的输出。


1

您也可以使用nmap进行网络发现,在Ubuntu中,您可以简单地从命令行安装它:apt-get install nmap 对于ping扫描网络使用:nmap -sP xx.xx.xx.xx/yy结果,您可以找到网络中的所有主机。您可以使用其他扫描技术(如果主机不响应ICMP ping)来扫描网络。


1

对广播地址执行ping操作仅适用于响应广播ping的那些事情,而并非所有操作都可以。另一种方法是ping子网中的每个地址,然后查看ARP表。

在Windows中,您可以执行以下操作:

for /l %i in (1,1,254) do ping -n 1 -w 50 192.168.0.%i

基本上,您在“ for”循环中运行ping。因此,参数为:

  • / l-导致“ for”循环
  • %i-递增变量
  • (开始,增加,结束)-开始,增加和结束值
  • -n-要发送的数据包数量
  • -w-等待回复的时间(以毫秒为单位)

完成后,您可以使用以下命令查看ARP表:

arp -a

一种“强力”方法,但可以使用现有工具进行工作。通常,这也可以解析不响应ping的主机。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.