在日常工作中,要获取一个机器的主机名,最简单的方法是通过ping命令来实现,例如:要获取百度的主机名,就可以ping www.baidu.com
通过ping命令,既可以获取到该机器的主机名,又可以获取它的IP地址。
除了上面这种方法之外,还可以通过另外一个DOS命令来获取一个机器的主机名:nbtstat
NBTSTAT命令:用于查看当前基于NETBIOS的TCP/IP连接状态,通过该工具你可以获得远程或本地机器的组名和机器名。虽然用户使用网络上的各种小工具可以准确地得到主机的网卡地址,但对于一个已建成的比较大型的局域网,要去每台机器上进行这样的操作就显得过于费事了。网管人员通过在自己上网的机器上使用DOS命令nbtstat,可以获取另一台上网主机的网卡地址。我们还是先来看看它的语法格式吧:
NBTSTAT [ [-a RemoteName] [-A IP address] [-c] [-n] [-r] [-R] [-RR] [-s] [-S] [interval] ]
参数说明:
-a Remotename—说明使用远程计算机的名称列出其名称表,此参数可以通过远程计算机的NetBios名来查看他的当前状态。
-A IP address—说明使用远程计算机的 IP 地址并列出名称表,这个和-a不同的是就是这个只能使用IP,其实-a就包括了-A的功能了。
-c—列出远程计算机的NetBIOS 名称的缓存和每个名称的 IP 地址这个参数就是用来列出在你的NetBIOS里缓存的你连接过的计算机的IP。
-n—列出本地机的 NetBIOS 名称,此参数与上面所介绍的一个工具软件“netstat”中加“ -a”参数功能类似,只是这个是检查本地的,如果把netstat -a后面的IP换为自己的就和nbtstat -n的效果是一样的了。
-r—列出 Windows 网络名称解析的名称解析统计。在配置使用 WINS 的 Windows 2000 计算机上,此选项返回要通过广播或 WINS 来解析和注册的名称数。
-R—清除 NetBIOS 名称缓存中的所有名称后,重新装入 Lmhosts 文件,这个参数就是清除nbtstat -c所能看见的缓存里的IP。
-S—在客户端和服务器会话表中只显示远程计算机的IP地址。
-s—显示客户端和服务器会话,并将远程计算机 IP 地址转换成NETBIOS名称。此参数和-S差不多,只是这个会把对方的NetBIOS名给解析出来。
-RR—释放在 WINS 服务器上注册的 NetBIOS 名称,然后刷新它们的注册。
interval—每隔interval 秒重新显示所选的统计,直到按“CTRL+C”键停止重新显示统计。如果省略该参数,nbtstat 将打印一次当前的配置信息。此参数和netstat的一样,nbtstat中的“interval”参数是配合-s和-S一起使用的。
(ps:特别要注意这些参数在使用的时候要区分大小写)
该命令使用TCP/IP上的NetBIOS显示协议统计和当前TCP/IP连接,使用这个命令你可以得到远程主机的NETBIOS信息,比如用户名、所属的工作组、网卡的MAC地址等。在此我们就有必要了解几个基本的参数。
-a使用这个参数,只要你知道了远程主机的机器名称,就可以得到它的NETBIOS信息(下同)。
-A这个参数也可以得到远程主机的NETBIOS信息,但需要你知道它的IP。
-n列出本地机器的NETBIOS信息。
当得到了对方的IP或者机器名的时候,就可以使用nbtstat命令来进一步得到对方的信息了,这又增加了我们入侵的保险系数。
通过“nbtstat -A IP地址”这样的格式就可以获取到该机器的主机名、所属工作组和该机器的MAC地址了。