掃描網路連線設備

掃描網路連線設備

有沒有一種方法可以透過命令列掃描網路上的電腦並取得它們的 IP、MAC 和 DNS 名稱,而無需了解它們的任何資訊?

答案1

nmap -v -sn 192.168.1.0/24 | grep -v down

附:當然,您可以根據需要更改子網路設定。
pps。根據 nmap 版本,是否顯示 MAC 位址。 5.21+(debian 測試+)顯示。 5.0(目前在 Debian 穩定版中)不是。

答案2

arp -a將轉儲所有這些信息,而無需安裝nmap。但是,nmap會進行主動掃描,因此它會更新。

答案3

如果你真的一點頭緒都沒有,你應該先被動地聽網路的。本地網路非常混亂,大多數資料包都會發送到所有網路設備。透過分解資料包的層,您可以了解很多有關拓撲的資訊。請注意,有時這是根本不可能的,這取決於網路。

例如:

乙太網路幀為您提供乙太網路位址。

ARP(位址解析協定)將乙太網路位址與網路位址耦合,並給予網路設備之間關係的隱式提示。

IP(網際網路通訊協定)為您提供了兩台具有 IP 位址的主機之間的關係。

TCP(傳輸控制協定)讓您了解哪些服務(連接埠)處於活動狀態以及哪些電腦會互相聊天。

UDP(用戶資料報協定)提供與 TCP 相同的資訊。實際上,您不僅可以進行主動掃描,還可以了解更多。

如果您想查找特定信息,可以使用 tcpdump 或使用 pcap 庫。我製造了一個小例子在 Perl 中。它轉儲所有硬體位址、網路位址、tcp 和 udp 連接埠。

相關內容