說明:
假如不知道局域網(wǎng)內(nèi)其它設(shè)備(手機(jī)、電視、電腦等)的ip或者mac地址咋辦,可以使用Python/ target=_blank class=infotextkey>Python+nmap 局域網(wǎng)內(nèi)主機(jī)掃描,然后根據(jù)掃描的結(jié)果分析,設(shè)備是什么系統(tǒng)、什么廠商等信息
代碼:
import nmap
import sys
import json
def get_lan_host(ip):
nm = nmap.PortScanner()
result = nm.scan(hosts=ip, arguments='-sn -PR')# -sn不進(jìn)行端口掃描
print ('返回結(jié)果:n',json.dumps(result,indent=4,ensure_ascii= False))
n=0
for i,j in result['scan'].items():
try:
mac = j['addresses']['mac']
except Exception as e:
#print (e)
mac = '空'
if j['vendor'] == {}:
vendor = '空'
else:
vendor = list(j['vendor'].values())[0]
n=n+1
print (i,mac,vendor)
print (n)
def main(ip):
test_item = ["主機(jī)列表"]
tabal_head = ["IP地址","MAC地址","廠商","操作系統(tǒng)","OS版本"]
a = get_lan_host(ip)
return a
if __name__ == '__main__':
ip = '192.168.0.0/24' # 掃描局域網(wǎng)192.168.0.1到192.168.0.255之前的ip主機(jī)
#ip = '192.168.75-77.0/24'
Excel_file_name = '局域網(wǎng)主機(jī)掃描測試報(bào)告.xls'
all_data = main(ip)
執(zhí)行:

測試結(jié)果:
