como descobrir endereços mac de todas as máquinas na rede
31
Existe alguma maneira fácil de descobrir o endereço MAC de todas as máquinas na minha rede, em vez de fazer um SSH em cada uma e, ifconfig | grep HWaddrse houver 300 máquinas na rede, eu realmente preciso de uma solução fácil.
Para fins de completude: arp -n 0.0.0.0 Onde 0.0.0.0 é o endereço IP do dispositivo. Observe que você ainda terá uma pesquisa de cada vez. Às vezes, você quer apenas um, e isso é certamente mais rápido do que o envio para cada caixa. E se for uma caixa ou impressora do Windows?
precisa
2
sudo arp-scan --localnet
Silver Moon
Respostas:
34
Você pode usar o nmap para executar uma verificação de ping.
nmap -sP 192.168.254.*
Starting Nmap 5.00 ( http://nmap.org ) at 2011-03-09 11:32 GMT
Host xyzzy.lan (192.168.254.189) is up (0.00022s latency).
MAC Address: 00:0C:29:5B:A5:E0 (VMware)
Host plugh.lan (192.168.254.196) is up (0.00014s latency).
MAC Address: 00:0C:29:2E:78:F1 (VMware)
Host foo.lan (192.168.254.200) is up.
Host bar.lan (192.168.254.207) is up (0.00013s latency).
MAC Address: 00:0C:29:2D:94:A0 (VMware)
Nmap done: 256 IP addresses (4 hosts up) scanned in 3.41 seconds
Editar:
Um script sed para filtrar a saída para IP -> MAC - coloque isso em um arquivo.
/^Host.*latency.*/{
$!N
/MAC Address/{
s/.*(\(.*\)) .*MAC Address: \(.*\) .*/\1 -> \2/
}
}
/[Nn]map/d
s/^Host .*is up/& but MAC Address cannot be found/
e use assim
nmap -sP 192.168.254.0/20 | sed -f sedscript
192.168.254.189 -> 00:0C:29:5B:A5:E0
192.168.254.196 -> 00:0C:29:2E:78:F1
Host foo.lan (192.168.254.200) is up but MAC Address cannot be found.
192.168.254.207 -> 00:0C:29:2D:94:A0
sim, é isso que eu estava procurando, eu li outras mensagens também, não é um switch Cisco de jeito nenhum obrigado a todos pelas mensagens.
Usuário registrado
11
Eu descobri que a única maneira de fazer com que os endereços mac apareçam é executando o nmap como root. Também parece que o sedscript não funciona mais. [O texto próximo ao endereço IP foi alterado.
monksy
O relatório de verificação do Nmap para o host 192.168.1.147 está ativo (latência de 0.00045s). Endereço MAC: XX: XX: XX: XX: XX: XX
monksy
16
Use o nmap. Importante executá-lo como root para obter os endereços MAC. Exemplo:
sudo nmap -sP 192.168.1.0/24
Irá verificar 192.168.1.1 - 192.168.1.255. Consulte a notação CIDR no wiki se você não estiver familiarizado com essa notação de sub-rede.
Você deve conseguir o nmap dos repositórios de qualquer distribuição Linux recente, por exemplo
sudo apt-get install nmap
ou
sudo yum install nmap
Um exemplo de saída da minha rede:
Host 192.168.1.1 is up (0.0069s latency).
MAC Address: 00:0D:54:9B:D8:F4 (3Com)
Host 192.168.1.78 is up (0.0068s latency).
MAC Address: 00:0C:29:BC:3D:1C (VMware)
Host 192.168.1.91 is up (0.0038s latency).
MAC Address: 00:0C:29:8A:F4:A3 (VMware)
Host 192.168.1.92 is up (0.0039s latency).
MAC Address: 00:0C:29:65:60:5F (VMware)
Host 192.168.1.158 is up (0.033s latency).
MAC Address: 00:0C:29:82:24:EA (VMware)
Host 192.168.1.186 is up (0.0024s latency).
MAC Address: 00:0C:29:3E:26:1F (VMware)
Host 192.168.1.190 is up (0.0066s latency).
Contanto que você execute este comando a partir de um host no mesmo segmento de rede, nmaprelatará que todo o endereço MAC para cada host é descoberto.
Por exemplo:
sudo nmap 192.168.1.0/24 -sP
Starting Nmap 4.76 ( http://nmap.org ) at 2011-03-09 06:29 EST
Host old.net (192.168.1.1) appears to be up.
MAC Address: 00:18:39:C5:A1:DC (Cisco-Linksys)
Para os endereços MAC, eu preciso estar root na minha caixa do Ubuntu. Além disso, um método simples para um único host é apenas fazer ping e verificar a tabela arp arp -ase você quiser usar apenas os comandos normalmente incluídos na instalação inicial de uma distribuição:
arp -a | grep -v incomplete
foo.net (192.168.1.145) at 00:0d:4b:6a:2c:cb [ether] on eth0
Eu sei que esta é uma pergunta muito antiga. No entanto, o nmap não me deu nenhum endereço MAC. arp-scan fez. Obrigado.
27417 MikeP
5
Dependendo da topologia da sua LAN, a melhor opção é exibir a tabela de endereços MAC nos seus switches.
Por exemplo, se sua infraestrutura de switch for Cisco, você pode tentar uma
sh mac address-table
em todos os interruptores.
Se você tiver muitos comutadores, poderá automatizar esta tarefa usando o SNMP .
Outra opção e (novamente), dependendo da sua topologia e do seu tipo de equipamento de rede, você também pode tentar obter os endereços mac dos seus dispositivos exibindo a tabela arp nos seus roteadores.
Com um desses dois métodos, você também obterá a lista de endereços mac de qualquer dispositivo conectado à sua infra-estrutura de rede: PCs, impressoras, pontos de acesso etc. No primeiro caso, até mesmo dispositivos sem endereço IP. Isso pode ou não ser o desejado, mas pode valer a pena tentar.
Respostas:
Você pode usar o nmap para executar uma verificação de ping.
Editar:
Um script sed para filtrar a saída para IP -> MAC - coloque isso em um arquivo.
e use assim
fonte
Use o nmap. Importante executá-lo como root para obter os endereços MAC. Exemplo:
Irá verificar 192.168.1.1 - 192.168.1.255. Consulte a notação CIDR no wiki se você não estiver familiarizado com essa notação de sub-rede.
Você deve conseguir o nmap dos repositórios de qualquer distribuição Linux recente, por exemplo
ou
Um exemplo de saída da minha rede:
fonte
Contanto que você execute este comando a partir de um host no mesmo segmento de rede,
nmap
relatará que todo o endereço MAC para cada host é descoberto.Por exemplo:
Para os endereços MAC, eu preciso estar root na minha caixa do Ubuntu. Além disso, um método simples para um único host é apenas fazer ping e verificar a tabela arp
arp -a
se você quiser usar apenas os comandos normalmente incluídos na instalação inicial de uma distribuição:fonte
Tente este comando:
fonte
Dependendo da topologia da sua LAN, a melhor opção é exibir a tabela de endereços MAC nos seus switches.
Por exemplo, se sua infraestrutura de switch for Cisco, você pode tentar uma
em todos os interruptores.
Se você tiver muitos comutadores, poderá automatizar esta tarefa usando o SNMP .
Outra opção e (novamente), dependendo da sua topologia e do seu tipo de equipamento de rede, você também pode tentar obter os endereços mac dos seus dispositivos exibindo a tabela arp nos seus roteadores.
Com um desses dois métodos, você também obterá a lista de endereços mac de qualquer dispositivo conectado à sua infra-estrutura de rede: PCs, impressoras, pontos de acesso etc. No primeiro caso, até mesmo dispositivos sem endereço IP. Isso pode ou não ser o desejado, mas pode valer a pena tentar.
fonte
Talvez o arp-scan também seja uma opção:
Veja um exemplo aqui: Guia do usuário do Arp-scan
fonte
Desde que você mencionou o ssh em máquinas na sua rede, você também pode usar este shorty:
fonte
Você pode usar um programa chamado SIW, é gratuito e varre a rede sem necessidade de permissões ou argumentos.
URL: http://www.gtopala.com/
Disponível em .exe ou instalação completa.
fonte