Fiz um script para pegar o IP e o MAC de um range de IPs, é necessário quando você quer saber todos os Set-Top-Box que estão na rede, e enviar comandos de atualização, ou se comunicar com um Set-Top-Box específico.
Nesse primeiro script quero pegar um IP através de um MAC específico em um range de ips:
# Importa a api do NMAP
import nmap
# Instancia o objeto nmap.PortScanner.
nm = nmap.PortScanner()
# host 127.0.0.1, portas de 1 a 255
cidr2='127.0.0.1-255'
# insere os argumentos ao objeto nm usando a funcao scan.
a=nm.scan(hosts=cidr2, arguments='-sP')
# Trata os dados
for k,v in a['scan'].iteritems():
if str(v['status']['state']) == 'up':
try:
if (str(v['addresses']['mac'])=="68:15:90:78:F7:23"):
print "IP: " + str(v['addresses']['ipv4'])
except:
pass
-------------------------------------------------------------------------------------------------------------------
# Nesse script vai listar todos os dados encontrados.
# Pode remover print str(v), nesse caso vai exibir a lista de ips e macs da rede.
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'])
Links Relacionados:
http://searchsecurity.techtarget.com/tip/How-to-install-and-configure-Nmap-for-Windows
http://pydoc.net/Python/python-libnmap/0.6.2/
https://pypi.python.org/pypi/python-libnmap/
Install
Você pode instalar via pip:
pip install libnmap
ou via git:$ git clone https://github.com/savon-noir/python-libnmap.git $ cd python-libnmap $ python setup.py install
É necessário instalar o nmap no sistema operacional:
https://nmap.org/download.html
Nenhum comentário:
Postar um comentário