デバイスはローカルネットワークにDNSエントリをどのように追加しますか?

デバイスはローカルネットワークにDNSエントリをどのように追加しますか?

dlinkap.local私はD-Link WiFi Extension DAP-1320を持っています。私は何も追加する必要はありませんでした/etc/hosts

過去にはすべての作業が上記/etc/hostsで行われていましたが、/etc/resolv.conf今見ると/etc/resolv.conf、「パーサー」がファイルを管理し、私が変更したすべての内容を上書きすることがわかります。

以前のLinux時代が恋しいです:)

とにかく、デバイスが接続されているネットワークが名前でデバイスを識別できるようにするメカニズムは何ですか?ボンジュールですか、それともUPnPですか?どのように動作しますか?

答え1

DHCP クライアントは通常、自分の名前を DHCP サーバーに送信します。この名前は通常リースファイルに書き込まれ、プライマリドメインの下のエントリとしてローカルDNSサーバーに追加できます。 (一部のルーターではこの方法が適していますが、これを.local使用します。)登録ドメインがある場合は、ルーターのドメインをサブドメインに設定することを検討してください。.localnetlan.example.com

この.localドメインは通常自動検索に使用されます。mdnsbonjourなどこのサービスに使用される複数の名前ですavahi。最新のリゾルバは通常、このサービスから名前を返します。

オペレーティングシステムに応じて、nslookupまたはhostコマンドを使用してDNSエントリを確認できます。 DNSから名前が返された場合にのみ値が返されます。リゾルバライブラリは、DNSを含む複数のソース/etc/hostsと、オプションでmDNS、NIS、LDAPなどを含む他のソースを使用します。 Linuxでは、これらの内容をファイルにリストする必要がありますetc/nsswitch.conf

avahi-daemonコマンドを使用してプロセスを確認できますps -ef | grep [a]vahi。このコマンドは、avahi-resolve --name自動検索サービスを使用して完全修飾名を検索するために使用できます。

答え2

既知のホストのリストを検索すると、マルチキャストDNS(Bonjour)であるかどうかを簡単に確認できます。

$ avahi-browse -a

関連情報