为什么 /etc/resolve.conf 没有显示我的 DHCP 指定的名称服务器?

为什么 /etc/resolve.conf 没有显示我的 DHCP 指定的名称服务器?

我最近设置了一个带有 DNS 和 DHCP 服务器的 Windows AD 域控制器。Windows 客户端将其 DNS 服务器设置为与 DHCP 分发的内容相匹配,但我的 Ubuntu 16.04 工作站仅设置了环回地址和搜索域:

我原本希望在 /etc/resolveconf 中看到设置名称服务器 192.168.14.4

# Dynamic resolv.conf(5) file for glibc resolver(3) generated by resolvconf(8)
#     DO NOT EDIT THIS FILE BY HAND -- YOUR CHANGES WILL BE OVERWRITTEN
nameserver 127.0.1.1
search pdf-xchange.net

如果我将 dns-nameservers 192.168.14.4 添加到 /etc/network/interfaces ,我会在 /etc/resolv.conf 中看到它,但我希望一些 Ubuntu 桌面使用 DHCP 而不必手动修改它们。

为什么 DHCP 客户端不像 /etc/network/interfaces 中的静态条目那样添加 DNS 名称服务器?我想要这个设置,因为它被指定为将计算机添加到 AD 域的先决条件:

域控制器是 /etc/resolv.conf 中指定的主要 DNS 解析器。

https://help.ubuntu.com/lts/serverguide/sssd-ad.html.en-GB#sssd-ad-requirements

答案1

这里的文档有误,或者说不太准确。在标准的 16.04 工作站安装中,您将看到指向 localhost 的 resolv.conf。在端口 53 上运行的 dnsmasq 实例将处理 DNS 请求。原因超出了这个问题的范围。

无论如何,您可以通过运行以下命令列出由网络管理器配置的正在使用的 DNS 服务器:

$ nmcli dev show | grep DNS
IP4.DNS[1]:                             10.5.2.81
IP4.DNS[2]:                             10.5.2.82

为了完整起见,在正常的 18.04 安装中需要使用如下命令:

$ systemd-resolve --status | sed '/DNS Servers/,$!d' 

相关内容