如何更换Linux DNS
节点 DNS 解析异常(如回源域名解析失败、证书签发超时)时,可更换为公共 DNS。
国内节点推荐使用:
echo "nameserver 223.5.5.5" > /etc/resolv.conf
echo "nameserver 114.114.114.114" >> /etc/resolv.conf
国外节点推荐使用:
echo "nameserver 8.8.8.8" > /etc/resolv.conf
echo "nameserver 8.8.4.4" >> /etc/resolv.conf
验证是否生效:
nslookup www.baidu.com
防止被系统覆盖
部分系统的 /etc/resolv.conf 由 resolvconf / NetworkManager 自动生成(文件头有 DO NOT EDIT 提示,或它是指向 /run/... 的软链接),重启网络后改动会丢失。两种处理办法:
方式一:锁定文件(简单直接)
chattr +i /etc/resolv.conf
如以后要再修改,先 chattr -i /etc/resolv.conf 解锁。
方式二:修改生成源(以 NetworkManager 为例)
# 编辑对应网卡连接的 DNS,示例连接名为 eth0,可用 nmcli con show 查看
nmcli con mod eth0 ipv4.dns "223.5.5.5 114.114.114.114"
nmcli con up eth0
如果更换后还是不能解析域名,可能是机房网络限制(如 UDP 53 被禁),请咨询 IDC。