在 17.04 中配置 NetworkManager 以使用 systemd-resolved 而不使用 dnsmasq

在 17.04 中配置 NetworkManager 以使用 systemd-resolved 而不使用 dnsmasq

从 16.04 升级到 17.04 后,我不明白主机名解析系统应该如何配置。

首先,我注意到升级后搜索域从中消失了/etc/resolv.conf。在我删除/etc/resolv.conf符号链接并重新启动 NetworkManager 后,它们又回来了。但随后内容变成了如下内容:

# Generated by NetworkManager
search mydomain1 mydomain2
nameserver 127.0.1.1

好的,搜索域在那里。但是为什么名称服务器 127.0.1.1 在那里?没有进程正在监听该地址,因此名称解析不起作用。

据我所知,127.0.1.1 是 dnsmasq 的硬编码监听地址,未在以下位置配置/etc/NetworkManager/NetworkManager.conf

[main]
plugins=ifupdown,keyfile

[ifupdown]
managed=false

[logging]
level=DEBUG

实际上,升级后甚至没有安装 dnsmasq。安装 dnsmasq 并将该行添加dns=dnsmasq到 后NetworkManager.conf,一切正常,但我想知道我是否做错了什么,或者是 NetworkManager 或其他地方的错误。

所以我的问题是,是否可以使用 systemd-resolved 代替 dnsmasq?如果不行,那么改用 systemd-resolved 的目的是什么?

相关内容