101 votes

Listez toutes les adresses MAC et leurs adresses IP associées dans mon réseau local (LAN)

Comment puis-je lister toutes les adresses MAC et leurs adresses IP associées des machines connectées à mon réseau local (LAN)?

73voto

c0rp Points 9110

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 appel connect) 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.

47voto

Mufaka Points 54

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.

44voto

jcrigby Points 541

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

19voto

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

9voto

kiri Points 25860

GUI

Vous pouvez essayer avahi-discover Installer avahi-discover .

  1. Installez-le avec cette commande (ou en cliquant sur le lien ci-dessus) :

     sudo apt-get install avahi-discover
  2. Exécutez Avahi Zeroconf Browser ou avahi-discover depuis un terminal.

  3. 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.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X