Comment puis-je lister toutes les adresses MAC et leurs adresses IP associées des machines connectées à mon réseau local (LAN)?
Réponses
Trop de publicités?Vous pouvez utiliser l'utilitaire Nmap pour cela. Nmap est un utilitaire gratuit de numérisation de réseau.
Essayez simplement :
sudo nmap -sn 192.168.1.0/24
Veuillez substituer votre identifiant réseau et votre masque de sous-réseau.
Comment trouver un identifiant réseau et un masque de sous-réseau
Utilisez la commande ip a
:
bash~$ ip a
1: lo: mtu 65536 qdisc noqueue state UNKNOWN
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
inet6 ::1/128 scope host valid_lft forever preferred_lft forever
2: wlan0: mtu 1500 qdisc mq state UP qlen 1000
link/ether c4:85:08:94:ee:9a brd ff:ff:ff:ff:ff:ff
inet 192.168.3.66/24 brd 192.168.3.255 scope global wlan0
inet6 fe80::c685:8ff:fe94:ee9a/64 scope link valid_lft forever preferred_lft forever
Ici au point 2, j'ai le périphérique wlan0
. Il indique inet 192.168.3.66/24 brd 192.168.3.255 scope global wlan0
, adresse IP : 192.168.3.66
, masque de sous-réseau : 24
. L'identifiant réseau est 192.168.3.0
, il suffit de substituer le dernier chiffre par 0.
Ou comme le dit man nmap
:
sudo nmap -sn 192.168.1.0/24
Voici une petite citation de la page de manuel, nmap(1):
-sn (Pas d'analyse de port)
Cette option indique à Nmap de ne pas effectuer d'analyse de port après la découverte de l'hôte, et d'imprimer uniquement les hôtes disponibles qui ont répondu à l'analyse. C'est souvent appelé une "analyse de ping", mais vous pouvez également demander l'exécution de traceroute et de scripts hôtes NSE. C'est par défaut une étape plus intrusive que l'analyse de liste, et peut souvent être utilisé à des fins similaires. Il permet une reconnaissance légère d'un réseau cible sans attirer beaucoup l'attention. Savoir combien d'hôtes sont en ligne est plus précieux pour les attaquants que la liste fournie par une analyse de liste de chaque adresse IP et nom d'hôte.
Les administrateurs système trouvent souvent cette option également précieuse. Il peut être facilement utilisé pour compter les machines disponibles sur un réseau ou surveiller la disponibilité des serveurs. C'est souvent appelé une balayage ping, et est plus fiable que de pinguer l'adresse de diffusion car de nombreux hôtes ne répondent pas aux requêtes de diffusion.
La découverte d'hôte par défaut effectuée avec
-sn
consiste en une demande d'écho ICMP, un SYN TCP sur le port 443, un ACK TCP sur le port 80, et une demande de timestamp ICMP par défaut. Lorsqu'exécuté par un utilisateur non privilégié, seuls les paquets SYN sont envoyés (utilisant un appelconnect
) aux ports 80 et 443 sur la cible. Lorsqu'un utilisateur privilégié essaie de scanner des cibles sur un réseau Ethernet local, des requêtes ARP sont utilisées sauf si--send-ip
a été spécifié. L'option-sn
peut être combinée avec l'un des types de sondes de découverte (les options *`-P**, à l'exception de **
-Pn`**) pour une plus grande flexibilité. Si l'une de ces options de type de sonde et de numéro de port est utilisée, les sondes par défaut sont remplacées. Lorsque des pare-feu stricts sont en place entre l'hôte source exécutant Nmap et le réseau cible, l'utilisation de ces techniques avancées est recommandée. Sinon, des hôtes pourraient être manqués lorsque le pare-feu abandonne les sondes ou leurs réponses.Dans les versions précédentes de Nmap,
-sn
était connu sous le nom de-sP
.
arp
vous renverra lentement une liste des adresses MAC actives et des adresses IP ou de leurs noms d'hôte s'ils en ont un. Si vous voulez que cela aille plus vite, vous pouvez utiliser arp -n
qui devrait ignorer les recherches DNS. Si vous avez besoin de le parser en quelque chose, arp -an
ignorera les colonnes de largeur fixe.
$ arp
Address HWtype HWaddress Flags Mask Iface
10.10.0.11 ether 00:04:ff:ff:ff:d0 C eth0
10.10.0.16 ether 00:04:ff:ff:ff:a6 C eth0
raspbmc.local ether 00:1f:ff:ff:ff:9c C eth0
10.10.0.19 ether 00:04:ff:ff:ff:c9 C eth0
10.10.0.12 ether bc:f5:ff:ff:ff:93 C eth0
10.10.0.17 ether 00:04:ff:ff:ff:57 C eth0
10.10.0.1 ether 20:4e:ff:ff:ff:30 C eth0
HPF2257E.local ether a0:b3:ff:ff:ff:7e C eth0
10.10.0.15 ether 00:04:ff:ff:ff:b9 C eth0
tim ether 00:22:ff:ff:ff:af C eth0
10.10.0.13 ether 60:be:ff:ff:ff:e0 C eth0
Autrement, votre routeur devrait être en mesure de vous donner une idée des appareils actifs (la plupart le font).
Éditer Conformément au commentaire de davidcl, cette réponse n'est pas aussi parfaite que je l'avais d'abord espéré.
arp
repose sur un contact antérieur de quelque sorte pour fonctionner. Cependant, à mon avis, les appareils modernes sont tous tellement bavards (vous devriez vraiment regarder wireshark - c'est une éducation) au niveau de la diffusion qu'il est peu probable qu'un appareil soit présent sur le réseau sans au moins répondre à une diffusion. (Pour être sûr, vous pouvez d'abord faire un ping de tous les appareils sur le réseau avec 10.10.0.255 et ensuite vous aurez probablement plus de 90% des appareils.)
Pour vous donner une idée de ce que je veux dire, 10.10.0.16 ci-dessus est notre PVR. Il n'y a pas d'interaction directe entre mon PC et le PVR et il n'y a pas de services en cours d'exécution sur le PVR (pas de UPNP/DLNA non plus).
Juste pour passer rapidement en revue les arguments...
- Mais que dire des hackers dans mon réseau ?!
Ils peuvent également bloquer les pings ICMP. Ils peuvent bloquer toutes les réponses à chaque type de scan. - Oh mais sûrement
nmap
est la meilleure solution possible
Quand il est exécuté ici, il manque encore quatre appareils. Quatre appareils qui sont actifs sur le réseau. Soit ils ne répondent pas aux pings, soit nmap n'attend pas assez longtemps pour qu'ils répondent... Je ne sais pas.nmap
est un excellent outil (surtout pour le balayage de ports que vous voudrez peut-être faire ensuite) mais il est encore un peu maladroit (et un peu lent) pour ce problème. Et ne m'appelez pas Shirley.
J'utilise arp-scan
pour cela :
$ sudo arp-scan -l
Interface: eth0, type de liaison de données : EN10MB (Ethernet)
Démarrage de arp-scan 1.8.1 avec 256 hôtes (http://www.nta-monitor.com/tools/arp-scan/)
192.168.2.1 ec:1a:59:61:07:b2 (Inconnu)
192.168.2.50 90:59:af:3d:6d:bc (Inconnu)
192.168.2.51 3c:97:0e:48:22:12 (Inconnu)
192.168.2.52 00:18:31:87:8f:b0 Texas Instruments
4 paquets reçus par le filtre, 0 paquets rejetés par le noyau
Fin de arp-scan 1.8.1 : 256 hôtes analysés en 1,282 secondes (199.69 hôtes/sec). 4 ont répondu
Vous pouvez utiliser arp-scan
.
Installez en utilisant cette commande :
sudo apt-get install arp-scan
Pour lister toutes les adresses IP et les adresses MAC associées, utilisez :
sudo arp-scan --interface=eth0 --localnet
La sortie ressemblera à ceci :
Interface: eth0, type de liaison de données : EN10MB (Ethernet)
Starting arp-scan 1.8.1 avec 16777216 hôtes (http://www.nta-monitor.com/tools/arp-scan/)
192.168.1.3 38:60:77:29:31:36 (Inconnu)
192.168.1.8 4c:72:b9:7c:bb:7e (Inconnu)
192.168.1.110 00:15:17:5f:d2:80 Intel Corporate
192.168.1.111 00:ff:88:5f:fd:f0 (Inconnu)
192.168.1.153 00:15:17:5f:d2:82 Intel Corporate
192.168.1.180 52:54:00:70:04:02 QEMU
192.168.1.199 52:54:00:fe:7f:78 QEMU
GUI
Vous pouvez essayer avahi-discover .
-
Installez-le avec cette commande (ou en cliquant sur le lien ci-dessus) :
sudo apt-get install avahi-discover
-
Exécutez Avahi Zeroconf Browser ou
avahi-discover
depuis un terminal. -
Vous devriez voir une fenêtre avec une liste de périphériques sur votre réseau local.
L'adresse MAC sera la chaîne entre crochets.
Ligne de commande
Vous pouvez utiliser cette commande dans un terminal :
avahi-browse -a -t -d local
Il est installé par défaut.
- Réponses précédentes
- Plus de réponses