如何根据MAC id查找与PC连接在同一网络上的设备的IP地址

如何根据MAC id查找与PC连接在同一网络上的设备的IP地址

PC 和嵌入式 Linux 设备连接在同一本地网络上。(我们没有 DHCP 服务器访问权限,IT 管理员有访问权限)。我们也无法在嵌入式 Linux 板上调试 UART。

我们确实知道设备的 MAC-id。那么有没有办法根据MAC-id获取设备的IP呢?

注:PC 运行 Windows 7。

答案1

我相信在Windows机器上你可以输入:

arp -a

此时它将列出计算机知道的所有 MAC 地址和 IP 地址。

如果那里没有列出,您可以考虑安装nmap在您的 Windows 机器上。然后,nmap扫描整个子网中的设备:

nmap -sP 192.168.1.0/24

答案2

在电脑上尝试

 arp -a

这基本上显示了 mac 和 IP 之间的映射。

这意味着设备以某种方式拥有一个 IP,我认为就是这种情况。

答案3

如果设备在过去 30 秒内(或您的 arp 超时设置为任何值)在同一网络上进行通信,那么您会看到其 IP 和 MAC,并带有arp -a.

这适用于 Linux、Windows、BSD 以及可能更多的操作系统。

例子:

> toad:/home/user>arp -a
toad.stack.nl (131.155.140.135) at 00:26:b9:66:89:49 on vlan140 permanent [vlan]
websites.stack.nl (131.155.140.165) at 00:26:b9:66:89:49 on vlan140 permanent [vlan]
toad.nfs.ipv4.stack.nl (192.168.2.135) at 00:26:b9:66:89:49 on vlan2 permanent [vlan]
C:\Users\用户名>arp -a

接口:192.168.1.12 --- 0xb
  互联网地址 物理地址类型
  192.168.1.2 08-00-37-43-8d-78 动态
  192.168.1.101 a0-b3-cc-2a-77-10 动态
  192.168.1.252 00-1e-e5-7a-47-5b 动态
  192.168.1.255 ff-ff-ff-ff-ff-ff 静态
  224.0.0.22 01-00-5e-00-00-16 静态
  224.0.0.252 01-00-5e-00-00-fc 静态
  255.255.255.255 ff-ff-ff-ff-ff-ff 静态

接口:192.168.81.1 --- 0x12
  互联网地址 物理地址类型
  192.168.81.255 ff-ff-ff-ff-ff-ff 静态
  224.0.0.22 01-00-5e-00-00-16 静态
  224.0.0.252 01-00-5e-00-00-fc 静态

接口:192.168.184.1 --- 0x13
  互联网地址 物理地址类型
  192.168.184.255 ff-ff-ff-ff-ff-ff 静态
  224.0.0.22 01-00-5e-00-00-16 静态
  224.0.0.252 01-00-5e-00-00-fc 静态

如果设备有一段时间没有在网络上处于活动状态,则 ARP 缓存中的信息将被丢弃。这可以防止旧信息弄乱表,并防止当设备更改其 IP 而表仍具有旧 MAC:IP 对时出现问题。

在这种情况下,您可能需要发送ARPping到设备或 ping 本地网络上的所有设备。

地图或 zenmap(Nmap 加图形界面)是对此有用的工具,并且可以在 Linux 和 Windows 上运行。 (我主要在 Windows 上使用 zenmap)。

答案4

它被称为地址解析协议维基百科会告诉你所有相关信息 =)。引用自维基百科页,

地址解析协议 (ARP) 是一种电信协议,用于将网络层地址解析为链路层地址...

相关内容