Ottieni nomi di dispositivi sulla rete


14

Volevo sapere i nomi di tutti i dispositivi sulla rete. Ho già provato senza successo molti comandi trovati sul web, ma nulla ha funzionato come volevo.

Fondamentalmente, quando inserisco le impostazioni del mio router, posso ottenere i nomi dei dispositivi collegati alla mia rete. Posso ottenerlo anche su alcune applicazioni, quindi immagino che possa essere fatto in qualche modo.

Voglio un elenco di nomi di tutti i dispositivi collegati alla mia rete Wi-Fi tramite la riga di comando.

Grazie


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

Risposte:


8

Tendo a usare fing per questo, è uno scanner che esegue la scansione della sottorete in cui ci si trova e tenta di estrarre i nomi host e visualizzarli insieme a IP e 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

Come puoi vedere, non tutti i dispositivi forniscono il loro nome host; ad esempio alcune periferiche come le stampanti non forniscono sempre nomi host, ma la maggior parte dei dispositivi lo fa. Cerca anche di indovinare il produttore analizzando la parte ID del MAC

Funziona su Raspberry Pi, l'ho installato sul mio poco fa e funziona come previsto.


1
Come si installa fing? Il tuo link è morto e non è incluso in nessuno dei repository Raspberry Pi.
Patrick Cook,

5
Indica come hai chiamato fing per ottenere quell'output. Senza il comando, la risposta è incompleta.
user666412

2
Ho usato 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 per installare, quindi fingper eseguirlo. Non ha segnalato un nome host per il mio Rpi, ma lo ha riconosciuto come HW Address: B8:27:EB:1B:E6:0C (Raspberry Pi Foundation).
Dave X,

1
Nemmeno un nome host rilevato su una rete di 22 dispositivi su una prima rete di test. Lo stesso con altri 24 host. Fing, per ora (Febr 2018) mi sembra un casino.
Sopalajo de Arrierez,

5
Il link è ancora corretto? Sembra essere un prodotto IoT piuttosto che uno strumento da riga di comando ora.
Venryx,

8

Nessuna delle risposte di cui sopra ha funzionato per me, quindi ho iniziato a scherzare con arp-scan. Quindi, quello che ho trovato ha funzionato è stato:

arp-scan -I [WIFI INTERFACE] -l

arp-scan esegue la scansione della rete ed elenca i dispositivi. -Io seleziona l'interfaccia e -l dice ad arp-scan di guardare la rete locale. Quindi, digitare

arp

Questo restituirà i dispositivi arp-scan appena localizzati ed elencherà i loro nomi host e indirizzi MAC.


6

Penso che sia necessario essere più precisi sul problema, in particolare la definizione del nome di un dispositivo .

Sfortunatamente al momento non ho accesso a un Raspberry Pi, quindi tutto ciò che viene visualizzato qui proviene dalla mia scatola di Debian 7.

nmap -sP fa invertire le ricerche DNS, quindi se i tuoi dispositivi hanno voci DNS inverse, il suo output è simile al seguente:

> 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).
…

Gli host che bloccano le sonde ping non verranno visualizzati nell'output. Né gli host che non offrono servizi sulle porte sottoposte a scansione con l' -popzione. La scansione dell'intera gamma di porte con -p 0-65535, pur generando un footprint di rete significativo, non mostrerà ancora host che semplicemente non hanno porte aperte.

Le uniche informazioni affidabili che hai sugli host nella tua rete sono che hanno indirizzi MAC e IP. Il server DHCP li conosce entrambi poiché ha assegnato gli indirizzi IP. Inoltre, molti client DHCP inviano un nome host incluso nella loro richiesta DHCP, quindi il server DHCP ha un nome per questo dispositivo, anche se quel nome non appare da nessun'altra parte (DNS, SMB, ...).

Sfortunatamente il tuo server DHCP non sembra riportare gli indirizzi IP assegnati dinamicamente al tuo server dei nomi, quindi non puoi recuperare queste informazioni.

Per trovare tutti i dispositivi all'interno della rete, è possibile eseguire il dump della tabella ARP dopo aver eseguito il ping di tutti gli host (ad esempio utilizzando 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
…

Con gli indirizzi MAC e IP hai le uniche informazioni coerenti sul tuo vicinato di rete. Il sondaggio per una porta aperta 445 mostrerà dispositivi che molto probabilmente supportano SMB (cioè rete di Windows) e quindi hanno un nome di Windows.

La connessione ad altre porte aperte (ad es. 21 / ftp, 22 / ssh, 23 / telnet, ...) può anche offrire i nomi host, ma sempre in modo dipendente dal protocollo - e gli host possono teoricamente chiamarsi in modo diverso su tutte le porte.

In alternativa, è possibile configurare il proprio server DHCP e DNS sul Pi e fornire un servizio DNS inverso funzionante.

Se tutti i tuoi dispositivi supportano Zeroconf , potresti essere in grado di eseguire un rilevamento dei dispositivi in ​​questo modo.


3

Per ottenere il nome del dispositivo degli host Windows, utilizzare

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

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


Ciao Simone! Questo funziona solo per gli host Windows, ma devo scoprire tutti i nomi dei dispositivi sulla mia rete.
Federico Ponzi,

1
Potrei sbagliarmi, ma non sono sicuro di quale sarebbe il concetto di "nome dispositivo" per una macchina Linux. La cosa più vicina a cui riesco a pensare è il nome host definito in / etc / HOSTNAME o / etc / hostname, ma non so se puoi ottenerlo chiedendo alla macchina (a meno che, ovviamente, un server DNS non lo fornisca) .
rand

1

Su Linux, puoi usare nbtscanper ottenere ciò che cerchi.

Esegui sudo apt-get install nbtscanper installare.

Per visualizzare i nomi host del dispositivo collegati alla rete,

correre sudo nbtscan 192.168.0.1-192.168.0.255,

supponendo che l'host sia su 192.168.0.1e usi una subnet mask di 255.255.255.0. Regola l'intervallo IP in base alla configurazione di rete.


Questo può risolvere solo i nomi NetBIOS.
Pierz,

E, per i miei test, sembra non mostrare tutti i nomi NetBIOS nella rete.
Sopalajo de Arrierez,

0

Tre risposte qui si riferiscono nmapma ho trovato il prefisso sudo(che nessuna delle risposte fa) fa la differenza nel mondo:

$ 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

Mi sono imbattuto in queste domande e risposte perché sto studiando un progetto su come visualizzare i nomi leggibili dall'uomo anziché gli indirizzi IP codificati dal computer e gli indirizzi MAC sui dispositivi.

In particolare, desidero visualizzare "Toshiba 43" 4K TV "anziché" (sconosciuto) "per MAC 99:99:99:99:99:36(non un indirizzo reale).

Successivamente voglio espandere il progetto oltre la Local Area Network su Internet dove verrà visualizzato " Stack Exchange " anziché 999.999.9.99" Ask Ubuntu " anziché 999.999.9.99quando guardo gli indirizzi IP esterni con cui la mia macchina interagisce.


-1

jcbermu è molto vicino, ma dalla pagina man di 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.

Se è memorizzato in una voce rDNS, questo lo troverà, altrimenti potrebbe essere necessario ascoltare le richieste DHCP e intercettarle.


-2

Hai bisogno di nmap . Emettere un comando come:

nmap -sP 192.168.1.0/24

e farà un rilevamento di rete sulla sottorete che 192.168.1.0 - 192.168.1.255mostra i nomi e gli indirizzi IP di tutti i dispositivi su quella rete.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.