題:
如何在我的網絡上找到活動主機?
TheRookierLearner
2013-05-19 23:03:08 UTC
view on stackexchange narkive permalink

我正在嘗試使用nmap查找網絡中的實時主機。我正在使用命令 sudo nmap -sP 192.168.2.1/24 在Ubuntu中掃描網絡。但是,我找不到實時主機。我只是實時獲得自己PC的網絡地址。當我通過瀏覽器看到DHCP客戶端列表(可以使用網絡IP通過瀏覽器訪問路由器)時,網絡上大約有10個活動主機。誰能告訴我發生這種情況的原因,以及如何在網絡上找到實時主機?

我通常這樣做`nmap -sn 192.168.2.0 / 24`,sn =禁用端口掃描。
@HamZaDzCyberDeV是的,`-sn`是新的標準參數,但它以前是`-sP`,因此@TheRookierLearner's命令應該仍然有效。
-sn與-sP相同,如下所述:https://github.com/nmap/nmap/blob/master/docs/nmap.1#L402
`nmap -PR 10.0.1.0/24 -sn`將執行網絡的ARP掃描。 [NMAP的網站](http://nmap.org/book/man-host-discovery.html)包含有關nmap主機發現的詳細信息。我強烈建議您以此為參考。
@NadeemDouba`nmap`將自動檢測它何時在LAN上,並為其探測選擇ARP掃描。即使用戶指定了不同的探針類型(例如-PE或-PS),情況也是如此。換句話說,如果OP實際上在LAN上,則不需要-PR。
只是要注意,運行不帶sudo的nmap可能會產生比預期更少的結果,請參閱https://security.stackexchange.com/q/74493/124138。
八 答案:
Shurmajee
2013-05-19 23:44:06 UTC
view on stackexchange narkive permalink

這是使用nmap執行主機發現的最簡單方法。

  nmap -sP 192.168.2.1/24

為什麼它總是不能正常工作?

運行此命令時,nmap嘗試對給定的IP地址範圍執行ping操作,以檢查主機是否還活著。如果ping失敗,它將嘗試將syn數據包發送到端口80(SYN掃描)。這不是百分百可靠的,因為現代的基於主機的防火牆會阻止ping和端口80。Windows防火牆默認會阻止ping。您網絡上的主機正在阻止ping,端口80不接受連接。因此,nmap假定主機未啟動。

那麼是否有解決此問題的方法?

是。您擁有的選項之一是使用-P0標誌,該標誌跳過主機發現過程,並嘗試對所有IP地址執行端口掃描(在這種情況下,甚至將掃描空的IP地址)。顯然,即使您位於小型(20-50台主機)網絡中,這也將花費大量時間來完成掃描。

更好的選擇是指定要掃描的自定義端口。 Nmap允許您使用SYN / UDP數據包探測特定端口。通常建議探測常用端口,例如TCP-22(ssh)或TCP-3389(Windows遠程桌面)或UDP-161(SNMP)。

  sudo nmap -sP -PS22,3389 192.168.2.1/24 #custom TCP SYN掃描sudo nmap -sP -PU161 192.168.2.1/24 #custom UDP掃描 

NB即使指定了要掃描的自定義端口,您也可能無法獲得活動主機。在很大程度上取決於主機的配置方式以及所使用的服務。因此,您只需要不斷嘗試使用不同的組合即可。請記住,請勿在未經適當授權的情況下對網絡執行掃描。

更新:掃描網絡時,您永遠無法確定特定命令會為您提供所有想要的結果。該方法應該從基本的ping掃描開始,如果它不起作用,請嘗試猜測主機上可能正在運行的應用程序,並探查相應的端口。使用Wireshark的想法也很有趣。您可能要嘗試發送ACK數據包。

  nmap -sP -PA21,22,25,3389 192.168.2.1/24#21由ftp使用 

更新兩個:標誌-sP和-P0現在分別稱為-sn和-Pn。但是,仍然發現較舊的標誌在較新的版本中有效。

儘管我認為這是由於防火牆阻止了ping掃描,但上述命令並沒有幫助。甚至-P0標誌也不起作用。
我真的不知道發生了什麼,但是命令`nmap -sP -PS 192.168.2.1 / 24`起作用了(上面的命令也起作用了,所以可以接受答案),在Windows下也是如此。我不知道Ubuntu有什麼問題。可能我需要檢查iptables。
值得注意的一件事是,當您與要掃描的主機位於同一廣播域中時,nmap使用ARP而不是ICMP / SYN掃描
“ -P0”不**“嘗試掃描系統的所有端口以檢查其是否啟動。”取而代之的是,它“跳過主機發現” **,報告“一切”為最新狀態,並在每個IP上執行您請求的任何端口掃描。另外,正如@RoryMcCune所指出的那樣,Nmap應該發送針對此類掃描的ARP請求。使用`nmap --iflist`來檢查Nmap對路由表的看法;可能會感到困惑,並且沒有發送正確的探針。如果無法從IP收到ARP答复,則也不能發送TCP或UDP數據包。
我猜@Mayank-Sharma的意思不是-P0,而是-PO,它發送IGMP,ICMP和IP-in-IP數據包,而不掃描所有端口。但是,我不確定。
我很抱歉。我在對句子進行框架設計時犯了一個錯誤。我已經更新了@bonsaiviking建議的答案
@TheRookierLearner這種混淆是為什麼不贊成將-Pn表示為-Pn的意思。
這個答案有一些錯誤...例如:'如果ping失敗,它將嘗試將syn數據包發送到端口80(SYN掃描)。它不能像一個接一個地工作,並且它發送的是“ ACK”而不是“ SYN”。這些“非常不同”,尤其是在防火牆和IDS系統方面。
Teun Vink
2013-05-20 01:31:56 UTC
view on stackexchange narkive permalink

最簡單的檢查方法是使用nmap執行ping掃描後驗證ARP表:

  arp -a -n  

此列表列出了所有響應ARP查詢的主機,甚至包括過濾ICMP的主機。

該命令的結果將根據當前現有的ARP條目而有所不同。
當我有16個打開的節點時,此命令將在本地網絡上獲得5條記錄。
在檢查arp表之前,是否使用nmap進行ping掃描?如果沒有,主機可能會丟失。當您通過ping掃描生成流量時,網絡中的每個節點至少應回答ARP請求。
像Tivo這樣的設備不會響應ping。如果iPad,iPhone和iPod等設備的屏幕被鎖定,它們可能無法響應ping掃描。另外,運行除TCP / IP之外的內容的設備將不會響應ping掃描。 Wireshark仍將顯示流量(如IPX)。此外,還將顯示不同的子網。
嘗試在Windows上使用Cain和Abel並在其中使用ARP工具...
-1
Nmap已經使用此方法來“ ping”廣播本地網段的掃描。以root特權運行,並使用-v進行詳細輸出,您將看到“正在啟動ARP Ping掃描”。 http://nmap.org/book/man-host-discovery.html
如果您的設備無法響應arp請求,那麼您就很不走運。檢測不響應arp請求的設備的唯一方法是偵聽網關上的流量。
AbsoluteƵERØ
2013-05-20 01:57:29 UTC
view on stackexchange narkive permalink

Wireshark也很酷。

您可能想看看 Wireshark。它記錄本地網絡上的所有流量。它將告訴您正在廣播的節點。您還可以查看正在傳輸的內容。它可以在Ubuntu軟件中心中獲得。

此外,這是有關通過命令行在Ubuntu上安裝Wireshark的鏈接。

您的DHCP路由表記住,許多虛擬機將在列表中顯示為單獨的計算機。通常在默認的24小時租賃時間內(對於大多數WiFi路由器)連接到網絡的所有內容仍會顯示在列表中。您可能要檢查路由器中租約的期限。它可能會告訴您是否有人隔夜在您的網絡上。在某些具有雙NIC或NIC和無線網卡的設備上,如果同時啟用了兩個接口,它們將顯示兩次。

許多人忘記了在網絡上的其他情況:

  • 管理型交換機
  • 某些打印機
  • 服務器遠程管理卡
  • 手機
  • Tivo和其他DVR
  • Apple TV
  • 某些電視
  • DVD播放器
  • 網絡A / V接收器
  • Playstation,XBox等。
  • 便攜式遊戲設備
  • Ipad和其他平板電腦
  • iPod和音樂播放器
  • PDA
  • IP電話像Magic Jack Plus

大約6年前,在辦公室中,由於所有多餘的流量,我在3mb的小連接中工作的時間減少到128k。業主想知道是否有可能看到正在發生的事情。這位兼職的IT老手聳了聳肩,因為並非所有流量都通過他們的Windows 2000 Server。他檢查了服務器中的路由表和流量日誌,卻一無所獲。他們沒有足夠奇怪地使用路由器,因此網絡上的任何東西都可以從調製解調器獲得地址。他在服務器中查看的路由表僅用於幾年前已存在的靜態映射。我注意到它們不在同一子網中。然後,我向他們顯示DHCP未在服務器中打開。我的一位同事在不知不覺中在他的機器上託管了一個日本色情網站。攻擊者在他安裝了後門以及高端視頻編輯軟件的破解版後,才將他的機器紮根。我們還發現它們在不同時間,不同部門的各種機器上運行 Tor demonoid bitTorrent 。 Wireshark發現了一切。第二天,互聯網達到了全速。我們還安裝了路由器。

如果您不喜歡Wireshark,則可能還想嘗試 tcpdump

儘管我當然同意Wireshark是一個了不起的工具,但要解決這種情況,它並不是最佳選擇,尤其是在有大量流量的情況下,很難找到所有唯一的主機。
@TeunVink有關查找唯一主機的說明。 http://ask.wireshark.org/questions/4827/determining-unique-mac-and-ip-addresses-in-a-pcap
@AbsoluteƵERØ-確實是非常有價值的投入。我實際上使用Wireshark來檢查nmap嘗試發送的數據包是否到達網絡或被Windows防火牆阻止。事實證明,它們沒有在Windows上被阻止。我必須嘗試在Ubuntu上。
→Teun:乍一看,“ wireshark”似乎是一個沉重的工具。但總而言之,要通過nmap獲得完整的網絡“審核”,還需要大量的運行:使用不同的端口,一天中的不同時間,使用不同的協議…
我可以為研究目的而鏈接到該日本性愛網站嗎?
Ricky Wilson
2015-07-27 16:46:21 UTC
view on stackexchange narkive permalink

此bash腳本將輸出網絡上所有活動主機的IP地址。

 #!/ bin / bashnmap $ 1 -n -sP | grep報告| awk'{print $ 5}' 

示例用法

  rwilson @ rwilson-Aspire-E5-521:〜/ Scripts / Utils $ Mon Jul 27 06 :41 AM> ./livehosts.sh 192.168.1.1/24192.168.1.1192.168.1.11192.168.1.12192.168.1.13192.168.1.14192.168.1.15192.168.1.118192.168.1.122192.168.1.123192.168.1.126192.168.1.129192.168.1.133192.168。 1.134192.168.1.156192.168.1.159192.168.1.168192.168.1.170  
這與OP所做的有何不同?看來您所要做的只是添加grep和awk來簡化輸出。
slayer
2018-10-25 19:25:41 UTC
view on stackexchange narkive permalink

一旦擁有管理員權限(即 root ),就可以將 netdiscover(8) -r 標誌一起使用以指定不同的類和麵具。默認情況下,它使用網絡類C / 24。

例如:

  $ sudo netdiscover -r 172.16.17.0/24

輸出將如下所示:

 當前正在掃描:已完成! |屏幕視圖:唯一主機3個主機中的3個捕獲的ARP Req / Rep數據包。總大小:180 _____________________________________________________________________________ IP在MAC地址計數Len MAC供應商/主機名----------------------------------- ------------------------------------------ 172.16.17.1 00:50:56 :c0:00:08 1 60 VMware,Inc. 172.16.17.2 00:50:56:f9:b9:b6 1 60 VMware,Inc. 172.16.17.254 00:50:56:fc:e4:76 1 60 VMware,公司 
PraveenMax
2017-05-18 22:58:34 UTC
view on stackexchange narkive permalink

有時 arp -a -n 不會獲取IP地址。執行 nmap -sP 192.168.1.1/24 將檢索活動主機,然後如果您嘗試 arp ,它將顯示實時主機。那就是它如何在Linux Mint中對我起作用。但是您可以隨時依靠 nmap

rocket
2018-10-25 17:44:44 UTC
view on stackexchange narkive permalink

在網絡上查找主機的示例:

  arp-scan 192.168.12.0/24#如果vlan標記的接口使用-Q vlanid  

etherape (GUI)顯示了網絡活動的圖表。

這裡上面也提到了一些其他工具。

根據我在局域網中的測試,對於主機發現,“ arp-scan”比“ netdiscover”和“ nmap -sn”要快。
ccpizza
2019-04-24 20:07:28 UTC
view on stackexchange narkive permalink

如果您還需要主機指紋識別,並且不介意使用免費但封閉的源代碼工具,那麼 fing 是另一種選擇:

  sudo fing -r 1  

nmap 192.168.1.1/24 -n -sP 相比,它的速度明顯更快,並且還會嘗試從MAC地址中檢測設備製造商。

免責聲明:我與該工具或製造該工具的公司無關,也不知道還有什麼其他事情(不管是否邪惡) ),該工具可能在後台進行操作。我已經使用他們的移動應用在我的局域網中找到IP,並發現它很有用。 sup>



該問答將自動從英語翻譯而來。原始內容可在stackexchange上找到,我們感謝它分發的cc by-sa 3.0許可。
Loading...