我有一个本地网络中所有在线设备的列表(例如 192.168.1.x 域)。我想使用在 Windows 和 linux 中都可以使用的 node.js 检索他们的计算机名称/NETBIOS 名称。在 Windows 命令提示符中,我找到了三个命令,它们给了我一个计算机名称:
> ping -a 192.168.1.37
Pinging RASPBERRYPI [192.168.1.37] with 32 bytes of data:
Reply from 192.168.1.37: bytes=32 time<1ms TTL=64
并且tracert
:
> tracert 192.168.1.37
Tracing route to RASPBERRYPI [192.168.1.37]
over a maximum of 30 hops:
1 <1 ms <1 ms <1 ms RASPBERRYPI [192.168.1.37]
Trace complete.
并且nbtstat
也可以在 Windows 上使用。
在 Linux 上,ping 没有解析主机名设置 ( -a
),并且 traceroute 没有给我计算机名。我发现唯一可行的解决方案相当于nbtstat
(Windows),称为nmblookup
(Linux):
$ nmblookup -A 192.168.1.37
Looking up status of 192.168.1.37
RASPBERRYPI <00> - B <ACTIVE>
RASPBERRYPI <03> - B <ACTIVE>
RASPBERRYPI <20> - B <ACTIVE>
..__MSBROWSE__. <01> - <GROUP> B <ACTIVE>
WORKGROUP <00> - <GROUP> B <ACTIVE>
WORKGROUP <1d> - B <ACTIVE>
WORKGROUP <1e> - <GROUP> B <ACTIVE>
MAC Address = 00-00-00-00-00-00
是否有在 node.js 中获取计算机/NETBIOS 名称的通用方法?