260121-ubuntu 域名ping 提示Temporary failure in name resolution-ping-baidu.com

ubuntu 域名ping 提示Temporary failure in name resolution

只要 任何域名 都报 Temporary failure in name resolution,就是 本机 DNS 解析链彻底断了,与具体域名无关。
Ubuntu 20.04+ 默认走 systemd-resolved,90 % 是它没跑 / 配置丢失 / 上游 DNS 无响应。
按下面「4 句命令 → 1 次验证」一次性修好即可:


  1. 确认 systemd-resolved 活着

1
systemctl is-active systemd-resolved || sudo systemctl enable --now systemd-resolved

  1. 把 /etc/resolv.conf 指向本地 stub

1
sudo ln -sf /run/systemd/resolve/stub-resolv.conf /etc/resolv.conf

确保文件第一行是

1
nameserver 127.0.0.53

  1. 给 resolver 换可靠的公共 DNS

1
2
3
sudo mkdir -p /etc/systemd/resolved.conf.d
echo -e "[Resolve]\nDNS=8.8.8.8 1.1.1.1" | sudo tee /etc/systemd/resolved.conf.d/99-public.conf
sudo systemctl restart systemd-resolved

  1. 一键验证

1
systemd-resolve google.com && ping -c3 google.com

能解析、能 ping 通就表示修复完成,再去跑你的证书脚本即可。