OpenBSD 上的 mDNS;使用标准解析器解析“.local”域中的名称

OpenBSD 上的 mDNS;使用标准解析器解析“.local”域中的名称

我收集了 macOS、Ubuntu Linux 和 OpenBSD 系统。他们使用 mDNS 将动态 IP 地址发布到本地网络,从而使自己可以在域名下使用.local

我的 OpenBSD 7.1 机器可以使用 Avahi 或将其主机信息发布到 LAN开放MDNS,我可以从 Linux 和 macOS 按名称连接到它们。然而,OpenBSD系统无法解析相邻设备的名称无缝地

OpenBSD 系统当 Avahi 实用程序运行 Avahi 0.8 时,通过 Avahi 实用程序解析名称:

$ avahi-resolve-host-name eeyore.local pooh.local laban.local
eeyore.local    192.168.1.127
pooh.local      192.168.1.101
laban.local     192.168.2.100

当使用 OpenMDNS 代替 Avahi 时,我可以使用它的mdnsctl命令从 OpenBSD 查找名称:

$ mdnsctl lookup pooh.local
Address: 192.168.1.101

但是,无论我使用 OpenMDNS 还是 Avahi,普通解析器都看不到这些名称,因此我无法使用 、sshping任何其他工具从 OpenBSD 通过名称访问它们。

我想知道是否可以获得 OpenBSD 的默认解析器,或者可能unwindunbound基本系统中,或者来自软件包的其他 DNS 解析器,以使用 mDNS 作为替代“转发器”。

附加信息:本地路由器是 Ubiquiti Inc. 的 EdgeRouter X(我还有一个备用的 EdgeRouter Lite)。这是本地网络中的 DHCP 和 DNS 服务器。它将 DNS 查询转发到 LAN 之外。人们可以启用dnsmasq路由器上的 DHCP+DNS 服务器来提供来自 DHCP 租约的主机名和/或 IP 地址,作为对来自 LAN 的 DNS 查询的响应,但这更多的是一种解决方法,而不是上述问题的解决方案(因为它不会使 OpenBSD 系统使用 mDNS 进行解析)。

答案1

你可以检查——https://github.com/openbsd/src/blob/013e174a3726f5dfc8d86cfb0c801d83d8f77ad6/lib/libc/asr/asr.c#L625

OpenBSD 仅支持名称解析器 (resolv.conf) 中的“文件”和“绑定”选项:-(

相关内容