題 在專用網絡上查找計算機名稱(使用nmap?)


在局域網上,我想找到使用跨平台程序的所有連接計算機的名稱,最好是nmap。我知道我能做到

nmap -sn xxx.xxx.xxx.xxx/24

(其中xxx.xxx.xxx.xxx是本地IP地址)查找已啟動的主機,但如何找到計算機的主機名?他們是否以我能用nmap找到的方式廣播這個?

更新: 看起來像憤怒的IP掃描儀可以做到這一點。它是如何做到的?我可以用nmap複製它嗎?


10
2017-11-16 17:08


起源


哪個主機名? DNS名稱?問你的DNS服務器。 - ragnq
@ragnq nslookup不會給我主機名,但是憤怒的端口掃描器可以。我試圖弄清楚如何使用nmap和/或命令行工具。 - bsamek


答案:


我使用過nmap和其他IP掃描儀,例如Angry IP scanner。我的觀察是Nmap使用反向DNS來解析主機名,因此為了工作,DNS服務器應該具有主機的反向指針記錄。我發現其他掃描程序使用Netbios查詢跟進PTR查詢。

如果您確定目標網絡上的所有主機都是Windows主機並且已啟用NETBIOS,則可以使用 nbtscan工具 掃描它們。


0
2018-02-28 13:13





來自Angry IP Scanner的FAQ(“主機名未顯示“):

Angry IP Scanners顯示DNS返回的主機名(名稱)   服務器,做一個 反向查找。服務器提供IP   地址並返回主機名,如果它知道它。

如果有些電腦   知道它自己的名字,但這並不意味著它已經提供了它   網絡的DNS服務器。換句話說,它知道的主機的名稱   它本身(本地名稱)和附加到IP地址的名稱   DNS服務器已知的(全局名稱)可能並不總是匹配。

通常,DNS查詢將返回一些通用名稱,例如   dhcp-12-13.superisp.com,特別是在ISP網絡中。

名字匹配   在以下任何一種情況下:

  • 您的計算機已將名稱發送到DHCP服務器,從該服務器獲取IP地址,DHCP服務器已將其提供給本地   DNS服務器
  • 您有一個靜態IP地址,並且您的本地主機名是根據符合您的全局命名約定的規則配置的   網絡
  • 如果查詢本地IP地址,則主機的TCP堆棧將返回本地名稱,而不是詢問全局名稱

來自Nmap的文檔(“主機發現“):

默認情況下,Nmap仍然可以 反向DNS解析 在主機上   了解他們的名字。

這裡有額外的閱讀/信息


3
2017-11-16 17:30



在我正在研究的網絡上,憤怒的IP掃描器向我展示了主機名,大概是通過反向DNS查找。你所說的是nmap也進行了反向查找。但它沒有顯示主機名。如何讓它顯示主機名?或者這是該工作的錯誤工具? - bsamek


事實證明我必須指明 --system-dns 獲取網絡上的計算機名稱。我不確定為什麼會這樣。也許DNS的配置方式有些意外?

更新: 實際上,它適用於一個VLAN但不適用於另一個VLAN,但是憤怒的IP掃描器適用於兩者。


1
2017-11-16 19:56





你也可以使用 nmap -A xxx.xxx.xxx.xxx 它應該在輸出中顯示主機名。在我的網絡上,我通過grep管道,以獲得我想要的信息。 〜 grep -e 'scan report' -e 'Computer name'


0
2017-12-22 17:21