Obtenir les noms des appareils sur le réseau

14

Je voulais connaître les noms de tous les appareils du réseau. J'ai déjà essayé sans grand succès de nombreuses commandes trouvées sur le web, mais rien ne fonctionnait comme je le voulais.

Fondamentalement, lorsque j'entre les paramètres de mon routeur, je peux obtenir les noms des appareils connectés à mon réseau. Je peux l'obtenir également sur certaines applications, donc je suppose que cela peut être fait d'une manière ou d'une autre.

Je veux une liste des noms de tous les appareils connectés à mon réseau Wi-Fi via la ligne de commande.

Merci


pi@raspberrypi ~ $ nmap -sP 192.168.4.0/24

Starting Nmap 6.00 ( http://nmap.org ) at 2015-03-05 13:55 UTC
Nmap scan report for 192.168.4.1
Host is up (0.0055s latency).
Nmap scan report for 192.168.4.2
Host is up (0.42s latency).
Nmap scan report for 192.168.4.4
Host is up (0.045s latency).
Nmap scan report for 192.168.4.5
Host is up (0.47s latency).
Nmap scan report for 192.168.4.6
Host is up (0.0032s latency).
Nmap scan report for 192.168.4.7
Host is up (0.79s latency).
Nmap scan report for 192.168.4.8
Host is up (0.0024s latency).
Nmap scan report for 192.168.4.9
Host is up (0.038s latency).
Nmap scan report for 192.168.4.10
Host is up (0.034s latency).
Nmap scan report for 192.168.4.11
Host is up (0.029s latency).
Nmap scan report for 192.168.4.22
Host is up (0.12s latency).
Nmap scan report for 192.168.4.27
Host is up (0.031s latency).
Nmap scan report for 192.168.4.28
Host is up (0.012s latency).
Nmap scan report for 192.168.4.100
Host is up (0.0038s latency).
Nmap done: 256 IP addresses (14 hosts up) scanned in 49.30 seconds
Federico Ponzi
la source

Réponses:

8

J'ai tendance à utiliser fing pour cela, c'est un scanner qui scanne le sous-réseau sur lequel vous vous trouvez et essaie d'extraire les noms d'hôtes et de les afficher avec ip et MAC.

Ex:

14:19:05 > Discovery profile: Default discovery profile
14:19:05 > Discovery class:   data-link (data-link layer)
14:19:05 > Discovery on:      192.168.1.0/24

14:19:05 > Discovery round starting.
14:19:05 > Host is up:   192.168.1.151
           HW Address:   XX:XX:XX:XX:XX:XX
           Hostname:     My-laptop-hostname

14:19:05 > Host is up:   192.168.1.1
           HW Address:   YY:YY:YY:YY:YY:YY
           Hostname:     router.asus.com

14:19:06 > Discovery progress 25%
14:19:07 > Discovery progress 50%
14:19:08 > Discovery progress 75%
14:19:05 > Host is up:   192.168.1.10
           HW Address:   AA:BB:CC:DD:EE:FF (ASUSTek COMPUTER)

14:19:05 > Host is up:   192.168.1.11
           HW Address:   GG:HH:II:JJ:KK:LL

14:19:06 > Host is up:   192.168.1.99
           HW Address:   MM:NN:OO:PP:QQ:RR (Apple)
           Hostname:     iPhoneOfSomeone

Comme vous pouvez le voir, tous les appareils ne donnent pas leur nom d'hôte; par exemple, certains périphériques comme les imprimantes ne fournissent pas toujours des noms d'hôte, mais la plupart des périphériques le font. Il essaie même de deviner le fabricant en analysant la partie id du MAC

Il fonctionne sur le Raspberry Pi, je l'ai installé il y a quelque temps sur le mien et il fonctionne comme prévu.

Jake
la source
1
Comment installez-vous fing? Votre lien est mort et il n'est inclus dans aucun des référentiels Raspberry Pi.
Patrick Cook
5
Veuillez indiquer comment vous avez appelé fing pour obtenir cette sortie. Sans la commande, la réponse est incomplète.
user666412
2
J'ai utilisé un apt-get install libpcap-dev ; wget https://www.fing.io/wp-content/uploads/2016/10/overlook-fing-3.0.deb ; dpkg -i overlook-fing-3.0.deb pour installer, puis fingpour l'exécuter. Il n'a pas signalé de nom d'hôte pour mon Rpi, mais l'a reconnu comme HW Address: B8:27:EB:1B:E6:0C (Raspberry Pi Foundation).
Dave X
1
Pas même un nom d'hôte détecté sur un réseau de 22 appareils sur un premier réseau de test. Même chose avec 24 autres hôtes. Fing, pour l'instant (février 2018) me semble un gâchis.
Sopalajo de Arrierez
5
Le lien est-il toujours correct? Il semble que ce soit un produit IoT plutôt qu'un outil de ligne de commande maintenant.
Venryx
8

Aucune des réponses ci-dessus n'a fonctionné pour moi, alors j'ai commencé à jouer avec arp-scan. Donc, ce que j'ai trouvé a fonctionné était:

arp-scan -I [WIFI INTERFACE] -l

arp-scan analyse votre réseau et répertorie les périphériques. -Je sélectionne l'interface et -l indique à arp-scan de regarder le réseau local. Ensuite, saisissez

arp

Cela renverra les périphériques arp-scan juste localisés et listera leurs noms d'hôte et adresses MAC.

GarrukApex
la source
6

Je pense que vous devez être plus précis sur votre problème, en particulier sur la définition du nom d'un appareil .

Malheureusement, je n'ai pas accès à un Raspberry Pi pour le moment, donc tout ce qui est affiché ici vient de ma boîte Debian 7.

nmap -sP n'inverse pas les recherches DNS, donc si vos appareils ont des entrées DNS inversées, sa sortie ressemble à ceci:

> nmap -sP 192.168.4.0/24
Starting Nmap 6.00 ( http://nmap.org ) at 2015-03-12 06:24 CET
Nmap scan report for device1.local (192.168.4.1)
Host is up (0.0021s latency).
Nmap scan report for device2.local (192.168.4.2)
Host is up (0.014s latency).
…

Les hôtes qui bloquent les sondes ping n'apparaîtront pas dans la sortie. Aucun hôte n'offrant non plus de services sur les ports que vous numérisez à l'aide de l' -poption. L'analyse de toute la plage de ports avec -p 0-65535, tout en générant une empreinte réseau importante, n'affichera toujours pas les hôtes qui n'ont tout simplement pas de ports ouverts.

La seule information fiable dont vous disposez sur les hôtes de votre réseau est qu'ils ont des adresses MAC et IP. Votre serveur DHCP les connaît tous les deux car il a attribué les adresses IP. De plus, de nombreux clients DHCP envoient un nom d'hôte inclus dans leur demande DHCP, donc le serveur DHCP a un nom pour ce périphérique, même si ce nom n'apparaît nulle part ailleurs (DNS, SMB,…).

Malheureusement, votre serveur DHCP ne semble pas signaler les adresses IP attribuées dynamiquement à votre serveur de noms, vous ne pouvez donc pas récupérer ces informations.

Pour trouver tous les périphériques de votre réseau, vous pouvez vider la table ARP après avoir envoyé une requête ping à tous les hôtes (par exemple en utilisant nmap -sP):

> arp -vn
Address               HWtype  HWaddress           Flags Mask            Iface
192.168.4.1           ether   12:34:56:78:9a:bc   C                     wlan0
192.168.4.2           ether   11:22:33:44:55:66   C                     wlan0
…

Avec les adresses MAC et IP, vous disposez des seules informations cohérentes sur votre voisinage réseau. La recherche d'un port ouvert 445 vous montrera les périphériques qui prennent probablement en charge SMB (c'est-à-dire le réseau Windows) - et ont donc un nom Windows.

La connexion à d'autres ports ouverts (par exemple 21 / ftp, 22 / ssh, 23 / telnet,…) peut également offrir les noms d'hôte, mais toujours de manière dépendante du protocole - et les hôtes peuvent théoriquement s'appeler différemment sur tous les ports.

Vous pouvez également configurer votre propre serveur DHCP et DNS sur le Pi et fournir un service DNS inversé fonctionnel.

Si tous vos appareils prennent en charge Zeroconf , vous pourrez peut-être faire une découverte d'appareil de cette façon.

ua2b
la source
3

Afin d'obtenir le nom d'appareil des hôtes Windows, utilisez

nmap --script smb-os-discovery -p 445 192.168.1.0/24

(source: http://www.blackbytes.info/2013/07/finding-windows-host/ )

rand
la source
Ciao Simone! Cela ne fonctionne que pour les hôtes Windows, mais j'ai besoin de découvrir chaque nom d'appareil sur mon réseau.
Federico Ponzi
1
Je me trompe peut-être, mais je ne suis pas sûr de ce que serait le concept de "nom de périphérique" pour une machine Linux. La chose la plus proche à laquelle je peux penser est le nom d'hôte défini dans / etc / HOSTNAME ou / etc / hostname, mais je ne sais pas si vous pouvez l'obtenir en demandant à la machine (à moins, bien sûr, qu'un serveur DNS le fournisse) .
rand
1

Sous Linux, vous pouvez utiliser nbtscanpour réaliser ce que vous cherchez.

Exécutez sudo apt-get install nbtscanpour installer.

Pour afficher les noms d'hôte des appareils connectés à votre réseau,

courir sudo nbtscan 192.168.0.1-192.168.0.255 ,

en supposant que l'hôte est à 192.168.0.1et utilise un masque de sous-réseau de 255.255.255.0. Ajustez la plage IP en fonction de la configuration de votre réseau.

TheLinuxEvangelist
la source
Cela ne peut résoudre que les noms NetBIOS.
Pierz
Et, pour mes tests, il ne semble pas afficher tous les noms NetBIOS du réseau.
Sopalajo de Arrierez
0

Trois réponses se réfèrent ici nmapmais j'ai trouvé que le préfixe sudo(ce qu'aucune des réponses ne fait) fait toute la différence dans le monde:

$ nmap -sP 192.168.1.0/24

Starting Nmap 7.01 ( https://nmap.org ) at 2019-07-13 14:55 MDT
Nmap scan report for 192.168.1.65
Host is up (0.00037s latency).
Nmap scan report for 192.168.1.66
Host is up (0.00035s latency).
Nmap scan report for 192.168.1.67
Host is up (0.00028s latency).
Nmap scan report for 192.168.1.68
Host is up (0.00025s latency).
Nmap scan report for 192.168.1.70
Host is up (0.017s latency).
Nmap scan report for 192.168.1.254
Host is up (0.00070s latency).
Nmap done: 256 IP addresses (6 hosts up) scanned in 6.86 seconds

$ sudo nmap -sP 192.168.1.0/24

Starting Nmap 7.01 ( https://nmap.org ) at 2019-07-13 14:56 MDT
Nmap scan report for 192.168.1.65
Host is up (0.00050s latency).
MAC Address: 99:99:99:99:99:A6 (Unknown)
Nmap scan report for 192.168.1.66
Host is up (0.00016s latency).
MAC Address: 99:99:99:99:99:D9 (Sony)
Nmap scan report for 192.168.1.70
Host is up (-0.087s latency).
MAC Address: 99:99:99:99:99:36 (Unknown)
Nmap scan report for 192.168.1.254
Host is up (0.0020s latency).
MAC Address: 99:99:99:99:99:00 (Actiontec Electronics)
Nmap scan report for 192.168.1.67
Host is up.
Nmap scan report for 192.168.1.68
Host is up.
Nmap done: 256 IP addresses (6 hosts up) scanned in 2.41 seconds

Je suis tombé sur cette Q&R parce que je recherche un projet sur la façon d'afficher les noms lisibles par l'homme plutôt que les adresses IP codées par ordinateur et les adresses MAC sur les appareils.

En particulier, je veux que "Toshiba 43" 4K TV "s'affiche plutôt que" (inconnu) "pour MAC 99:99:99:99:99:36 (pas l'adresse réelle) ci-dessus.

Plus tard, je souhaite étendre le projet au-delà du réseau local à Internet où " Stack Exchange " s'affichera au lieu de 999.999.9.99ou " Ask Ubuntu " s'affichera au lieu de 999.999.9.99lorsque je regarde les adresses IP externes avec lesquelles ma machine interagit.

WinEunuuchs2Unix
la source
-1

jcbermu est très proche, mais à partir de la page de manuel de nmap:

-sL (List Scan) .
       The list scan is a degenerate form of host discovery that simply lists each host of the network(s) specified, without sending any packets to the target hosts. By default, Nmap still does
       reverse-DNS resolution on the hosts to learn their names.

S'il est stocké dans une entrée rDNS, il le trouvera, sinon vous devrez peut-être écouter les requêtes DHCP et les intercepter.

SailorCire
la source
-2

Vous avez besoin de nmap . Émettez une commande comme:

nmap -sP 192.168.1.0/24

et il fera une découverte du réseau sur le sous-réseau 192.168.1.0 - 192.168.1.255vous montrant les noms et les adresses IP de tous les périphériques sur ce réseau.

jcbermu
la source