升级到 20.04 后 DNS 解析器停止工作

Mar*_*ski 8 upgrade networking resolv.conf systemd-resolved 20.04

在 Ubuntu 升级到 20.04 之后,/etc/resolv.conf包含:

nameserver 127.0.2.1
Run Code Online (Sandbox Code Playgroud)

它不起作用。改为:

nameserver 127.0.0.53
Run Code Online (Sandbox Code Playgroud)

但是每次重新启动后它都会被覆盖,我必须重新更改它。

我已经在这个盒子里安装了 Ubuntu 15.10,定期升级它,这是解析器第一次出现这样的错误。淘气!

如何永久解决这个问题?

编辑

的输出$ ls -al /etc/resolv.conf

lrwxrwxrwx 1 root root 29 lis  1  2015 /etc/resolv.conf -> ../run/resolvconf/resolv.conf
Run Code Online (Sandbox Code Playgroud)

内容/etc/resolv.conf

# 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
# 127.0.0.53 is the systemd-resolved stub resolver.
# run "systemd-resolve --status" to see details about the actual nameservers.

nameserver 127.0.0.53
search wroclaw.vectranet.pl
Run Code Online (Sandbox Code Playgroud)

(它曾经是nameserver 127.0.2.1在重新启动后,但如果不更改为127.0.0.53我将无法写这篇文章;)。)

内容/etc/hosts

127.0.0.1   localhost
127.0.1.1   marcin-Lenovo

# The following lines are desirable for IPv6 capable hosts
::1     ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters

#188.165.239.159 wkaliszu.pl

#10.10.9.157    mskorzewski.axit.pl
X.X.X.X mskorzewski.axit.pl
Run Code Online (Sandbox Code Playgroud)

X.X.X.X是一些真实的 IP 地址。)

小智 10

我刚刚安装了 Ubuntu 20.04,不得不删除 netplan(我有我的理由)。然后我有一个名称解析问题需要解决。这是我修复它的方法:

编辑/etc/systemd/resolved.conf和更改/添加这一行:

DNS=1.1.1.1
Run Code Online (Sandbox Code Playgroud)

(我在这里使用 CloudFlare 的 DNS 服务器。)

然后/etc/resolv.conf像这样更改符号链接:

sudo ln -sf /run/systemd/resolve/resolv.conf /etc/resolv.conf
Run Code Online (Sandbox Code Playgroud)

最后,重启。我希望这有帮助!

  • 不需要更改`/etc/systemd/resolved.conf`。删除从 `/etc/resolv.conf` 到 `/run/resolvconf/resolv.conf` 的链接并将新的链接添加到 `/run/systemd/resolve/resolv.conf` 解决了这个问题。旧文件 `/run/resolvconf/resolv.conf` 在每次重启后仍然会被破坏,但我不再使用它了。 (2认同)