目前我的/etc/resolv.conf
读物:
nameserver 127.0.0.1
nameserver 10.255.0.101
nameserver 10.255.0.11
我希望它改为:
search [my domain]
nameserver 10.255.0.101
nameserver 10.255.0.11
nameserver 208.67.222.222
nameserver 208.67.220.220
由于和都/etc/resolv.conf
无法/etc/resolv.conf.d/head
手动编辑,我该如何进行更改?
答案1
第一的,/etc/resolvconf/resolv.conf.d/head
能手动编辑。文件中的注释指出,DO NOT EDIT THIS FILE BY HAND
不适用于/etc/resolvconf/resolv.conf.d/head
其本身,但适用于/etc/resolv.conf
前者所附加的。
尽管如此,在正常情况下您不必编辑/etc/resolvconf/resolv.conf.d/head
。
这些文件/etc/resolvconf/resolv.conf.d/head
和/etc/resolvconf/resolv.conf.d/tail
被提供作为在特殊情况下需要强制将头部和尾部放到生成的文件上的一种方式resolv.conf
,但是如果您正确使用 resolvconf 并且在正常情况下,那么您不必这样做。
你说文件内容是
nameserver 127.0.0.1
nameserver 10.255.0.101
nameserver 10.255.0.11
该行的存在nameserver 127.0.0.1
表明您正在运行本地转发名称服务器,例如 dnsmasq。上述文件不是 resolvconf 在这种情况下通常生成的文件。它通常会生成如下文件。
# 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.0.1
search foo.com
我猜想您的系统上/etc/resolv.conf
不是符号链接,../run/resolvconf/resolv.conf
而是一个纯文件,它可能由 resolvconf 以外的其他程序生成,也可能不由 resolvconf 生成。如果文件完全是静态的,则只需对其进行编辑,使其看起来符合您的要求即可。如果文件是由 resolvconf 以外的其他工具生成的,则找出生成该文件的工具并配置该工具。
或者,恢复符号链接/etc/resolv.conf -> ../run/resolvconf/resolv.conf
并正确配置 resolvconf。
如何从 resolv.conf 中删除本地主机名称服务器?
下列说明仅适用于使用 resolvconf 管理 的情况/etc/resolv.conf
,即/etc/resolv.conf
是 的符号链接../run/resolvconf/resolv.conf
。
如果该行nameserver 127.0.0.1
位于其中一个文件中,/etc/resolvconf/resolv.conf.d/
则将其从那里删除。
否则,该行来自某个本地运行的名称服务器。请卸载该名称服务器,或将该名称服务器配置为不向 resolvconf 注册地址 127.0.0.1。特别是,如果您在本地运行 BIND 9 名称服务器,请将其删除或设置RESOLVCONF=no
为/etc/default/bind9
。
参考:https://bugs.launchpad.net/debian/+source/bind9/+bug/933723
答案2
尝试
sudo vi /run/resolvconf/interface/NetworkManager
删除或替换名称服务器 127.0.0.1,然后使用
sudo resolvconf -u.
答案3
检查你的 NetworkManager 配置:
sudo NetworkManager --print-config
如果有
dns=systemd-resolved
然后编辑设置
/run/resolvconf/interface/systemd-resolved
并更新
sudo resolvconf -u
就我而言,还有
/run/resolvconf/interface/tun0.openvpn
文件(由 OpenVPN 创建),可以安全删除以避免干扰:
sudo rm /run/resolvconf/interface/tun0.openvpn