Często chcę ssh na komputerze Mac i chciałbym skorzystać z iCloud, aby wyszukać informacje o routingu IP / DNS. Czy można to zrobić bez rejestracji w dynamicznej usłudze DNS i skonfigurowania jej na każdym komputerze Mac oprócz iCloud?
Załóżmy, że mój wszechobecny komputer Mac w domowej nazwie hosta to „maui” i działa na nim Snow Leopard. Kiedy mam laptopa podłączonego do sieci domowej, mogę ssh maui.local
. Na pewno byłoby miło móc, ssh maui.whatever.icloud.com
czy cokolwiek by działało. Zgaduję, że potrzebowałbym słowa „maui” i mojej nazwy iCloud, aby poinformować, do której maszyny z mojego konta należy dotrzeć.
Czy ktoś wie, czy jest to możliwe za pomocą interfejsu API lub wiersza poleceń? Przeglądałem publiczne informacje dla programistów kilka razy, ale nie widzę nic obiecującego. Wszelkie wskazówki lub przykłady kodu byłyby mile widziane.
PS Proszę nie sugerować bezpłatnych kont DNS, ponieważ naprawdę interesuję się MobileMe wyłącznie na to pytanie. Wiem, że będą działać, ale staram się unikać instalowania czegokolwiek innego lub innej zależności konta / zewnętrznej na tych komputerach Mac.
Odpowiedzi:
Zmieniło się to nieco w wersji 10.7 i należy zauważyć, że używa prawie całkowicie IPv6, więc testuj
ping6
itraceroute6
debuguj różne rzeczy.To już nie jest zrobione przez
@computername.mobilemename.members.mac.com
, jest już zrobione przezmembers.btmm.icloud.com
i nie jest już tak proste jak twojemobilemename
.Krok 1: Znajdź swoją domenę iCloud BTMM
Każde z tych poleceń zapewni domenę BTMM:
Dane wyjściowe są sformatowane nieco inaczej, ale szukasz identyfikatora numerycznego, będzie to coś w rodzaju
12345678.members.btmm.icloud.com
.Krok 2: Wyświetl komputery
Możesz użyć tych narzędzi do przeglądania tej domeny w poszukiwaniu usług, np. Serwerów ssh:
Lub jeśli znasz już nazwę hosta, po prostu uzyskaj do niej bezpośredni dostęp jako
computer-name.12345678.members.btmm.icloud.com
. (Wszelkie spacje w nazwie komputera będą łącznikami w tej domenie).Możesz uzyskać do niego dostęp tylko z komputera skonfigurowanego dla BTMM na tym samym koncie, ponieważ ta nazwa hosta zostanie przekształcona na adres IPv6, który tak naprawdę jest końcem zaszyfrowanego tunelu sieciowego między komputerami BTMM.
Jeśli chcesz zobaczyć adres IPv6 dla konkretnego hosta, możesz wpisać
I wyświetli coś takiego:
Krok 3: Połącz
Uwaga
Nie jestem pewien, czy ta liczba kiedykolwiek się zmieni, więc być może będziesz musiał powtórzyć krok 1 w pewnym momencie później ...
źródło
Przeczytałem kilka artykułów na temat podstaw Back To My Mac i podobno niektórzy ludzie skutecznie nawiązali połączenie za pośrednictwem ssh, sprawdź dyskusję zawartą w tym poście Macworld .
Najlepszy post w wątku jest następujący:
Teraz Apple oczywiście zmieniło .mac na MobileMe, więc nie wiem, czy to zmieniło się na .me.com, i szczerze mówiąc, nie mam konta MobileMe, aby je przetestować.
Edycja: Kolejny interesujący post, który możesz wypróbować, znajduje się na bardzo niskim poziomie
źródło
Możesz ssh na maszynie, która ma włączoną funkcję „Bac to my Mac”:
źródło
host yy.xx.members.mac.com not found: 3(NXDOMAIN)
błędy z prób hosta issh: Could not resolve hostname yy.xx.members.mac.com: nodename nor servname provided, or not known
wszystkie trzy działają z powrotem do udostępniania ekranu Mac przed i po niepowodzeniu prób ping, hosta i ssh. Jakiego adresu IP serwera DNS używasz, aby to zadziałało?host
nie działa, ponieważ używa programu rozpoznawania nazw DNS, a nie systemu rozpoznawania nazw.ping
nie działa, ponieważ BTTM używa IPv6. Spróbujping6
zamiast tego, a zobaczysz, że odpowiada.Wynika to z faktu, że adresy IP dla rozdzielczości są w wersji 6.
Jeśli używasz ping6 lub traceroute6, możesz również skontaktować się z hostem.
źródło
Wielkie dzięki dla płytami i ghoppe którzy mieli zarówno praktycznych rozwiązań. Głównym problemem jest to, że MobileMe Back To My Mac używa adresowania IPv6, jeśli jest dostępny i być może wyłącznie, więc nie pomyślałem o użyciu ping6 lub traceroute6, a ssh jest najwyraźniej wystarczająco inteligentny, aby rozwiązać IPv4 lub IPv6.
ssh -p 22 [email protected].
działa dla mnie bardzo niezawodnie podczas testowania.Ponieważ ten zadziałał mi się jak się spodziewałem
ping
, ahost
inslookup
do pracy, ja figura będę znosić piękny podsumowanie tego, co pracował dla mnie. (ze zdjęciami! - Naprawdę lubię zdjęcia)Podsumowując
sftp
,ssh
,ping6
, itraceroute6
powinien działać z tym schematem nazewnictwa.Wbudowany terminal Apple (i iTerm ) jest świetny, aby upewnić się, że nazwa użytkownika i zdalna krótka nazwa są poprawne. Nazwa jest krótką nazwą hosta (co zostanie
hostname
wydrukowane) i niekoniecznie dłuższa nazwa udostępniania, którą Finder pokaże dla zdalnego komputera Mac).Oto, co pokazuje Terminal, gdy odkrywa działające maszyny Back To My Mac. Elementem menu jest Nowe połączenie zdalne ... a skrót to Shift+ Command+ K. Pokazuje, jak nazwa wyszukiwarki „Mikey's Mac” może być inna niż krótka nazwa hosta mi
źródło