私はEndeavourOSをインストールしました。コマンドを使用してホスト名を設定しましたsudo hostnamectl set-hostname shuttle
。別のコンピュータでpingを試みると、shuttle
IPアドレスを確認できません。 Kubuntuがインストールされている別のコンピュータがあり、Kubuntuボックスにpingを送信できます。したがって、これは私のルータに問題がないことを意味します。 EndeavourOSがルーターにホスト名を送信できるようにするには、何かを有効にする必要がありますか?
ベストアンサー1
システムのホスト名を設定するだけでは、ネットワーク上の他のシステムにそれを知らせるのに十分ではありません。
ルーターには、実際にローカルネットワーク上のホストを識別できるDNSサービスがありますが(とにかくわかりません)、DHCPクライアントは1.)実際にローカルに設定されたホスト名をルーターのDHCPサーバーに渡し、2.)実際にDHCPサーバーにDNS更新を実行するように要求します。どちらも設定可能であり、デフォルトでは必ずしも有効になっているわけではありません。一般的に、ルータの「DNSサーバ」は本質的にISPのDNSサービスのためのプロキシに過ぎず、ローカルネットワーク上のホストについてはまったく気にしません。
以前にローカルネットワークのホスト名解決が「動作」していた場合は、通常のDNSではなく代替メカニズムを使用した可能性が高くなります。 LinuxおよびmacOSシステムでは、このメカニズムはAvahi / Bonjour / Zeroconfサービスの一部であるマルチキャストDNS(mDNS)です。 Windowsは以前にNetBIOS(WannaCryワームが悪用した回復不能な設計上の欠陥のために廃止されました)とLLMNR(別のリンクローカルのホスト名解決プロトコル)を使用していましたが、mDNSサポートも追加されました。
Linuxでは、mDNSはavahi-daemon
システムのIDを定期的にローカルネットワークセグメントに通知し、ローカルシステムの誰かがシステム名のクエリを実行すると関連情報に応答するように動作します。これにより、他のホストがホストを見つけることができます。他の部分は、Linuxシステムが通常のDNSに加えてmDNSをシームレスに使用できるようにするネームサーバー切り替えモジュールです。 Debianおよび関連ディストリビューションでは、ファイル行に、またはなどのキーワードが含まれているlibnss-mdns
場合。としてパッケージ化されます。hosts:
/etc/nsswitch.conf
mdns
mdns4
mdns6
特別なドメイン名で資格のあるホスト名に対してのみmDNSを有効にするキーワードmdns4_minimal
もあります。したがって、試してみてください。mdns_minimal
.local
ping shuttle.local
ping shuttle
あるいは、DNSリゾルバとして使用している場合は(systemd-resolved
クラシックDNSに加えて、mDNSとLLMNRを使用して他のホストの名前を解決することもできます。出力を確認して、mDNSが実際に有効になっていることを確認してください。resolve
dns
/etc/nsswitch.conf
nameserver 127.0.0.53
/etc/resolv.conf
resolvectl
EndeavorOS に mDNS リゾルバコンポーネントがインストールされ構成されているが、他のホストにそのアイデンティティを通知しないsystemd-resolved
場合avahi-daemon
、EndeavourOS は Kubuntu システムをチェックできますが、その逆は不可能です。 Kubuntuはデフォルト設定に含まれていますavahi-daemon
。私はEndeavourOSに精通していません。