Ubuntu 18.04 升级后无法访问 DNS

Ubuntu 18.04 升级后无法访问 DNS

我最近使用 将我的 Ubuntu 虚拟机 (VirtualBox 5.2.8) 从 ubuntu 16.04 升级到 18.04 do-release-upgrade -d。升级过程中出现了很多问题。我不得不使用 apt-get install -f 和 apt-get dist-upgrade 重新启动/恢复升级。不过,它最终完成了。

现在由于某种原因,我必须在sudo dhclient enp0s3每次重启时手动运行才能使其正确接收网络。

我该如何设置它才能正确启动?

我注意到以下情况in /var/log/syslog

11291 May  2 13:24:07 my-vm dhclient[1416]: /var/lib/NetworkManager/dhclient-enp0s3.conf line 47: semicolon expected.
11292 May  2 13:24:07 my-vm dhclient[1416]: send
11293 May  2 13:24:07 my-vm dhclient[1416]: ^
11294 May  2 13:24:07 my-vm dhclient[1416]: /var/lib/NetworkManager/dhclient-enp0s3.conf line 47: expecting a statement.
11295 May  2 13:24:07 my-vm dhclient[1416]: send host-name "my-vm";
11296 May  2 13:24:07 my-vm dhclient[1416]:                        ^
11297 May  2 13:24:07 my-vm dhclient[1416]: /var/lib/NetworkManager/dhclient-enp0s3.conf line 50: semicolon expected.
11298 May  2 13:24:07 my-vm dhclient[1416]: option
11299 May  2 13:24:07 my-vm dhclient[1416]:  ^
11300 May  2 13:24:07 my-vm dhclient[1416]: /var/lib/NetworkManager/dhclient-enp0s3.conf line 71: no option named ms-classless-static-routes in space dhcp
11301 May  2 13:24:07 my-vm dhclient[1416]: also request ms-classless-static-routes;
11302 May  2 13:24:07 my-vm dhclient[1416]:               ^
11303 May  2 13:24:07 my-vm dhclient[1416]: /var/lib/NetworkManager/dhclient-enp0s3.conf line 71: ms-classless-static-routes: expected option name.
11304 May  2 13:24:07 my-vm dhclient[1416]: also request ms-classless-static-routes;
11305 May  2 13:24:07 my-vm dhclient[1416]:                                         ^
11306 May  2 13:24:07 my-vm dhclient[1416]: DHCPREQUEST of 10.0.2.15 on enp0s3 to 255.255.255.255 port 67 (xid=0x20425ef9)
11307 May  2 13:24:07 my-vm dhclient[1416]: DHCPACK of 10.0.2.15 from 10.0.2.2

手动运行时dhcpclient enp0s3我发现不同线路上存在问题。

13097 May  2 15:37:32 my-vm dhclient[5756]: /etc/dhcp/dhclient.conf line 28: semicolon expected.
13098 May  2 15:37:32 my-vm dhclient[5756]: timeout
13099 May  2 15:37:32 my-vm dhclient[5756]: ^
13100 May  2 15:37:32 my-vm dhclient[5756]: /etc/dhcp/dhclient.conf line 28: expecting a statement.
13101 May  2 15:37:32 my-vm dhclient[5756]: timeout 300;
13102 May  2 15:37:32 my-vm dhclient[5756]:             ^
13103 May  2 15:37:32 my-vm dhclient[5756]: /etc/dhcp/dhclient.conf line 28: semicolon expected.
13104 May  2 15:37:32 my-vm dhclient[5756]: 
13105 May  2 15:37:32 my-vm dhclient[5756]: ^
13106 May  2 15:37:32 my-vm dhclient[5756]: DHCPREQUEST of 10.0.2.15 on enp0s3 to 255.255.255.255 port 67 (xid=0x392381bf)
13107 May  2 15:37:32 my-vm dhclient[5756]: DHCPACK of 10.0.2.15 from 10.0.2.2

编辑

我修复了文件中的错误var/log/syslog。我在一行中缺少一个分号/etc/dhcp/dhclient.conf

但这并没有解决问题。

我发现了这个:

15687 May  2 16:30:12 mds-vm dnsmasq[1424]: chown of PID file /run/NetworkManager/dnsmasq.pid failed: Operation not permitted
...
15690 May  2 16:30:12 mds-vm NetworkManager[897]: <info>  [1525293012.4308] dnsmasq[0x5601285fd1e0]: dnsmasq appeared as :1.26

编辑

我尝试重新安装:

sudo apt-get install --reinstall dnsmasq dnsmasq-base network-manager network-manager-config-connectivity-ubuntu isc-dhcp-client

但它并没有解决问题。

编辑 我退出dns=dnsmasq/etc/NetworkManager/NetworkManager.conf,一切似乎都正常了。

答案1

我从 /etc/NetworkManager/NetworkManager.conf 中删除了 dns=dnsmasq,一切似乎都正常了。

使用 dnsmasq 确实已“弃用”,因为 Ubuntu 18.04 LTS 默认改为使用 systemd-resovled。虽然仍然可以恢复并使用dnsmasqNetworkManager,但可能还需要禁用或重新配置 systemd-resolved 以避免冲突。例如,我不得不恢复使用 dnsmasq,因为resolvconf:如果 systemd-resolved 管理 DNS,则使用 /run/systemd/resolve/resolv.conf目前仍未反向移植到 Ubuntu 18.04 LTS 中的 docker CE 版本,并导致容器无法解析阻止访问 docker 所依赖的默认公共 DNS 服务器的企业网络上的 DNS。

chown of PID file /run/NetworkManager/dnsmasq.pid failed: Operation not permitted

上述警告并非致命问题,dnsmasq 仍可与 NetworkManager 一起使用。此问题已在 dnsmasq-base 基础软件包版本2.79-1(和2.78-3)中得到解决,方法是将失败的 chown 操作降级为警告。请参阅:Debian 错误报告日志 - 889857 条消息 10

还,从 2.78-2 到 2.78-3 的差异。下面这行代码却生成了警告:

my_syslog(LOG_WARNING, "chown of PID file %s failed: %s", daemon->runfile, strerror(chown_warn));

答案2

从 16.04(xenial)升级到 18.04(bionic)后,网络管理器没有 DNS。

虽然我在 GUI 中编写了 DNS。

确实,删除dns=dnsmasq对我有帮助。

非常感谢!

相关内容