1. 程式人生 > >用IP地址反查主機名

用IP地址反查主機名

在日常工作中,要獲取一個機器的主機名,最簡單的方法是通過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地址了。