Chciałbym móc korzystać z funkcji Back to My Mac przez Internet IPv6. Mam już dostęp do protokołu IPv6 (tj. Moje lotnisko ma przypisany blok / 64 od mojego dostawcy usług internetowych i wysyła RA, więc każdy w sieci może automatycznie skonfigurować własne publiczne adresy IPv6. Mój komputer przypisuje sobie zarówno adres na podstawie swojego adresu MAC, i adres tymczasowy. Mogę odwiedzić witrynę ipv6.google.com i wszystko inne.), ale z jakiegoś powodu zarejestrowano bezużyteczny adres IPv6 pętli zwrotnej w usłudze Back to My Mac zamiast przydatnego adresu.
Oto co otrzymuję przy użyciu 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
Zarejestrowany adres IPv6 dotyczy ln0, interfejsu pętli zwrotnej, który jest bezużyteczny dla czegokolwiek poza komputerem obsługującym usługi. ifconfig wyświetla moje adresy IPv6, w tym automatycznie skonfigurowany, tymczasowy, publiczny adres IPv6 w prawdziwym interfejsie sieciowym mojego systemu, co byłoby idealne. Dlaczego dns-sd nie rejestruje usług przy użyciu tego adresu i jak mogę to zrobić?
Dodatkowa uwaga: mój router obsługuje NAT-PMP, więc nawet jeśli mój komputer nie ma bezpośrednio publicznego adresu IPv4, spodziewałbym się, że użyje NAT-PMP, aby upewnić się, że włączone przeze mnie usługi są dostępne przez IPv4, ale to nie wydaje się, że tak nie jest. Kiedy szukam instancji usługi w 12345678.members.btmm.icloud.com
domenie, a następnie używam dns-sd -G v4do rozpoznania podanej nazwy hosta, mówi, że nie ma rekordu IPv4.
Odpowiedzi:
Wygląda na to, że to, czego naprawdę szukasz, to Wide-Area Bonjour (odtąd „WAB”), który jest systemem, w którym klienci obsługujący Bonjour, oprócz rejestracji swoich usług w sieci lokalnej za pośrednictwem multiemisji DNS, używają również Dynamic DNS Aktualizacje (schemat jest w trakcie standaryzacji przez IETF w RFC2136 ), aby zarejestrować nie tylko ich adresy IP, ale także dostępne rekordy usług na tradycyjnym serwerze DNS emisji pojedynczej.
Instrukcje dotyczące konfigurowania komputera Mac do korzystania z WAB można znaleźć na stronie dns-sd.org . Mają nawet panel Preferencji systemowych, które można pobrać i zainstalować, aby to ułatwić. Sądzę, że mają również instrukcje, jak skonfigurować WAB do pracy z niektórymi znanymi dynamicznymi dostawcami usług DNS, którzy go obsługują, takimi jak dyn.com (alias dyndns.com). Jeśli gdzieś uruchomisz własny serwer DNS, możesz również znaleźć instrukcje na dns-sd.org, jak skonfigurować serwer DNS, aby działał jako serwer WAB. Aby uzyskać najlepsze wyniki, może być konieczne uruchomienie BIND.
Używanie dynamicznych usług DNS obsługujących WAB lub prowadzenie własnego serwera DNS obsługującego WAB to twoje jedyne możliwości. Serwery BTMM iCloud nie obsługują pełnego WAB.
Back to My Mac korzysta z części infrastruktury oprogramowania Wide-Area Bonjour, ale serwery iCloud BTMM nie zapewniają pełnej usługi WAB, tylko części potrzebne do konkretnego sposobu korzystania z BTMM. Jak odkryłeś, komputery klienckie BTMM umieszczają „unikalny adres lokalny” IPv6 (ULA) na swoich interfejsach sprzężenia zwrotnego i rejestrują tę ULA na serwerach BTMM. Połączenia między tymi ULA są obsługiwane przez tunele zabezpieczone IPsec, zazwyczaj IPv6-in-IPv4, między twoimi komputerami Mac BTMM. Celowo nie można łączyć się bezpośrednio z tymi usługami. To zmusza połączenia do przejścia przez tunel BTMM zabezpieczony IPsec. Oprogramowanie BTMM na komputerach Mac obsługuje uwierzytelnianie komputerów Mac za pomocą BTMM i korzystanie z tego, aby upewnić się, że tylko maszyny zalogowane na Twoim koncie BTMM mogą ustanowić tunele BTMM IPsec.
Aktualizacja: jeszcze kilka myśli:
źródło