Come trovare l'indirizzo MAC di un computer remoto?
Conosco l'indirizzo IP di un host sulla mia LAN. Usando questo, come posso trovare il suo indirizzo MAC (senza dovervi accedere fisicamente)?
Conosco l'indirizzo IP di un host sulla mia LAN. Usando questo, come posso trovare il suo indirizzo MAC (senza dovervi accedere fisicamente)?
Se vi trovate su una macchina Windows, aprite una casella di comando (Start…Esegui…cmd), ping
la macchina di destinazione in modo da aver preso contatto con essa, e poi emettete il comando arp -a
per visualizzare la vostra tabella ARP locale, che elencherà gli indirizzi IP e i loro corrispondenti indirizzi MAC, ad es,
C:\Users\L3K> arp -a
Interface: 192.168.200.128 --- 0xb
Internet Address Physical Address Type
192.168.200.1 00-50-7f-c3-5c-88 dynamic
192.168.200.2 00-50-7f-d1-e1-40 dynamic
192.168.200.6 00-80-77-dd-a8-6b dynamic
``` ```
sudo arp-scan 192.168.200.0/24
Se siete su un sistema basato su Linux, installate l'utility arp-scan
, e poi da una linea di comando potete chiedere una scansione della vostra rete - nel mio caso:
sudo arp-scan -I wlan0 192.168.200.0/24
``` ```
ifconfig (For Debian based OS such as Ubuntu)
ip link (For OS like Arch Linux)
Se usate un'interfaccia diversa da Ethernet, ad esempio, senza fili, dovrete specificare che, come
&001 &001
Se non sapete quale interfaccia state usando, usate semplicemente il comando appropriato qui sotto.
&001
Il comando arping
viene fornito con il pacchetto iputils
su linux. Specifica un indirizzo ip al ping e restituisce l'indirizzo MAC, anche attraverso gli switch e le sottoreti della LAN (almeno sulla nostra LAN).
# arping -c 1 -I eth0 10.100.10.11
ARPING 10.100.10.11 from 10.100.10.25 eth0
Unicast reply from 10.100.10.11 [00:22:68:88:F3:90] 0.594ms
Sent 1 probes (1 broadcast(s))
Received 1 response(s)
Se avete uno switch gestito o il vostro router vi permette di visualizzare la sua tabella ARP potete ottenerla da lì.
Se il computer per il quale avete l'IP è online potete pingarlo e ottenere il suo MAC dalla vostra tabella ARP locale.
Una nota generale per il bene degli altri: non è possibile ottenere l'indirizzo MAC per le macchine che si trovano su una LAN diversa poiché i protocolli Layer 3 sono utilizzati per l'indirizzamento e la consegna in questo caso e il MAC è Layer 2.
È possibile utilizzare utility come http://trogonsoftware.com/trogon-mac-scanner.html o un altro scanner di indirizzi ip \mac per la scansione della rete alla ricerca di indirizzi di computer remoti su LAN.
Se sia la vostra macchina che la macchina di destinazione si trovano sulla stessa sottorete, potete semplicemente pingarla per far sì che la sua associazione IP⟷MAC sia registrata tramite Address Resolution Protocol (ARP).
ping -c1 $IP
arp -n | grep $IP
``` ```
# ping -c1 10.1.135.150
PING 10.1.135.150 (10.1.135.150) 56(84) bytes of data.
64 bytes from 10.1.135.150: icmp_seq=1 ttl=64 time=1.88 ms
--- 10.1.135.150 ping statistics ---
1 packets transmitted, 1 received, 0% packet loss, time 0ms
rtt min/avg/max/mdev = 1.883/1.883/1.883/0.000 ms
ad esempio se voglio trovare l'IP di 10.1.135.150
:
# arp -n | grep 10.1.135.150
10.1.135.150 ether 8c:ae:4c:f4:4d:e1 C eth0
``` &001
Allora interrogate la tabella ARP
&001 &001
Quindi il MAC del 10.1.135.150 è `8c:ae:4c:f4:4d:e1`