LionおよびiCloudでは、古いMobileMeおよびSnow LeopardのmDNS命名が変更され、機能しなくなりました。
Appleが私のMacに割り当てたDNS名を見つけるために、コマンドラインツールを使用する方法を疑問に思っています。OSXではない他のデバイス(iPad / iPhoneのプロンプトなど)でそのDNS名を使用して、外出中にMacにsshを戻します。
LionおよびiCloudでは、古いMobileMeおよびSnow LeopardのmDNS命名が変更され、機能しなくなりました。
Appleが私のMacに割り当てたDNS名を見つけるために、コマンドラインツールを使用する方法を疑問に思っています。OSXではない他のデバイス(iPad / iPhoneのプロンプトなど)でそのDNS名を使用して、外出中にMacにsshを戻します。
回答:
BTMM / iCloudコンピューターにSSHで接続する簡単な方法があります。
ターミナルのシェルメニューで、[ 新しいリモート接続...](cmd + shift + K)を選択します。ここから、ローカルまたはBTMMネットワーク上のssh / sftp / ftp / telnetホストで参照できます。
これは、iCloud / BTMMルックアップをサポートする個々のアプリにとって明らかに簡単です(たとえば、Finderのサイドバーにファイル共有が表示され、Airport Utilityにリモートの空港デバイスが表示されます)。よりarbitrary意的なユースケースのために。
コマンドラインツールの場合、Appleは古い<computer-name>.<mobileme-name>.members.mac.com
を<computer-name>.<numeric-id>.members.btmm.icloud.com
(<numeric_id>
フィールドはApple IDに対して自動的に生成された番号です)に置き換えました
。
最初に、DNSサービス検出ツールを使用してドメインを検索します。
# dns-sd -E
出力はやや扱いにくい形式になっていますが、後は最終的な行にある数値IDです。あなたは完全なドメインの後にいますが、のようなものですが12345678.members.btmm.icloud.com
、dns-sd
逆の順序で別の行に表示します:
23:41:33.309 Added icloud.com
- > btmm
- - > members
- - - > 12345678
また、必要な情報が表示された後にctrl+ を押す必要がありCます(リスニングと更新を継続するように設計されています)。これはdns-sd
、ここおよび以下のの各使用に適用されます。
これらのツールを使用して、たとえばsshサーバーなどのサービスのドメインを参照できます。
# dns-sd -B _ssh 12345678.members.btmm.icloud.com
または、ホスト名がすでにわかっている場合は、として直接アクセスしますcomputer-name.12345678.members.btmm.icloud.com
。(コンピューター名のスペースは、このドメインのハイフンになります)。
このホスト名は、実際にApple IDのBTMMコンピューター間の暗号化されたネットワークトンネルの終わりであるIPv6アドレスに解決されるため、同じApple IDアカウントで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
# ssh username@computer-name.12345678.members.btmm.icloud.com
その数が変わるかどうかはわかりませんので、後のステップでステップ1を繰り返す必要があるかもしれませんし、そうでないかもしれません。
これは私の好みの方法ではありませんが、Terminalアプリは、現在登録されているすべてのBack To My MacコンピューターのiCloudアカウントもポーリングします。
下のシェルメニュー- 新しいリモート接続... ⇧ + ⌘+K
これは、ローカルインターネット上にない場合、またはDNSサーバーが現在のhost.12346789.members.btmm.icloud.comに一致するAAAAレコードを検索しない場合に、新しいssh / sftp接続ホームをセットアップするのに非常に便利です。ドメイン予約。
ssh
コマンドを提供し、iTermまたは実際に使用するものに貼り付けることができます。
BTMMドメイン名を見つけるための気の利いた方法を学びました
echo show Setup:/Network/BackToMyMac | scutil | sed -n 's/.* : *\(.*\).$/\1/p'
ソース:https : //gist.github.com/1856804 by skyisle
ただし、BackToMyMacドメインを知っていても、「BackToMyMac」にログインしているコンピューターに接続している場合にのみ使用できます。それはなりませんプロンプト経由で直接動作します。
(Appleはこれをセキュリティ関連の機能と考えています。そうしないと、インターネット上の誰もがBTMMドメイン名を知っていれば、Macにアクセスしようとする可能性があります。)
Webには、動的DNSホスティングを行うサイトが他にもあります。私は何年もDynDNSを使用していましたが、ますます商業的に焦点を合わせてきました(5つの無料の動的ホスト名を取得できるように使用されていましたが、現在は1です。プレミアムサービスの1つで、その後キャンセルします)。
http://www.no-ip.com/は使用していませんが、Macアップデートクライアントもあり(MacのIPアドレスが変更されると自動的に更新されます)、無料のアカウントを作成すると3つの無料のホスト名が与えられます(クレジットカード情報は必要ありません)。
ルーターなどでポートを開いていることを確認する必要があるため、これはBTMMほど簡単には機能しません。ただし、Promptおよび他のホストからは機能します。