Comment trouver l'adresse MAC d'un ordinateur distant ?
Je connais l'adresse IP d'un hôte sur mon propre réseau local. Comment puis-je trouver son adresse MAC (sans avoir à y accéder physiquement) ?
Je connais l'adresse IP d'un hôte sur mon propre réseau local. Comment puis-je trouver son adresse MAC (sans avoir à y accéder physiquement) ?
Si vous êtes sur une machine Windows, ouvrez une boîte de commande (Démarrer…Exécuter…cmd), ping
la machine cible pour que vous ayez pris contact avec elle, puis lancez la commande arp -a
pour afficher votre table ARP locale, qui répertoriera les adresses IP et leurs adresses MAC correspondantes, par exemple,
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
Si vous êtes sur un système basé sur Linux, installez l'utilitaire arp-scan
, puis à partir d'une ligne de commande vous pouvez demander un scan de votre réseau - dans mon cas :
sudo arp-scan 192.168.200.0/24
Si vous utilisez une interface autre qu'Ethernet, par exemple, sans fil, vous devrez le spécifier, comme
sudo arp-scan -I wlan0 192.168.200.0/24
Si vous ne savez pas quelle interface vous utilisez, utilisez simplement la commande appropriée ci-dessous.
ifconfig (For Debian based OS such as Ubuntu)
ip link (For OS like Arch Linux)
La commande arping
est fournie avec le paquet iputils
sur linux. Spécifiez une adresse ip au ping et il renvoie l'adresse MAC, même à travers les commutateurs et les sous-réseaux sur le LAN (du moins, il le fait sur notre 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)
Si vous avez un commutateur géré ou si votre routeur vous permet de voir sa table ARP, vous pouvez l'obtenir à partir de là.
Si l'ordinateur pour lequel vous avez l'IP est en ligne, vous pouvez lui envoyer un ping et obtenir son MAC à partir de votre table ARP locale.
Une note générale pour le bien des autres : il n'est pas possible d'obtenir l'adresse MAC pour les machines qui sont sur un LAN différent car les protocoles de la couche 3 sont utilisés pour l'adressage et la livraison dans ce cas et le MAC est la couche 2.
Vous pouvez utiliser des utilitaires comme http://trogonsoftware.com/trogon-mac-scanner.html ou un autre scanner d'adresses ip\mac pour rechercher sur le réseau les adresses des ordinateurs distants sur le réseau local.
Si votre machine et la machine cible sont toutes deux sur le même sous-réseau, vous pouvez simplement lui envoyer un ping pour que son association IP⟷MAC soit enregistrée via le protocole de résolution d'adresse (ARP).
ping -c1 $IP
arp -n | grep $IP
par exemple si je veux trouver l'IP de 10.1.135.150
:
# 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
Alors interrogez la table ARP
# arp -n | grep 10.1.135.150
10.1.135.150 ether 8c:ae:4c:f4:4d:e1 C eth0
Donc le MAC de 10.1.135.150 est 8c:ae:4c:f4:4d:e1