Ubuntu 服务器 18.04(仿生)网络设置在电源循环后损坏

Ubuntu 服务器 18.04(仿生)网络设置在电源循环后损坏

重启前网络正常。重启后,系统和所有网络设置均不正确。

笔记:

  • Ubuntu 服务器 18.04 (Bionic)
  • Canonical livepatch 几天前已经建立。
  • 新的网络设备 netplan 似乎没有安装(但是有一个文件/etc/netplan/50-cloud-init.yaml
  • 该机器似乎确实从路由器获得了 DHCP 租约(将通过以太网连接,IP 地址为 192.168.1.29)。
  • enp7s0 接口(我相信是所需的连接设备)在启动时处于关闭状态。手动启动 enp7s0 接口可以连接到路由器:
  • /etc/resolv.conf已符号链接到/run/systemd/resolve/stub-resolv.conf文件。当我手动更新它时,nameserver 192.168.1.1它就可以正常工作。
ping 192.168.1.1
connect: Network is unreachable

ping google.com
ping: google.com: System error

dig google.com
connection timed out ...
...

ipconfig enp7s0 192.168.1.29 netmask 255.255.255.0 broadcast 192.168.1.255
ipconfig enp7s0 up
ping 192.168.1.1
64 bytes from 192.168.1.1: ...
64 bytes from 192.168.1.1: ...
64 bytes from 192.168.1.1: ...

nslookup google.com
Server:   192.168.1.1
Address:  192.168.1.1#53

Non-authoritative answer:
Name google.com
Address 172.217.164.110
...

ping google.com
ping: google.com: System error # ... still network issue, most tools do not resolve hosts


systemd-resolve google.com
google.com: 216.58.195.238

-- Information acquired via protocol DNS in 3.0494s.
-- Data is authenticated: no


我也尝试过配置,/etc/resolv.conf /etc/nsswitch.conf但没有成功。

并且在重新启动时,网络管理员可能会将一些 /etc 文件systemd-networkd重置systemd-resolved为不起作用的设置。

有人知道发生了什么吗?我可以发布日志或任何可以帮助诊断的内容。

答案1

我自己调查了这个问题——似乎我的机器上的 Canonical Livepatch 失败了(我还没有找到根本原因)。当它失败时,它只对 cloud-init 进行了部分更新,虽然没有安装 netplan,但许多网络设置已被更改以假设它已安装。这导致多个网络配置处于部分迁移状态。虽然我能够通过手动更改设置来恢复一些网络连接,但查找和配置它们所涉及的工作量非常大,而且如果没有启动脚本,许多更改就不会持久。我发现最合理的解决方案是重新安装操作系统并禁用 Canonical Livepatch。

如果确实是 18.04 的网络配置补丁导致了此问题,@Canonical 应该记住 18.04 是指定的 LTS——实时补丁在任何情况下都不应应用可能导致 LTS 服务器网络设置丢失的更新。如果是这样,那是一种极其粗心的行为。如果 Canonical 的任何人读到这篇文章,我将不胜感激任何对 Livepatch 内部机制有更多了解的人的评论,以确认和评估根本原因。

相关内容