Puoi utilizzare due comandi: ping
e arp
per ottenere le informazioni di cui hai bisogno.
ping
ti consente di trasmettere alla tua rete e qualsiasi dispositivo che sulla rete e in grado di rispondere risponderà.
Supponiamo che la tua rete sia 192.168.1.0. Trasmetti il tuo ping usando l'indirizzo di broadcast 192.168.1.255
$ ping 192.168.1.255
Questo andrà avanti all'infinito, quindi Control C o usare l'opzione -t
per impostare un timeout. Ad esempio, per 20 secondi di struggimento ...
$ ping -t 20 192.168.1.255
Riceverai un sacco di risposte; alcuni dei quali saranno duplicati. Questo continuerà per 20 secondi, quindi si fermerà.
Successivamente, arp
per trovare i nomi:
$ arp -a
allans-imac.home (192.168.1.12) at a8:20:66:40:5b:10 on en0 ifscope permanent [ethernet]
grace-pc.home (192.168.1.18) at 0:34:f6:5:f7:29 on en0 ifscope [ethernet]
grace-iphone.home (192.168.1.150) at b8:63:3a:14:3e:f7 on en0 ifscope [ethernet]
nas.home (192.168.1.23) at 0:12:43:20:aa:3d on en0 ifscope [ethernet]
Questo è un campione troncato dell'output dalla mia rete (nomi, MAC e IP randomizzati per sicurezza). Come puoi vedere, include gli hostname e i MAC dei dispositivi che ho sulla mia rete.
I dispositivi Sleeping (come la mia stampante HP e il mio MacBook Pro) non hanno risposto e non si trovano nella tabella arp. Inoltre, non si presentano nemmeno nel Finder.
Con l'applicazione di grep
e awk
, dovresti essere in grado di estrarre ciò che ti serve.