我喜欢使用 Ubuntu,但今天我遇到了一个问题。18.04 LTS 推出了 Netplan 和 systemd-resolve。我想在 18.04 服务器上部署 CoreDNS。如果 Netplan 是未来,那么我希望有一种部署 CoreDNS 的方法,可以使用 53/tcp 和 53/udp,而无需“破坏”我的系统。提前感谢您的帮助。Gael
答案1
在现有的 18.xx 系统中,DNS 由 systemd-resolved 管理。
虽然这解决了 dnsmasq 和 systemd-resolved 同时运行时出现的问题,但它也应该可以解决您的 CoreDNS 问题......
关于dnsmasq
和systemd-resolved
...
执行ps auxc | grep -i dns
和ps auxc | grep -i resolv
并查找dnsmasq
和systemd-resolved
,如果两者都在运行,则需要systemd-resolved
通过编辑/etc/systemd/resolved.conf
和禁用的 DNS 部分......
改变:
#DNSStubListener=yes
到:
DNSStubListener=no
然后重新启动 systemd-resolve 和 dnsmasq,或者重新启动。
你可能需要重置符号链接 /etc/resolv.conf (如果 dnsmasq 没有运行)...
sudo mv /etc/resolv.conf /etc/resolv.conf.OLD
# 保存旧的符号链接
sudo ln -s /run/systemd/resolve/resolv.conf /etc/resolv.conf
# 创建新的符号链接
笔记:原始符号链接是……
sudo ln -s /run/resolvconf/resolv.conf /etc/resolv.conf
答案2
systemd-resolved 绑定的唯一地址是 127.0.0.53。要在运行 systemd-resolved 作为本地解析器的系统上部署名称服务器,您应该配置该 DNS 服务器以绑定到您希望它侦听的特定地址或接口,但 127.0.0.53 除外。