8 votes

Est-il possible d'utiliser les informations de DNS ou de routage de Back To My Mac à partir de la ligne de commande ?

Je souhaite souvent me connecter en mode ssh à un Mac et j'aimerais utiliser iCloud pour consulter les informations de routage IP/DNS. Est-ce possible sans s'inscrire à un service DNS dynamique et le configurer sur chaque Mac en plus d'iCloud ?

Supposons que le nom d'hôte de mon Mac à la maison soit "maui" et qu'il fonctionne sous Snow Leopard. Lorsque je suis sur mon ordinateur portable connecté au réseau domestique, je peux ssh maui.local . Ce serait bien de pouvoir ssh maui.whatever.icloud.com ou n'importe quoi d'autre. Je suppose que j'aurais besoin de "maui" et de mon nom iCloud pour qu'il sache quelle machine de mon compte a besoin d'être jointe.

Quelqu'un sait-il si cela est possible via l'API ou la ligne de commande ? J'ai parcouru plusieurs fois les informations publiques du développeur mais je ne vois rien de prometteur. Toute indication ou exemple de code serait le bienvenu.

P.S. Ne me suggérez pas de comptes DNS gratuits car je m'intéresse à MobileMe exclusivement pour cette question. Je sais qu'ils fonctionneront mais je cherche à éviter d'installer quoi que ce soit d'autre ou un autre compte/dépendance externe sur ces Macs.

9voto

Shuft Points 420

Cela a un peu changé avec la version 10.7 et vous voudrez bien noter que cela utilise presque entièrement IPv6, alors testez avec ping6 y traceroute6 pour déboguer les choses.

Cela ne se fait plus par l'intermédiaire de @computername.mobilemename.members.mac.com , c'est désormais chose faite via members.btmm.icloud.com et ce n'est plus aussi simple que votre mobilemename .

Étape 1 : Déterminez votre domaine BTMM iCloud

L'une ou l'autre de ces commandes fournira votre domaine BTMM :

# dns-sd -E
# mDNS -E

La sortie est formatée légèrement différemment, mais ce que vous recherchez est l'ID numérique, qui sera quelque chose comme 12345678.members.btmm.icloud.com .

Étape 2 : Liste des ordinateurs

Vous pouvez utiliser ces outils pour rechercher des services dans ce domaine, par exemple des serveurs ssh :

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

Ou si vous connaissez déjà le nom d'hôte, accédez-y directement en tant que computer-name.12345678.members.btmm.icloud.com . (Les espaces dans le nom de votre ordinateur seront des traits d'union dans ce domaine).

Puede sólo y accéder à partir d'un ordinateur également configuré pour BTMM sur le même compte, car ce nom d'hôte se résoudra en une adresse IPv6 qui est en réalité l'extrémité d'un tunnel réseau crypté entre vos ordinateurs BTMM.

Si vous voulez voir l'adresse IPv6 d'un hôte spécifique, vous pouvez taper

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

Il en résultera quelque chose comme :

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

Étape 3 : Connexion

# ssh username@computer-name.12345678.members.btmm.icloud.com

Note

Je ne sais pas si ce nombre changera un jour, il se peut donc que vous deviez ou non répéter l'étape 1 à un moment ou à un autre...

3voto

Zac Points 89

J'ai lu quelques articles sur les fondements de Back To My Mac et il semblerait que certaines personnes se soient effectivement connectées via ssh. cet article de Macworld .

Le meilleur message de la discussion est le suivant :

Utilisez les f se connecter sous un nom d'utilisateur différent :

s user.name@hostname.username.members.mac.com.

Si vous le faites régulièrement éviter d'avoir à utiliser le nom d'utilisateur pour ssh et scp, créez un fichier appelé ~/.ssh. appelé ~/.ssh/config avec le contenu suivant dont le contenu ressemble à ce qui suit :

H hostname.username.members.mac.com. Utilisateur user.name

Hôte host2.some.domain.com. Utilisateur username2 Port 2222 LocalForward 3389 internal-pc:3389

Le deuxième hôte en inclut l'utilisation d'un port autre que 22 et permettre l'accès à un ordinateur Windows appelé internal-pc et doté d'un Remote Desktop en se connectant à localhost avec le client Remote Desktop Client.

Il est évident qu'Apple a remplacé .mac par MobileMe, je ne sais donc pas si ce dernier a été remplacé par .me.com, et franchement je n'ai pas de compte MobileMe pour le tester.

Editer : Un autre message intéressant que vous pouvez essayer se trouve tout en bas de la page.

Il s'avère que c'est encore plus facile ! :P

il suffit d'ouvrir le Termina Nouvelle connexion à distance...

puis choisissez ssh et votre ordinateur BackToMyMac (si le système d'exploitation le voit). l'OS le voit).

tapez dans votre se connecter.

voila, vous pouvez même utilisée. Vous pouvez également utiliser ftp/sftp... à partir de cette boîte de dialogue pour votre Mac distant.

Bien plus facile que t comme suggéré dans l'astuce originale. d'origine.

3voto

ghoppe Points 7682

Vous pouvez vous connecter en ssh à votre machine dont l'option "Bac to my Mac" est activée comme suit :

ssh -p 22 username@computername.mobilemename.members.mac.com

2voto

Oskar Points 1242

Un grand merci à plaques de cuisson y ghoppe qui avaient tous deux des solutions viables. Le principal problème est que MobileMe Back To My Mac utilise l'adressage IPv6 s'il est disponible et peut-être exclusivement, je n'ai donc pas pensé à utiliser ping6 ou traceroute6 et ssh est apparemment assez intelligent pour résoudre soit IPv4 soit IPv6.

ssh -p 22 username@computername.mobilemename.members.mac.com. fonctionne de manière très fiable lors des tests que j'ai effectués aujourd'hui.

Puisque cela m'a fait trébucher parce que je m'attendais à ce que ping y host y nslookup pour travailler, je me suis dit que j'allais faire un bon résumé de ce qui a fonctionné pour moi. (avec des photos ! - j'aime vraiment les photos)

En résumé sftp , ssh , ping6 et traceroute6 devrait fonctionner avec ce système de dénomination.

Le terminal intégré d'Apple (et iTerm ) permet de s'assurer que le nom d'utilisateur et le nom court distant sont corrects. Le nom est le nom court de l'hôte (ce que hostname s'imprime) et pas nécessairement le nom de partage plus long que Finder affichera pour le Mac distant).

short hostname

Voici ce que le terminal affiche lorsqu'il découvre que des machines Back To My Mac sont en cours d'exécution. L'élément de menu est Nouvelle connexion à distance... et le raccourci est Shift + Command + K . Il montre comment le nom du chercheur "Mikey's Mac" peut être différent du nom d'hôte abrégé mi

enter image description here

2voto

Mitch Wheat Points 466

C'est parce que les adresses IP pour la résolution sont de la version 6.

Si vous utilisez ping6 ou traceroute6, vous pouvez également atteindre votre hôte.

LesApples.com

LesApples est une communauté de Apple où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres utilisateurs d'appareils Apple, poser vos propres questions ou résoudre celles des autres.

Powered by:

X