如何查找远程计算机的 MAC 地址?

如何查找远程计算机的 MAC 地址?

我知道自己局域网上某台主机的 IP 地址。如何利用该 IP 地址找到其 MAC 地址(无需物理访问)?

答案1

如果您使用的是 Windows 计算机,请打开命令框(开始...运行...cmd),ping目标机器,所以你已经与它取得了联系,然后发出命令arp -a查看本地 ARP 表,其中将列出 IP 地址及其对应的 MAC 地址,例如,

C:\Users\L3K> arp -a

Interface: 192.168.200.128 --- 0xb
  Internet Address      Physical Address      Type
  192.168.200.1         00-50-7f-c3-5c-88     dynamic
  192.168.200.2         00-50-7f-d1-e1-40     dynamic
  192.168.200.6         00-80-77-dd-a8-6b     dynamic

如果您使用的是基于 Linux 的系统,请安装该arp-scan实用程序,然后从命令行您可以要求扫描您的网络 - 就我的情况而言:

sudo arp-scan 192.168.200.0/24

如果您使用以太网以外的接口(例如无线),则需要指定,例如

sudo arp-scan -I wlan0 192.168.200.0/24

如果您不知道正在使用什么界面,只需使用下面的相应命令。

ifconfig  (For Debian based OS such as Ubuntu)
ip link   (For OS like Arch Linux)

答案2

该命令arping随 Linux 上的软件包一起提供iputils。指定要 ping 的 IP 地址,它会返回 MAC 地址,即使跨 LAN 上的交换机和子网也是如此(至少在我们的 LAN 上是这样的)。

# arping -c 1 -I eth0 10.100.10.11
ARPING 10.100.10.11 from 10.100.10.25 eth0
Unicast reply from 10.100.10.11 [00:22:68:88:F3:90]  0.594ms
Sent 1 probes (1 broadcast(s))
Received 1 response(s)

答案3

尝试

getmac /s hostname

或者:

getmac /s IP

您需要获得机器的管理员权限才能执行此操作。

答案4

如果您有一个托管交换机或者您的路由器允许您查看其 ARP 表,您可以从那里获取此信息。

如果您拥有 IP 的计算机在线,您可以 ping 它并从本地 ARP 表中获取其 MAC。

为了其他人的需要,这里给出一个一般说明:无法获取位于不同 LAN 上的机器的 MAC 地址,因为在这种情况下使用第 3 层协议进行寻址和传送,而 MAC 是第 2 层。

相关内容