AzureLinux云计算系统

Linux Bug公告:Ubuntu 18.04升级systemd到版本systemd237-3ubuntu10.54后无法解析DNS

消息来源:Azure 云平台全球公告TrackingId/2TWN-VT0。根据刚刚发布的公告,Ubuntu 18.04升级systemd到版本systemd237-3ubuntu10.54后会出现无法解析DNS,目前问题依然在发生,可能会影响所有已知安装该systemd版本的Linux Server 以及AKS Node。请按照本文描述的方法进行验证和解决。

 

公告全文:

从2022年8月30日大约06:00 UTC开始,一些运行Ubuntu 18.04(代号bionic)的虚拟机的客户最近升级到systemd版本237-3ubuntu10.54。已收到报告在升级到该systemd版本之后尝试访问任何资源时遇到DNS解析错误。关于这个问题的报道仅限于这个单一的Ubuntu版本。

Canonical/Ubuntu网站上已经强调了这个bug和潜在的修复:https://bugs.launchpad.net/ubuntu/+source/systemd/+bug/1988119

客户可以考虑的临时解决方案是重新启动受影响的虚拟机实例,以便它们刷新DHCP租约以及接收新的DNS解析。

如果您正在使用Ubuntu 18.04映像运行虚拟机,并且遇到连接问题,我们建议您评估上述缓解选项。

如果您的Ubuntu 18.04映像没有受到影响,但启用了无人值守安全更新(Apt unattended upgrade),我们建议您检查此设置并暂停更新,直到Ubuntu问题得到缓解。

 

症状:

在没有做任何操作的情况下忽然Ubuntu OS无法进行任何域名解析,使用nslookup命令进行验证,返回错误为:

nslookup andyx.net
;; connection timed out; no servers could be reached

已知在UbuntuOS发布的时候默认启用了无人值守安全更新功能(Apt unattended upgrade),该功能将会尝试定期的升级关键Packages,因此当有问题的Systemd版本发布之后也可能会被触发升级。

 

验证:

1. 运行命令以便检查是否最近有systemd升级发生:

grep systemd /var/log/apt/history.log

Upgrade: systemd-sysv:amd64 (237-3ubuntu10.54)

2. 运行命令检查当前的systemd版本是否为受影响的systemd237-3ubuntu10.54:

dpkg -l | grep systemd

ii  systemd                                237-3ubuntu10.54                            amd64        system and service manager

 

解决方法:

临时解决方法:

– 修改 /etc/systemd/resolved.conf
– 激活参数 FallbackDNS=8.8.8.8 以及 DNS=8.8.8.8
– 重新启动systemd-resolved服务 sudo systemctl restart systemd-resolved.service
– 再次使用nslookup看是否可以解析到andyx.net

Linux Bug公告:Ubuntu 18.04升级systemd到版本systemd237-3ubuntu10.54后无法解析DNS插图

 

永久解决方法:

目前等待Ubuntu官方修正这个问题并发布新的systemd版本

 

参考文献:

  1. 公告来源:https://app.azure.com/h/2TWN-VT0/e9d1ab
  2. Ubuntu Bug:Bug #1988119 “Update to systemd 237-3ubuntu10.54 broke dns” : Bugs : systemd package : Ubuntu (launchpad.net)