我有两台电脑连接到同一个网络。一台是我的,还有另一台。我想使用命令行找出另一台电脑的名称。请注意:
- 只有两台 PC 连接到网络
- 我的电脑的 IPv4 IP 地址是 192.168.0.2
- 另一台 PC 的 IPv4 IP 地址是 192.168.0.1
- 它们都装有 Windows 7,32 位
- 我不只是需要找到名称,还必须将其存储在变量中以供稍后在批处理脚本中使用。
笔记:不要给我任何代码,因为 Stack Exchange 不是免费的代码编写服务。但请至少给我所需步骤的概要。
答案1
将 IP 地址转换为名称的能力取决于网络上配置的名称解析服务(例如 DNS),因此并非所有命令在所有情况下都有效。假设网络配置为默认,以下是您可以尝试的几个命令,这些命令(大致)按照它们可能起作用的顺序列出:
统计信息系统
nbtstat -A <IP-ADDRESS>
查询远程计算机的 NetBIOS 名称表。类型为“UNIQUE”的名称是远程计算机的名称:
PS C:\> nbtstat -A 192.0.2.100
Local Area Connection:
Node IpAddress: [192.0.2.100] Scope Id: []
NetBIOS Remote Machine Name Table
Name Type Status
---------------------------------------------
WIN10-PC <00> UNIQUE Registered
WORKGROUP <00> GROUP Registered
WIN10-PC <20> UNIQUE Registered
MAC Address = 0B-15-5A-AB-0C-15
平
ping -a <IP-ADDRESS>
该-a
参数将 IP 地址解析为主机名。这需要网络上的 DNS 能够识别目标计算机。
PS C:\> ping -a 192.0.2.100
Pinging WIN10-PC [192.0.2.100] with 32 bytes of data:
Request timed out.
Ping statistics for 192.0.2.100:
Packets: Sent = 1, Received = 0, Lost = 1 (100% loss),