使用来自 avahi 的信息更新 dnsmasq

使用来自 avahi 的信息更新 dnsmasq

这似乎是每个人都想要的东西,但我很惊讶地发现我的问题没有解决方案(我能找到的)。我想要的是运行本地 DNS 服务器(已完成)并向.localavahi 发送上游请求。我不明白为什么这么简单的事情似乎完全不可能。我的动机是能够从任何其他设备(例如 Android 设备)通过名称访问我网络上的任何节点。

难道没有一个服务能够充当所有可用名称解析方法的 DNS 聚合器吗?WINS、mDNS、普通 DNS、从 dhcp 扩展主机名...

答案1

遇到了同样的问题,并采取了以下措施:

(0)安装和配置avahi-daemon

(1)安装libnss-mdns

(2)在 中/etc/nsswitch.conf,按如下方式配置您的hosts线路:

hosts: files mdns4_minimal [NOTFOUND=return] dns

(3)在 中dnsmasq.conf,确保您没有该no-hosts选项,因为我们想要在系统 NSS 上进行后端处理。然后,将其设置.local为您的默认域:

local=/local/
domain=local
expand-hosts

(4)重新启动dnsmasq,DNS查询现在应该可以回退到mDNS。

答案2

我最终也将我的 DNS 服务器 pihole 用作 DHCP 服务器。如果您为 DHCP 客户端提供本地域名和固定名称的 IPS,您将能够使用该名称 + 本地域名来访问它们。例如,从我的 Mac 上我使用,octopi.local但从我的 Android 手机上我可以使用它,octopi.home.home是我的本地域名,也是octopi我为与我的 octopi 服务器相对应的固定 DHCP 条目指定的名称。不像 avahi 那样自动,但至少它可以工作。

相关内容