
私はサーバからMacBookにSSH経由で接続しようとしていますが、ネットワーク上でホスト名を見つけることができません。リモートログインでシステム環境設定 > 共有そして私のMacはこう主張します:
Computers on your local network can access your computer at: macbook.local
しかし、接続しようとすると、次のように表示されます:ssh [email protected]
ssh: Could not resolve hostname macbook.local: Name or service not known
しかし、指定された IP アドレス (つまり ) を入力すると、SSH で接続できます 。問題は、この IP アドレスが変更され、SSH 経由でリモート Git リポジトリを追加したいので、これができないことです。何が足りないのでしょうか?ssh [email protected]
答え1
あなたのサーバーのOSは何ですか?Mac OS Xでない場合は、Avahiをインストールして、以下の設定をする必要があります。/etc/nsswitch.conf
hosts: files dns mdns
または
hosts: files mdns_minimal [NOTFOUND=return] dns mdns
答え2
あなたのサーバーはどのオペレーティングシステムで稼働していますか?.localホスト名を支える技術であるBonjour(mDNS)をサポートしている必要があります。mDNSの詳細については、ここUNIX、Linux、Windows 向けのさまざまな mDNS 実装があります。Unix 系システムには、Apple の mDNSResponder とオープンソースの Avahi デーモンの両方をお勧めします。
すでにサーバーに mDNS がある場合は、ネットワーク設定を確認することをお勧めします。mDNS は、L2TP/IPsec を含む特定の VPN システム間で使用することはできません。また、異なるサブネット間で使用することもできません。mDNS のホームページには、ネームサーバーの使用を必要とするワイドエリア mDNS を設定するための構成手順が記載されていますが、私はそのような試みで成功していません。
もっとシンプルで簡単な方法は、MacBook に静的 IP アドレスを割り当てることです。ほとんどのルーターでは、DHCP クライアント ID またはインターフェイスの MAC アドレスを使用して静的 IP を割り当てることができます。
私自身も最近、いくつかの mDNS の問題に取り組んでいます。