C'è un modo semplice per scoprire l'indirizzo mac di tutte le macchine sulla mia rete piuttosto che fare un SSH in ciascuna e ifconfig | grep HWaddr
se ci sono 300 macchine sulla rete ho davvero bisogno di una soluzione semplice.
C'è un modo semplice per scoprire l'indirizzo mac di tutte le macchine sulla mia rete piuttosto che fare un SSH in ciascuna e ifconfig | grep HWaddr
se ci sono 300 macchine sulla rete ho davvero bisogno di una soluzione semplice.
Risposte:
È possibile utilizzare nmap per eseguire una scansione 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
Modificare:
Uno script sed per filtrare l'output su IP -> MAC - inserendolo in un file.
/^Host.*latency.*/{
$!N
/MAC Address/{
s/.*(\(.*\)) .*MAC Address: \(.*\) .*/\1 -> \2/
}
}
/[Nn]map/d
s/^Host .*is up/& but MAC Address cannot be found/
e usalo in questo modo
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
Usa nmap. Importante eseguirlo come root in modo da ottenere gli indirizzi MAC. Esempio:
sudo nmap -sP 192.168.1.0/24
Scansionerà 192.168.1.1 - 192.168.1.255. Cerca la notazione CIDR sul wiki se non hai familiarità con questa notazione di sottorete.
Dovresti essere in grado di ottenere nmap dai repository di qualsiasi distribuzione Linux recente, ad es
sudo apt-get install nmap
o
sudo yum install nmap
Un esempio di output dalla mia rete:
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).
Finché si esegue questo comando da un host nello stesso segmento di rete, nmap
verrà segnalato tutto l'indirizzo MAC per ogni host scoperto.
Per esempio:
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)
Per gli indirizzi MAC ho bisogno di essere root sul mio Ubuntu box. Inoltre, un metodo semplice per un singolo host è solo quello di eseguire il ping e guardare la tabella arp arp -a
se si desidera utilizzare solo i comandi normalmente inclusi nell'installazione iniziale di una distribuzione:
arp -a | grep -v incomplete
foo.net (192.168.1.145) at 00:0d:4b:6a:2c:cb [ether] on eth0
Prova questo comando:
arp-scan --interface=eth0 192.168.1.0/24
A seconda della topologia LAN, la soluzione migliore potrebbe essere quella di visualizzare la tabella degli indirizzi MAC sugli switch.
Ad esempio, se la tua infrastruttura di switch è Cisco, puoi provare a
sh mac address-table
su ogni interruttore.
Se si dispone di molti switch, è possibile automatizzare questa attività tramite SNMP .
Un'altra opzione e (di nuovo) a seconda della topologia e del tipo di apparecchiatura di rete in uso, è possibile anche provare a ottenere gli indirizzi mac dei dispositivi che visualizzano la tabella arp sui router.
Con uno di questi due metodi otterrai anche l'elenco degli indirizzi mac di tutti i dispositivi collegati alla tua infrastruttura di rete: PC, stampanti, punti di accesso, ecc. Nel primo caso, anche di dispositivi senza un indirizzo IP. Questo può o non può essere quello che vuoi, ma può valere la pena provarlo.
Forse arp-scan è anche un'opzione:
Vedi un esempio qui: Guida per l'utente di Arp-scan
È possibile utilizzare un programma chiamato SIW, è gratuito e scansiona la rete senza autorizzazioni o argomenti.
Disponibile in .exe o installazione completa.