Чи можливо використовувати DNS Back To My Mac або інформацію про маршрутизацію з командного рядка?


8

Я часто хочу перетворити ssh на Mac і люблю використовувати iCloud для пошуку інформації про маршрутизацію IP / DNS. Чи можна це зробити, не підписавшись на динамічну службу DNS та не налаштувавши її на кожному Mac, крім iCloud?

Давайте припустимо, що в моєму домашньому Mac на домашньому імені хоста звуть "maui", і він працює під Snow Leopard. Коли я на своєму ноутбуці підключений до домашньої мережі, я можу ssh maui.local. Звичайно, було б добре мати можливість ssh maui.whatever.icloud.comчи що завгодно. Я здогадуюсь, що мені знадобиться "maui" та моє ім'я iCloud, щоб він міг знати, яка машина в моєму обліковому записі потребує досягнення.

Хтось знає, чи можливо це через API чи командний рядок? Я декілька разів переглядав інформацію щодо публічного розробника, але не бачу нічого перспективного. Будь-які вказівники чи приклади коду будуть бажаними.

PS Будь ласка, не пропонуйте безкоштовних облікових записів DNS, оскільки мене дійсно цікавить MobileMe виключно для цього питання. Я знаю, що вони працюватимуть, але я хочу уникати встановлення нічого іншого або іншого облікового запису / зовнішньої залежності від цих Маків.


Класна ідея, +1, і я сподіваюся, що ви отримаєте відповідь.
КостянтинК

Я бачу, як Apple не хотіла б піддавати цього користувачам, оскільки це ризик конфіденційності, але, безумовно, було б здорово мати API для цього.
bmike

1
Дивіться також: Той самий випуск для OS X 10.7 Lion (він дещо інший). apple.stackexchange.com/questions/53719/…
drfrogsplat

Відповіді:


9

Це трохи змінилося з 10,7, і ви хочете зауважити, що для цього використовується IPv6 майже цілком, тому тестуйте ping6і traceroute6налагоджуйте речі.

Це більше не робиться через @computername.mobilemename.members.mac.com, тепер це робиться через members.btmm.icloud.com, і це вже не так просто, як ваш mobilemename.

Крок 1. Дізнайтеся свій домен iCloud BTMM

Будь-яка з цих команд надасть ваш домен BTMM:

# dns-sd -E
# mDNS -E

Вихід форматується дещо інакше, але те, що ви шукаєте, це числовий ідентифікатор, це буде щось на зразок 12345678.members.btmm.icloud.com.

Крок 2: Список комп'ютерів

Ви можете використовувати ці інструменти для перегляду цього домену для служб, наприклад, для ssh-серверів:

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

Або якщо ви вже знаєте ім'я хоста, просто перейдіть до нього безпосередньо як computer-name.12345678.members.btmm.icloud.com. (У цьому домені будь-які пробіли у вашому імені комп’ютера будуть дефісами).

Ви можете отримати доступ до цього лише з комп’ютера, який також налаштований для BTMM у тому ж обліковому записі, оскільки це ім'я хоста вирішить адресу IPv6, яка справді є кінцем зашифрованого мережевого тунелю між вашими комп'ютерами BTMM.

Якщо ви хочете побачити адресу IPv6 для певного хоста, можете ввести

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

І вийде щось на зразок:

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

Крок 3: Підключіться

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

Примітка

Я не впевнений, чи зміниться ця цифра, тож вам може знадобитися повторити крок 1 в якийсь момент пізніше ...


Блискуче! Я не визначився чи редагувати питання, щоб відповідати Леву, або задати інше. Я посилаюсь на нове запитання, щоб ви могли «відповісти» на питання Лева - ця відповідь настільки корисна.
bmike


3

Я прочитав кілька статей про основу Back to My Mac, і нібито деякі люди ефективно підключилися через ssh, ознайомтеся з дискусією, що міститься в цій публікації Macworld .

Найкращий пост у потоці:

Використовуйте наступний формат для підключення як інше ім'я користувача:

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

Якщо ви робите це регулярно і хочете зберегти необхідність використовувати ім'я користувача весь час для ssh та scp, тоді створіть файл під назвою ~ / .ssh / config зі змістом, як описано нижче:

Ім'я хоста.username.members.mac.com. Ім'я користувача user.name

Хост host2.some.domain.com. Ім'я користувача2 Порт 2222 LocalForward 3389 Internal-pc: 3389

Другий хост у цьому файлі також включає використання порту, відмінного від 22, та надання доступу до комп'ютера Windows під назвою Internal-pc з віддаленим робочим столом шляхом підключення до localhost з клієнтом віддаленого робочого столу.

Тепер, очевидно, Apple переключила .mac на MobileMe, тому я не знаю, чи перейшов це на .me.com, і чесно кажучи, у мене немає облікового запису MobileMe, щоб перевірити його.

Редагувати: Ще одне цікаве повідомлення, яке ви можете спробувати, знаходиться в нижній частині

Виявляється, це ще простіше! : P

просто відкрийте термінал, перейдіть до Shell> New Remote Connection ...

потім виберіть ssh і там у вас є ваш комп'ютер BackToMyMac (якщо ОС це бачить).

введіть своє ім’я користувача та натисніть підключити.

voila, можна навіть побачити використаний рядок з'єднання. І ви також можете використовувати ftp / sftp ... з цього діалогового вікна до віддаленого Mac.

Швидше, ніж вводити команду оболонки, як запропоновано в оригінальній підказці.


На жаль, це не працює для мене. Я можу прекрасно використовувати пошук і обмін екранами, тому я знаю, що облікові записи та машини працюють і працюють. Останні капсули часу з актуальною прошивкою - це маршрутизатори для обох Mac. Хтось мав для них цю роботу за останні два тижні?
bmike

Гаряча данга! останньою порадою було це. ping і хост не працюють, але ssh робить. Цей термінальний наконечник ДУЖЕ.
bmike

Солодке! Радий допомогти.
КонстантинК

3

Ви можете сш на свою машину, на якій увімкнено функцію "Bac для мого Mac":

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

1
Ви дійсно повинні сказати йому, щоб використовувати порт за замовчуванням?
КостянтинК

Збій ping, хоста та ssh для трьох окремих імен комп’ютера з трьома різними іменами mobilemename. Я отримую host yy.xx.members.mac.com not found: 3(NXDOMAIN)помилки від спроб хосту, і ssh: Could not resolve hostname yy.xx.members.mac.com: nodename nor servname provided, or not knownвсі три працюють із поверненням до мого mac-екрана до і після спроб ping, хоста та ssh. Який IP-сервер DNS ви використовуєте для роботи цього?
bmike

Навіть незважаючи на те, що хост і пінг не працюють - ssh почав працювати для мене. Я трохи пограю і відзначу відповідь, як тільки зрозумію, що краще.
bmike

І ні - мені, здається, не потрібно називати номери портів для sftp або ssh, - але їх не дуже боляче, щоб їх мати ;-)
bmike

hostне працює, тому що він використовує DNS-розв’язник, а не системний дозвіл. pingне працює, оскільки BTTM використовує IPv6. Спробуйте ping6замість цього, і ви побачите, що він відповідає.
bahamat

2

Це тому, що IP-адреси для роздільної здатності - версія 6.

Якщо ви використовуєте ping6 або traceroute6, ви також можете звернутися до свого хоста.


Це дійсно круто. Дуже дякую за додавання цього. Ви не заперечуєте, якщо я додаю вашу інформацію до своєї відповіді, як тільки я маю шанс побачити, чи працює вона для мене? +2 до @pst
bmike

2

Велика подяка варильним плитам та ghoppe, які обидва мали рішення. Основна проблема полягає в тому, що MobileMe Back To My Mac використовує IPv6-адресацію, якщо вона доступна і, можливо, виключно, тому я не думав використовувати ping6 або traceroute6, а ssh, мабуть, досить розумний, щоб вирішити або IPv4, або IPv6.

ssh -p 22 username@computername.mobilemename.members.mac.com. працює для мене дуже надійно сьогодні.

Так як це спіткнувся мене , як я очікував , pingі hostта nslookupдо роботи, я вважаю , що я потерплю хороший огляд того , що працював для мене. (З малюнками! - Мені дуже подобаються фотографії)

Підводячи підсумок sftp, ssh, ping6і traceroute6повинні працювати з цією схемою іменування.

Вбудований термінал Apple (і iTerm ) відмінно підходить для того, щоб переконатися, що ваше ім'я користувача та коротке ім'я віддалених користувачів правильні. Ім'я - це коротке ім'я хоста (що hostnameроздруковується), а не обов'язково для віддаленого Mac відображатиметься довше ім'я спільного доступу.

коротка назва хоста

Ось що показує Термінал, коли виявляє, що працює на комп'ютері Back To My Mac. Пункт меню - Нове віддалене підключення ..., а ярлик - Shift+ Command+ K. Це показує, як ім'я пошуку "Mikey's Mac" може відрізнятися від короткого імені хоста mi

введіть тут опис зображення


1
Гарна вичерпна відповідь з екраністами +1
ConstantineK

варильні панелі має один b: p
КонстантинК
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.