
私は自分のルーターに Mac を接続しており、そのルーターは ISP のルーター/モデムに接続されており、構成は次のとおりです。
MacはDHCPを使用してルーター192.168.1.1に接続します。Mac
DNSは192.168.1.1に設定されています
私のルーターでは、接続されているデバイスが多数表示されます。
rpi-ノード4 192.168.1.4
rpi-ノード1 192.168.1.5
IP で 192.168.1.4 に ssh できますが、ホスト名で試すと認識されません。
ssh: ホスト名 rpi-node-4 を解決できませんでした: ノード名もサーバ名も指定されていないか、不明です
ルーターはホスト名を認識しており、Mac は DNS として 192.168.1.1 (ルーター) を使用するように指示されているため、Mac がホスト名を解決できると予想しましたが、うまくいきませんでした。
Mac 上のファイルを手動で編集したくないことに注意してください/etc/hosts
(複数のマシンがあり、動的 IP を使用しているため、IP が再割り当てされるたびに 3 ~ 4 個のホスト ファイルを更新する必要はありません)。
どこで間違えたのか誰か教えてもらえますか?
答え1
ルータが知っているのは、おそらく RPi の名前だけです。これは、DHCP 要求を行うときに使用された名前であり、ルータはネットワークの DHCP サーバーである可能性があります。
一部のホームゲートウェイルータには、LANのプライベートIPアドレスごとにホスト名を入力する機能があり、ルータはDNSとして機能します。コンテンツDNS リレーだけではなく、サーバーも使用してください。お使いのサーバーにその機能があるかどうかを確認し、ある場合は設定してください。
その機能がない場合は、mDNS と DNS-SD (別名 IETF ZeroConf、Apple Bonjour) を使用して.local
ドメインを確立し、名前で RPi に接続することができます。Raspbian ではデフォルトで mDNS 実装が有効になっていない傾向があるため、sudo apt-get install avahi-daemon
人気のあるオープンソースの mDNS 実装である Avahi を取得するなどの操作を行う必要があるかもしれません。
答え2
ルーターの DHCP 設定時に検索ドメインが指定されなかった可能性があります。これで、Mac コンピューターは IP のローカル ホスト名をどこで検索すればよいかわかりません。
これを修正するには:
- システム環境設定 -> ネットワークに移動します
- 左の列からアクティブなネットワークアダプタを選択します
- 右下にある「詳細設定」をクリックします
- 上部のDNSタブを選択します
- 検索ドメインの下に検索ドメインを入力します (私は AT&T を使用しているため、attlocal.net です。自分のドメインを見つけるには検索する必要があるかもしれません)
- [適用]をクリックします。これで{hostname}.localにアクセスできるようになります。