Retour à Mon Mac enregistre les services en utilisant l'adresse IPv6 de l'interface de bouclage

9

J'aimerais pouvoir utiliser Back to My Mac via Internet IPv6. J'ai déjà un accès IPv6 (c'est-à-dire que mon aéroport se voit attribuer un bloc / 64 de mon FAI et envoie des RA pour que tout le monde sur le réseau puisse configurer automatiquement ses propres adresses IPv6 publiques. Mon ordinateur s'assigne à la fois une adresse basée sur son adresse MAC, et une adresse temporaire. Je peux visiter ipv6.google.com et tout.) mais pour une raison quelconque, une adresse IPv6 de bouclage inutile est enregistrée avec Retour à mon Mac au lieu d'une adresse utile.

Voici ce que j'obtiens en utilisant dns-sd:

dns-sd -F

Timestamp     Recommended Browsing domain
 0:15:52.133  Added     (More)               local
 0:15:52.134  Added                          icloud.com
                                             - > btmm
                                             - - > members
                                             - - - > 12345678

dns-sd -B _services._dns-sd._udp 12345678.members.btmm.icloud.com

Browsing for _services._dns-sd._udp.12345678.members.btmm.icloud.com
Timestamp     A/R Flags if Domain                    Service Type              Instance Name
 0:23:19.685  Add     3  0 .                         _tcp.local.               _rfb
 0:23:19.686  Add     3  0 .                         _tcp.local.               _ssh
 0:23:19.686  Add     3  0 .                         _tcp.local.               _sftp-ssh
 0:23:19.686  Add     2  0 .                         _tcp.local.               _airvideoserver

dns-sd -B _rfb 12345678.members.btmm.icloud.com

Browsing for _rfb._tcp.12345678.members.btmm.icloud.com
Timestamp     A/R Flags if Domain                    Service Type              Instance Name
 0:25:02.255  Add     2  0 12345678.members.btmm.icloud.com. _rfb._tcp.                Mac

dns-sd -L Mac _rfb 12345678.members.btmm.icloud.com

Lookup Mac._rfb._tcp.12345678.members.btmm.icloud.com
 0:26:33.431  Mac._rfb._tcp.12345678.members.btmm.icloud.com. can be reached at Mac.12345678.members.btmm.icloud.com.:5900 (interface 0)

dns-sd -G v6 Mac.12345678.members.btmm.icloud.com.

Timestamp     A/R Flags if Hostname                  Address                                      TTL
 0:27:45.201  Add     2  0 Mac.12345678.members.btmm.icloud.com. FDDC:DBC8:58A7:8322:021F:5BFF:FE3E:3C44%<0>  152

L'adresse IPv6 enregistrée est pour ln0, l'interface de bouclage qui ne sert à rien d'autre qu'à l'ordinateur exécutant les services. ifconfig répertorie mes adresses IPv6, y compris une adresse IPv6 publique temporaire configurée automatiquement sur l'interface réseau réelle de mon système, ce qui serait parfait. Pourquoi DNS-sd n'enregistre-t-il pas les services à l'aide de cette adresse et comment puis-je le faire?

Une note supplémentaire, mon routeur prend en charge NAT-PMP donc même si mon ordinateur n'a pas directement d'adresse IPv4 publique, je m'attends à ce qu'il utilise NAT-PMP pour s'assurer que les services que j'ai activés sont disponibles sur IPv4, mais cela ne fonctionne pas semble pas être le cas. Lorsque je recherche une instance de service dans le 12345678.members.btmm.icloud.comdomaine et que je l' utilise dns-sd -G v4pour résoudre le nom d'hôte donné, il indique qu'il n'y a pas d'enregistrement IPv4.

bames53
la source
Tangentiel à la question en question, le détail détaillé fournit certains des meilleurs exemples où que ce soit avec précision comment utiliser dns-sd. BEAUCOUP plus utile que la page de manuel!
Bill Cole

Réponses:

5

Il semble que ce que vous cherchez vraiment soit Wide-Area Bonjour (désormais "WAB"), qui est un système où les clients compatibles Bonjour, en plus d'enregistrer leurs services sur le réseau local via DNS multicast, utilisent également Dynamic DNS Mises à jour (le schéma en cours de normalisation par l'IETF dans la RFC2136 ), pour enregistrer non seulement leurs adresses IP mais aussi les enregistrements de service disponibles avec un serveur DNS monodiffusion traditionnel.

Voir dns-sd.org pour des instructions sur la façon de configurer votre Mac pour utiliser WAB. Ils ont même un panneau de préférences système que vous pouvez télécharger et installer pour le rendre facile. Je pense qu'ils ont également des instructions sur la façon de configurer WAB pour fonctionner avec certains fournisseurs de services DNS dynamiques bien connus qui le prennent en charge, tels que dyn.com (alias dyndns.com). Si vous exécutez votre propre serveur DNS quelque part, vous pouvez également trouver des instructions sur dns-sd.org pour savoir comment configurer votre serveur DNS pour agir en tant que serveur WAB. Pour de meilleurs résultats, il peut être nécessaire d'exécuter BIND.

L'utilisation de services DNS dynamiques prenant en charge WAB ou l'exécution de votre propre serveur DNS prenant en charge WAB sont vos seuls choix. Les serveurs BTMM d'iCloud ne prennent pas en charge le WAB complet.

Back to My Mac utilise une partie de l'infrastructure logicielle de Wide-Area Bonjour, mais les serveurs iCloud BTMM ne fournissent pas un service WAB complet, juste les pièces nécessaires à la façon particulière dont BTMM l'utilise. Comme vous l'avez découvert, les machines clientes BTMM mettent une "adresse locale unique" (ULA) IPv6 sur leurs interfaces de bouclage et enregistrent cet ULA auprès des serveurs BTMM. Les connexions entre ces ULA sont gérées par des tunnels sécurisés IPsec, généralement IPv6-in-IPv4, entre vos Mac BTMM. Il est intentionnel que vous ne puissiez pas vous connecter directement à ces services. Cela force les connexions à passer par le tunnel BTMM sécurisé par IPsec. Le logiciel BTMM sur vos Mac gère l'authentification de vos Mac avec BTMM et son utilisation pour vous assurer que seules les machines connectées à votre propre compte BTMM peuvent établir les tunnels BTMM IPsec.

Mise à jour: quelques réflexions supplémentaires:

  • Assurez-vous que la case "Bloquer les connexions entrantes" n'est pas cochée dans les paramètres IPv6 de votre borne d'accès AirPort. (Notez qu'AirPort Utility 6.0 ne dispose pas actuellement de l'interface utilisateur des paramètres IPv6, vous devrez donc utiliser AirPort Utility 5.6 ou une version antérieure pour vérifier cela.)
  • Pouvez-vous envoyer une requête ping6 à l'adresse IPv6 publiquement routable et non temporaire de votre Mac à partir de l'autre site?
  • Une connexion BTMM typique (c'est-à-dire via IPv4, depuis un autre Mac connecté à votre même compte iCloud, avec BTMM activé) fonctionne-t-elle? Pourquoi essayez-vous spécifiquement de faire en sorte que cela se produise sur IPv6? Je pourrais peut-être mieux vous aider si je comprends mieux vos objectifs et vos contraintes.
Spiff
la source
D'accord, c'est une bonne info. Je connais en fait les instructions de dns-sd.org sur la configuration et la personnalisation d'un serveur DNS pour cela. De plus, j'avais vu que dyndns.org faisait des expériences il y a quelque temps, mais je n'y avais pas jeté un œil récemment. Je suis d'accord avec les exigences imposées par BtMM, je veux juste que cela fonctionne réellement. manuel ssh à cet ULA expire, La navigation avec 'New Remote Connect' montre le service mais la connexion expire, Essayer de se connecter au service _http via le menu Bonjour dans Safari expire.
bames53
Je suppose que j'ai besoin de savoir ce qui pourrait provoquer une expiration des tentatives de connexion à cette adresse, même si je peux évidemment atteindre le service (car j'essaie cela depuis l'ordinateur local).
bames53
@ bames53 Ah. Une chose qui n'était pas très claire pour moi à partir de votre question était de savoir si vous aviez déjà essayé une tentative de connexion BTMM simple. Il était clair que vous disposiez d'une connectivité IPv6 (au moins sortante) à la maison et d'un Mac BTMM à la maison. Mais ce qui n'était pas clair, c'est si vous avez un Mac BTMM avec une connectivité IPv6 sur un autre site; dans quelle direction vous avez essayé d'établir des liens; quels services vous avez essayé d'utiliser; un tunnel BTMM IPv6-in-IPv4 typique fonctionnait-il ?; etc. Mettez à jour votre question pour être plus clair sur des points comme celui-ci, et si cela me donne des informations supplémentaires, je mettrai également à jour ma réponse.
Spiff
@ bames53 Je suis toujours intéressé à déterminer exactement quel problème vous rencontrez, donc si vous souhaitez mettre à jour votre question pour fournir plus d'informations dans le sens que j'ai suggéré, je suis toujours impatient d'essayer d'aider.
Spiff
Je n'ai pas encore essayé une connexion BtMM simple, car je la testais à partir de mon réseau local avant de compter sur son fonctionnement ailleurs. Je vous mettrai à jour lorsque j'aurai l'occasion de le tester. Je suis intéressé à comprendre cela, car même si une connexion à partir d'un réseau distant fonctionne comme prévu, j'aimerais savoir pourquoi les services iCloud sont visibles mais pas accessibles sur l'hôte local.
bames53