Obtenga una lista de dispositivos en red a través de CLI

1

Quiero obtener todas las entradas que normalmente obtendría a través del Finder, pero usando la línea de comandos. Así que a partir de esto:

Quierorecuperaralmenos"celeste-7" y "Time Capsule" (solo la etiqueta está bien) directamente en un script de bash o applecript.

Los comandos como ippfind y dns-sd -B _ssh._tcp . no muestran todos los dispositivos que veo en el Finder, ni siquiera la mitad.

¿Alguna idea?

    
pregunta Jerome 13.11.2017 - 17:45

2 respuestas

2

Está utilizando el dns-sd correcto para descubrir servicios locales. El problema es que necesitas buscar todos los elementos potenciales.

Uso compartido de pantalla, uso compartido de archivos AFP, uso compartido de archivos SMB, etc. ...

Peor aún, si tienes dispositivos conectados a Mi Mac e iCloud conectados, no todos son locales, pero aún son visibles desde la línea de comandos:

Si desea eliminar todos los puertos / protocolos, puede usar la Utilidad de red para analizar cada dispositivo que vea en la barra lateral del buscador y buscar los puertos comunes que están escuchando.

La gran lista de puertos y nombres de Apple está aquí:

Sin embargo, creo que obtendrás una buena cobertura si comienzas con el control remoto, el intercambio de archivos (VNC / AFP / SMB).

    
respondido por el bmike 13.11.2017 - 19:01
0

Puedes usar dos comandos: ping y arp para obtener la información que necesitas.

ping le permite transmitir a su red y cualquier dispositivo que en la red responderá.

Supongamos que su red es 192.168.1.0. Transmita su ping usando la dirección de transmisión 192.168.1.255

$ ping 192.168.1.255 

Esto continuará para siempre, así que Control C o use la opción -t para establecer un tiempo de espera. Por ejemplo, durante 20 segundos de pining ...

$ ping -t 20 192.168.1.255

Obtendrás un montón de respuestas; algunos de los cuales serán duplicados. Esto continuará durante 20 segundos y luego se detendrá.

A continuación, arp para encontrar los nombres:

$ 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]

Eso es una muestra truncada de la salida de mi red (nombres, MAC e IP aleatorizados para seguridad). Como puede ver, incluye los nombres de host y los MAC de los dispositivos que tengo en mi red.

Los dispositivos para dormir (como mi impresora HP y mi MacBook Pro) no respondieron y no están en la tabla de arp. Por otra parte, tampoco aparecen en el Finder.

Con la aplicación de grep y awk , deberías poder extraer lo que necesites.

    
respondido por el Allan 13.11.2017 - 19:50

Lea otras preguntas en las etiquetas