¿Puedo usar la dirección mDNS de Back To My Mac y ssh y otras rutas de tráfico?

24

En Lion e iCloud, el antiguo nombre de mDNS de MobileMe y Snow Leopard ha cambiado y ya no funciona.

Me pregunto cómo usar las herramientas de línea de comandos para averiguar el nombre DNS que Apple ha asignado a mi Mac. Quiero usar ese nombre DNS en otros dispositivos que no son OSX (como Preguntar en mi iPad / iPhone) para volver a mi Mac cuando estoy fuera de casa.

bmike
fuente

Respuestas:

36

Actualizar

Hay una manera muy simple de simplemente SSH a una computadora BTMM / iCloud:

En Terminal, en el menú Shell , seleccione Nueva conexión remota ... (cmd + shift + K). Desde aquí puede navegar por ssh / sftp / ftp / telnet hosts en la red local o BTMM.

Obviamente, esto es mucho más fácil para las aplicaciones individuales que admiten la búsqueda de iCloud / BTMM (por ejemplo, también verá archivos compartidos en la barra lateral de Finder y dispositivos remotos del aeropuerto en Airport Utility), pero dejaré las instrucciones completas a continuación para los casos de uso más arbitrarios.


Para las herramientas de línea de comandos, Apple ha reemplazado el antiguo <computer-name>.<mobileme-name>.members.mac.com, con <computer-name>.<numeric-id>.members.btmm.icloud.com(donde el <numeric_id>campo es un número generado automáticamente para su ID de Apple).

Paso 1: descubre tu dominio de iCloud BTMM

Primero, busque su dominio con la herramienta de descubrimiento de servicios DNS:

# dns-sd -E

El resultado está formateado de forma un tanto incómoda, pero lo que busca es la ID numérica, que debe estar en la última línea. Está buscando el dominio completo, algo así 12345678.members.btmm.icloud.com, sin embargo, dns-sdlo mostrará (más o menos) en orden inverso, en líneas separadas:

23:41:33.309  Added                          icloud.com
                                             - > btmm
                                             - - > members
                                             - - - > 12345678

También deberá presionar ctrl+ Cdespués de que muestre la información que busca (está diseñado para continuar escuchando y actualizando). Esto se aplica a cada uso de dns-sd, aquí y a continuación.

Paso 2: Lista de computadoras

Puede usar estas herramientas para buscar servicios en ese dominio, por ejemplo, para servidores ssh:

# dns-sd -B _ssh 12345678.members.btmm.icloud.com

O si ya conoce el nombre de host, simplemente acceda directamente como computer-name.12345678.members.btmm.icloud.com. (Los espacios en el nombre de su computadora serán guiones en este dominio).

Puede solamente acceder a ella desde un equipo que también está configurado para BTMM en la misma cuenta ID de Apple, ya que este nombre de host se resuelve en una dirección IPv6 que es realmente el final de un túnel de red cifrada entre ordenadores BTMM de su Apple ID.

Si desea ver la dirección IPv6 de un host específico, puede escribir

# dns-sd -G v6 computer-name.12345678.members.btmm.icloud.com

Y mostrará algo como:

17:37:47.504  Add     2  0 computer-name.12345678.members.btmm.icloud.com. FD11:993E:64AE:4DEA:011F:FBD1:F444:11A1%<0>  152

Paso 3: conectar

# ssh [email protected]

Nota

No estoy seguro de si ese número cambiará alguna vez, por lo que puede que necesite o no repetir el Paso 1 en algún momento posterior ... el mío ha estado estático durante bastantes años.

drfrogsplat
fuente
13

Este no es mi método preferido, pero la aplicación Terminal también sondea su cuenta de iCloud para todas las computadoras Volver a mi Mac que tiene un registro actual.

En el menú Shell - Nueva conexión remota ... + +K

Esto es bastante útil para configurar una nueva conexión ssh / sftp a casa cuando no está en Internet local o su servidor DNS no buscará los registros AAAA que coincidan con su host actual.12346789.members.btmm.icloud.com. reserva de dominio.

bmike
fuente
¿Qué pasa si el nombre de la computadora tiene espacios? Eso parece arruinarlo todo D:
Alexander - Restablecer a Monica el
1
reemplazar los espacios con guiones Ejemplo: "Work iMac" sería "Work-iMac"
Michael Irey
Esto es útil. Terminal.app incluso le da el sshcomando resultante que luego puede pegar en iTerm o lo que realmente use.
jogloran
10

Aquí está la respuesta a su pregunta ...

Acabo de aprender una ingeniosa forma de encontrar tu nombre de dominio BTMM

echo show Setup:/Network/BackToMyMac | scutil | sed -n 's/.* : *\(.*\).$/\1/p'

fuente: https://gist.github.com/1856804 por skyisle

Pero he aquí por qué eso todavía no te ayuda ...

Sin embargo, tenga en cuenta que incluso si conoce el dominio BackToMyMac, solo puede usarlo si se está conectando desde una computadora que también está conectada y ha iniciado sesión en 'BackToMyMac'. Será no trabajar directamente a través del símbolo.

(Creo que Apple considera esto como una característica relacionada con la seguridad. De lo contrario, cualquier persona en Internet podría intentar obtener acceso a sus Macs si conocieran el nombre de dominio BTMM).

Hay otros sitios en la web que harán alojamiento DNS dinámico para usted. He usado DynDNS durante años, pero se han centrado cada vez más en el comercio (solía ser capaz de obtener 5 nombres de host dinámicos gratuitos, ahora es 1, y solo puede obtenerlos dándoles un número de tarjeta de crédito y probando uno de sus servicios premium y luego cancelarlo).

No he usado http://www.no-ip.com/ pero también tienen un cliente de actualización de Mac (que se actualizará automáticamente cada vez que cambie la dirección IP de su Mac) y le darán tres nombres de host gratuitos si crea una cuenta gratuita (no se necesita información de tarjeta de crédito).

Tenga en cuenta que esto no funciona tan fácilmente como BTMM porque aún debe asegurarse de tener puertos abiertos en su enrutador, etc. Sin embargo, funcionará con Prompt y desde otros hosts.

TJ Luoma
fuente
Ha clavado el clavo en la cabeza con la condición de que actualmente se requiera una Mac para usar BTMM en ambos extremos.
bmike
Las razones de seguridad están bien. Entonces sería maravilloso poder ingresar a mi Mac en casa desde mi iPhone, en cualquier lugar ... Solo a través de iCloud y sin sistemas de terceros.
Jonny