Registrando MAC de todas as máquinas da minha rede

Registrando MAC de todas as máquinas da minha rede

Gostaria de saber quais máquinas se conectam à minha rede doméstica. Meu pensamento era ter um banco de dados MySQL com uma entrada para cada máquina, com a data e hora de quando a vi pela última vez e um registro de quantas vezes a vi. Isso é simples. Minha pergunta é como faço para procurar os MACs? Eu considerei algo assim rodando a cada 30 minutos:

    #! /usr/bin/python
    
    import nmap
    
    nm = nmap.PortScanner()
    
    nm.scan(hosts='10.10.10.0/24', arguments='-n -sP -PE)
    hosts_list = [(x, nm[x]['status']['state']) for x in nm.all_hosts()]
    for host, status, mac in hosts_list:
         save(host,status,mac)

... mas para obter o MAC, preciso executar isso como root.

  • Existe um jeito melhor de fazer isso? (Eu considerei também se conseguiria obter os registros DHCP do roteador, mas isso não encontraria nenhum dispositivo de IP fixo)
  • Posso usar outra ferramenta?
  • Existe alguma medida de segurança que eu possa executar ao executar um script no cron como root?

Responder1

Em uma linha de comando do Windows: arp -a fornecerá o endereço IP e MAC de cada sistema atualmente em sua rede.

Responder2

informação relacionada