ubuntu修改dns
你看到的 /etc/resolv.conf 内容:
nameserver 127.0.0.53
options edns0 trust-ad
search .
这是 Ubuntu 24.04(及较新 systemd 系统)的标准配置**,完全正常!**
但 127.0.0.53 是 本地 stub resolver(由 systemd-resolved 提供),它本身不解析域名,而是****转发请求到上游 DNS 服务器。
你现在遇到 Could not resolve host mirrors.tuna.tsinghua.edu.cn,说明 systemd-resolved 没有正确配置上游 DNS**,或者上游 DNS 不可达。**
✅ 正确排查与修复步骤
第一步:查看 systemd-resolved 的实际 DNS 配置
运行:
resolvectl status
你会看到类似输出(关键看 “DNS Servers”):
Global
Protocols: -LLMNR -mDNS -DNSOverTLS DNSSEC=no/unsupported
DNS Servers: 192.168.1.1 ← 这是你当前使用的上游 DNS!
DNS Domain: ~.
Link 2 (eth0)
Current Scopes: DNS
Protocols: +DefaultRoute +LLMNR -mDNS -DNSOverTLS DNSSEC=no/unsupported
DNS Servers: 192.168.1.1
DNS Domain: local
🔍 重点看 DNS Servers 字段**:**
- 如果是
192.168.x.x→ 这是你路由器的 IP,说明系统依赖****路由器提供 DNS - 如果是空的、或只有
127.0.0.53→ 上游 DNS 未设置,会导致解析失败!
❌ 很多家庭路由器 DNS 不稳定(尤其解析国内镜像站时),建议手动指定公共 DNS。
第二步:为 systemd-resolved 设置可靠的上游 DNS
方法:通过 resolved.conf 全局设置(推荐)
sudo nano /etc/systemd/resolved.conf
取消注释并修改以下行:
[Resolve]
DNS=223.5.5.5 114.114.114.114
#FallbackDNS=8.8.8.8 8.8.4.4
Domains=~.
LLMNR=no
MulticastDNS=no
DNSSEC=no
Cache=yes
✅ 推荐使用 阿里 DNS(223.5.5.5) + 114 DNS(114.114.114.114),对国内镜像解析更稳定。
保存后,重启服务:
sudo systemctl restart systemd-resolved
💡 注意:不需要改
/etc/resolv.conf,它会自动保持为nameserver 127.0.0.53,这是正确的。
第三步:验证 DNS 是否生效
# 查看当前生效的 DNS
resolvectl status
# 测试解析清华镜像
resolvectl query mirrors.tuna.tsinghua.edu.cn
✅ 正常输出应包含 IP 地址,例如:
mirrors.tuna.tsinghua.edu.cn: 101.6.15.130
再测试网络连通性:
ping -c 3 mirrors.tuna.tsinghua.edu.cn
curl -I http://mirrors.tuna.tsinghua.edu.cn
第四步:再次更新 APT
sudo rm -rf /var/lib/apt/lists/*
sudo apt update
现在应该能正常连接清华镜像,不再出现 Ign 或解析错误!