在 Windows 上通过 MAC 地址获取主机名

在 Windows 上通过 MAC 地址获取主机名

我怎么能够根据 IP 地址/MAC 地址获取主机名在 Windows 上?(如果与版本相关,则使用 Win7)

我知道这arp -a会给我一个 IP 和 MAC 表。主机名和 MAC/IP 有类似的吗?

答案1

如果您从 MAC 地址开始,则首先需要获取 IP 地址。这意味着您需要访问具有与 MAC 关联的 IP 地址的设备。根据问题,arp -a将列出 MAC 地址和相应的 IP 地址。为了填充该列表,机器必须在某个时候发出请求arp,说“谁有 IP xxxx” - 所有者将回复,收到后,arp 表将被填充。

为了实现此功能,两个设备必须位于同一第 2 层网络(即同一交换机/vlan)上。您可以通过 ping 网络上的每个 IP 来手动触发 arp 请求,或者使用类似实用程序nmap一次性完成所有操作。

一旦获得了 IP 地址,您就可以依靠名称解析服务进行反向查找并返回与 IP 关联的主机名。

在 DNS 中,这是通过 PTR 记录实现的。对于每个 IP 地址,都有一个 PTR 记录,其中存储了关联的主机名。 但是,没有义务存储 PTR 记录,因此它们可能不存在,在这种情况下查找将失败

它们看起来像这样:

13.12.11.10.in-addr.arpa. 900   IN      PTR     hostname.domain.com.

PTR 记录中的 IP 地址是反向的。因此,为了获取主机名 10.11.12.13,我们对 DNS 说“给我 13.12.11.10.in-addr.arpa 的 PTR 记录。”

它返回上述记录。您可以通过以下方式实现此目的:

nslookup 10.11.12.13

nslookup给定一个 IP 地址时,它将尝试进行 PTR 查找。

根据其他回复,如果 IP 属于 Windows 机器,您也可以这样做nbtstat -A 10.31.46.59(注意大写 -A)

答案2

Ping -a <ip address>

这将解析 DNS 中的反向查找区域。

如果您没有反向查找区域,它将在您的本地名称缓存中查找。

如果您没有条目,它将在您的 LAN 上(您所在的子网内)进行广播以查询它。

这仅适用于 IP > 主机名解析。无 MAC。

答案3

nbtstat -A 192.168.1.100

192.168.1.100 是目标地址

相关内容