2013-03-26 58 views
0

我知道nmap能夠ping通掃描並輸出只有活動IP列表,但我正在將net請參閱如何使用CIDR表示法列出IP是否處於活動狀態。 (例如,如果地址處於活動狀態或非活動狀態,則爲1.1.1.1/32列表)。我也一直在研究netaddr和scapy,但我不明白我將如何完成這項工作。我正在嘗試使用python腳本來做到這一點。我如何使用nmap列出子網中的地址是否使用Python

感謝

+0

這是爲什麼下蟒蛇? – ATOzTOA 2013-03-26 16:03:29

+0

我想使用python編寫腳本。 – user2212323 2013-03-26 17:11:10

+0

您是否試圖確定主機是否還活着,或者它是否在某些端口上偵聽?你想隱身嗎?這只是一個探索性練習嗎?給我一個簡潔的答案有太多的變數。 – dicato 2013-03-26 17:55:52

回答

1

它看起來像有一個名爲python-iptools它必須從CIDR標記轉換爲IP範圍的能力的開源庫。

0

在Python中這樣做的最好方法是使用Scapy。您可以輕鬆創建一個ping(ICMP迴應請求)數據包,設置其目的地爲CIDR範圍,然後再「送」的,這將依次發送到每個地址範圍:

>>> p = IP(dst="10.0.0.0/30")/ICMP() 
>>> sr(p,timeout=5) 
Begin emission: 
Finished to send 4 packets. 
**.................. 
Received 20 packets, got 2 answers, remaining 2 packets 
(<Results: TCP:0 UDP:0 ICMP:2 Other:0>, <Unanswered: TCP:0 UDP:0 ICMP:2 Other:0>) 

獲取的輸出您可以使用sr函數(或者您選擇用來發送數據包的任何方法)。獲取地址(讓數據包生成由您決定)的另一種方法是使用ipaddr庫,該庫有一個可以遍歷CIDR網絡的IPv4Network對象。

最後,我不得不指出的Nmap可以CIDR格式接受目標規格(例如192.168.1.0/24example.com/2610.0.0.0/8等)

相關問題