基于局域網設備管理考慮,查找局域網絡內已連接設備,并獲取到這些設備的IP地址及設備名稱,常用工具有Advanced IP Scanner、Nmap等。
Advanced IP Scanner,是一款可靠且免費的網絡掃描分析LAN,該程序可掃描局域網絡內所有設備。

Nmap,也就是Network Mapper,最早是Linux下的網絡掃描和嗅探工具包,是一個網絡連接端掃描軟件,用來掃描網上開放的網絡端口,用于網絡發現和安全審計的工具,可以檢測當前局域網內已連接設備,及目標主機是否在線,端口開放情況,偵測運行的服務類型及版本信息,偵測操作系統與設備類型等信息。

Nmap可以在命令行中直接使用,但需要添加環境變量:

在已安裝Nmap軟件的基礎上,通過Python調用nmap、netifaces庫,實現局域網內已連接設備的掃描,Python相關庫下載地址:
https://pypi.org
(若pip install [package_name]無法使用時,推薦使用該方法)
nmap模塊安裝:進入已解壓路徑下,通過命令python setup.py install進行安裝。


netifaces模塊安裝:進入已解壓路徑下,通過命令python setup.py install進行安裝。


使用Python源碼如下:
#LanIpScan.py
importnetifaces
importnmap
classLanIpScan:
#獲取網關
defget_gateways(self):
returnnetifaces.gateways()['default'][netifaces.AF_INET][0]
#獲取到本地網關地址,這里返回192.168.1.1
#returndict(dict(netifaces.gateways())['default'])[2][0]
#不推薦使用這種方式,原因是該模塊已經定義了一些常量及特定的用法
#獲取IP
defget_ip_lists(self,gateway):
ip_lists=[]
foriinrange(1,256):
ip_lists.append('{}{}'.format(gateway[:-1],i))
#更改網關的最后一項數據并添加到列表中
returnip_lists
#返回列表['192.168.1.1',-->'192.168.1.255']
#查看IP地址
defscan_ip_survial(self,ip):
nmScan=nmap.PortScanner()
nmScan.scan(hosts=ip,arguments='-sP')
try:
nmScan[ip]
return{'ScanInfo:':nmScan[ip]}
except:
KeyError
return"此IP地址無效",ip
#獲取設備信息
defget_all_devices(self,ip_lists):
survial_devices=[]
foripinip_lists:
scan_result=LanIpScan.scan_ip_survial(ip)
ifscan_result:
survial_devices.append(scan_result)
print(scan_result)
returnsurvial_devices
if__name__=='__main__':
LanIpScan=LanIpScan()
gateway=LanIpScan.get_gateways()
ip_lists=LanIpScan.get_ip_lists(gateway)
LanIpScan.get_all_devices(ip_lists)
審核編輯:湯梓紅
-
網絡
+關注
關注
14文章
8265瀏覽量
94752 -
ip地址
+關注
關注
0文章
309瀏覽量
18939 -
LAN
+關注
關注
0文章
234瀏覽量
39417 -
局域網絡
+關注
關注
0文章
18瀏覽量
7965 -
python
+關注
關注
57文章
4876瀏覽量
90030
原文標題:局域網絡內如何掃描已連接設備的信息,這三個工具很牛逼,還有Python神腳本!
文章出處:【微信號:網絡技術干貨圈,微信公眾號:網絡技術干貨圈】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
Carrier Wi-Fi定義發布:無線局域網絡漫游加溫
基于“安芯一號”的小型無線局域網絡設計
【天馬星空】zigbee局域網絡傳輸系統
CAN控制器局域網絡簡析
以太型局域網絡系統故障檢測與維護
無線局域網絡簡介(WLAN)
無線局域網簡介
無線局域網(WLAN)的特征、運營模式與應用前景
控制器局域網絡(CAN)的詳細介紹
局域網絡內如何掃描已連接設備的信息
評論