如何将两个 IPv6 dns-nameservers 添加到 /etc/network/interfaces 中?

Thi*_*CMC 9 ipv6 dns resolvconf

使用 IPv4,我可以毫无问题地添加两个 DNS 名称服务器,如下所示:

"dns-nameservers 8.8.4.4 8.8.8.8"
Run Code Online (Sandbox Code Playgroud)

然后在我的 resolv.conf 我得到:

   nameserver 8.8.4.4
   nameserver 8.8.8.8
Run Code Online (Sandbox Code Playgroud)

但是,它不适用于 IPv6,只有第一个 IPv6 DNS 服务器出现在我的 resolv.conf 中,请看:

"dns-nameservers 2001:4860:4860::8844 2001:4860:4860::8888"
Run Code Online (Sandbox Code Playgroud)

但是,我的 resolv.conf 只保留第一个:

   nameserver 2001:4860:4860::8844
Run Code Online (Sandbox Code Playgroud)

显然,Ubuntu (resolvconf / ifupdown) 忽略了第二个 DNS 名称服务器,那么,如何修复它?!

这是我的/etc/network/interfaces文件:

auto lo
iface lo inet loopback
iface lo inet6 loopback

auto eth0
iface eth0 inet6 static
        address 2800:210:0:4::2
        netmask 64
        gateway 2800:210:0:4::1
        dns-nameservers 2001:4860:4860::8844 2001:4860:4860::8888
Run Code Online (Sandbox Code Playgroud)

bel*_*qua 3

我最初认为这是一个错误,但我假设@Sander 的答案在这里是正确的。不过,我不确定 resolvconf 是否使用 resolv.h 或其他内容来获得最大名称服务器值。

一般来说,不使用 resolv.conf,可以尝试以下几件事:

您可以尝试按照Google 开发文档中的建议编辑 dhclient.conf :

prepend domain-name-servers 2001:4860:4860::8888, 2001:4860:4860::8844;

对于 Ubuntu 上的此方法,我相信当前路径是/etc/dhcp/dhclient.conf.

同一份文档提供了使用 NetworkManager 的说明。如果您使用它,您可以右键单击网络图标,找到您的连接,然后选择“编辑”,然后转到 IPv6 选项卡。您可以在那里设置“附加 DNS 服务器”。


May*_*hux 2

手动将其添加到/etc/resolv.conf

 nameserver 2001:4860:4860::8844

 nameserver 2001:4860:4860::8888
Run Code Online (Sandbox Code Playgroud)

  • 不,我无法手动添加它,resolv.conf 有:“请勿手动编辑此文件 - 您的更改将被覆盖” (3认同)
  • @maythux 可悲的是(在我看来),编辑 resolv.conf 已被弃用......但是,这可以用作测试。你不会破坏任何东西。 (3认同)