Eu gostaria de poder usar o Back to My Mac pela Internet IPv6. Já tenho acesso IPv6 (ou seja, meu aeroporto recebe um bloco / 64 do meu ISP e envia RAs para que todos na rede possam configurar automaticamente seus próprios endereços IPv6 públicos. Meu computador atribui a si mesmo um endereço com base em seu endereço MAC, e um endereço temporário. Posso acessar ipv6.google.com e tudo mais.) mas, por algum motivo, um endereço IPv6 de loopback inútil está sendo registrado com Voltar ao meu Mac em vez de um endereço útil.
Aqui o que eu recebo usando 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
O endereço IPv6 registrado é para ln0, a interface de loopback que é inútil para qualquer coisa, exceto o computador executando os serviços. O ifconfig lista meus endereços IPv6, incluindo um endereço IPv6 público temporário e configurado automaticamente, na interface de rede real do meu sistema, o que seria perfeito. Por que o dns-sd não registra serviços usando esse endereço e como posso fazê-lo?
Uma observação adicional: meu roteador suporta NAT-PMP, mesmo que meu computador não tenha diretamente um endereço IPv4 público, eu esperaria que ele usasse NAT-PMP para garantir que os serviços que habilitei estejam disponíveis no IPv4, mas isso não acontece. parece ser o caso. Quando procuro uma instância de serviço no 12345678.members.btmm.icloud.com
domínio e, em seguida, uso dns-sd -G v4para resolver o nome do host fornecido, ele diz que não há registro IPv4.
Respostas:
Parece que o que você está realmente procurando é o Wide-Area Bonjour (doravante "WAB"), que é um sistema em que clientes com capacidade para Bonjour, além de registrar seus serviços na rede local via DNS multicast, também usam o DNS dinâmico Atualizações (o esquema no processo de padronização da IETF no RFC2136 ), para registrar não apenas seus endereços IP, mas também os registros de serviço disponíveis em um servidor DNS unicast tradicional.
Consulte dns-sd.org para obter instruções sobre como configurar o seu Mac para usar o WAB. Eles ainda têm um painel Preferências do sistema que você pode baixar e instalar para facilitar. Acredito que eles também tenham instruções sobre como configurar o WAB para funcionar com alguns provedores de serviços DNS dinâmicos conhecidos que o suportam, como dyn.com (também conhecido como dyndns.com ). Se você executar seu próprio servidor DNS em algum lugar, também poderá encontrar instruções em dns-sd.org sobre como configurar seu servidor DNS para atuar como um servidor WAB. Para obter melhores resultados, pode ser necessário executar o BIND.
O uso de serviços DNS dinâmicos com suporte a WAB ou a execução de seu próprio servidor DNS com suporte a WAB são suas únicas opções. Os servidores BTMM do iCloud não suportam WAB completo.
O Back to My Mac utiliza parte da infraestrutura de software do Wide-Area Bonjour, mas os servidores iCloud BTMM não fornecem serviço WAB completo, apenas as peças necessárias para a maneira específica como o BTMM o usa. Como você descobriu, as máquinas clientes do BTMM colocam um "endereço local exclusivo" (ULA) do IPv6 em suas interfaces de loopback e registram esse ULA nos servidores da BTMM. As conexões entre esses ULAs são tratadas por túneis protegidos por IPsec, geralmente IPv6-em-IPv4, entre seus Macs BTMM. É intencional que você não possa se conectar a esses serviços diretamente. Isso força as conexões a passarem pelo túnel BTMM protegido por IPsec. O software BTMM nos seus Macs lida com a autenticação de seus Macs com BTMM e com isso para garantir que apenas as máquinas conectadas à sua própria conta BTMM possam estabelecer os túneis BTMM IPsec.
Atualização: Mais algumas reflexões:
fonte