Как я могу получить MAC-адреса машин с помощью python-nmap?
Я использую python-nmap для сканирования моей локальной сети, я могу получить IP нескольких систем, но не их MAC-адресов.
Как я могу получить MAC-адреса в результатах сканирования?
nm = nmap.PortScanner()
a=nm.scan(hosts=cidr2, arguments='-sP')
for k,v in a['scan'].iteritems():
if str(v['status']['state']) == 'up':
number_thread += 1
print str(v)
try: print str(v['addresses']['ipv4']) + ' => ' + str(v['addresses']['mac'])
except: print str(v['addresses']['ipv4'])
Мне удалось получить MAC-адреса систем в той же сети (моя собственная локальная сеть) использование следующего кода.
, Кроме того необходимо выполнить этот код как корень (использование sudo
)
#!/usr/bin/env python
import nmap
nm = nmap.PortScanner()
cidr2='192.168.1.99/24'
a=nm.scan(hosts=cidr2, arguments='-sP')
for k,v in a['scan'].iteritems():
if str(v['status']['state']) == 'up':
print str(v)
try: print str(v['addresses']['ipv4']) + ' => ' + str(v['addresses']['mac'])
except: print str(v['addresses']['ipv4'])
Источник: он возможный получить MAC-адрес для машины с помощью nmap