外部DNS查找没有问题,但是对于非FQ域(即只有主机名部分)的任何内容都会失败,除非我显式地强制它使用PiHole来解决它。
nslookup myhost # this fails with SERVFAIL
nslookup myhost 192.168.12.34 # this works我确信DNS条目是有效的(通过PiHole上的“本地DNS记录”接口添加),因为它们来自我网络上没有使用systemd的其他系统。
/etc/resolv.conf是systemd的默认值(指127.0.0.53),就像我两天前刚安装的一样。
resolvectl status将PiHole的IP显示为我的wifi连接(唯一的活动连接)的唯一DNS服务器。
这是PopOS 20.04的新安装,我的PiHole刚刚更新为5.0。
编辑:为了澄清,这个主机没有运行PiHole -这是在网络上的另一个主机上。
有人对这是怎么回事有什么想法吗?
耽误您时间,实在对不起。
发布于 2020-05-16 07:11:07
最简单的方法是通过将resolv.conf符号链接指向另一个文件(其中包含我的PiHole的IP),从而绕过环回解析器:
sudo ln -sf /run/systemd/resolve/resolv.conf /etc/resolv.conf
发布于 2020-05-16 00:55:52
DNS不识别短名称,即主机名,但没有其他信息。
如果只给nslookup一个主机名,它将尝试添加配置为搜索域的任何内容。这通常在/etc/rupv.conf中是这样的:
$ cat /etc/resolv.conf
# Generated by NetworkManager
search domain.com
nameserver 10.0.0.1如果您没有搜索域,或者在配置的搜索域之外使用主机的名称,则不会解析。
DNS需要一种方法来查找FQDN以进行解析。
这只是我对我所掌握的有限信息的猜测。
https://unix.stackexchange.com/questions/586930
复制相似问题