设备如何在本地网络上添加 DNS 条目?

设备如何在本地网络上添加 DNS 条目?

我有一个 D-Link WiFi 扩展器 DAP-1320,不知何故,当它插入时,它使我的 Linux 盒子能够解析dlinkap.local其 IP 地址。我不必添加任何东西/etc/hosts

在过去,一切都在/etc/hosts和 的基础上进行/etc/resolv.conf,但现在看看/etc/resolv.conf,我看到“解析器”管理该文件,我所做的任何更改都将被覆盖。

我有点怀念 Linux 的旧时光:)

无论如何,设备允许其插入的网络通过名称来识别它的机制是什么?是 Bonjour 还是 UPnP?它是如何工作的?

答案1

DHCP 客户端通常将其名称发送到 DHCP 服务器。该名称通常记录在租用文件中,并且可以作为默认域下的条目添加到本地 DNS 服务器。 (有些路由器会使用.local,尽管.localnet会更合适。)如果您有注册域,请考虑将路由器上的域设置为子域,例如lan.example.com.

.local域通常用于自动发现。它们是用于此服务的几个名称,例如mdnsbonjouravahi。现代解析器通常会从此服务返回名称。

根据操作系统,您可以使用nslookuphost命令检查 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

相关内容