在 Windows 上从 MAC 地址获取主机名

mat*_*kie 5 networking windows

如何在 Windows 上从 IP 地址/MAC 地址获取主机名?(Win7,如果版本相关)

我知道这arp -a会给我一张 IP 和 MAC 表。主机名和 MAC/IP 是否有类似的内容?

Pau*_*aul 2

如果您从 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.
Run Code Online (Sandbox Code Playgroud)

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)