域名解析失败排查与DNS配置


域名解析失败(ERR_NAME_NOT_RESOLVED)意味着浏览器无法将域名转换为IP地址,网站自然无法访问。本文介绍DNS问题的排查方法和正确的DNS记录配置。

一、诊断工具使用

1.1 nslookup

# 基本查询
nslookup yourdomain.com

# 指定DNS服务器查询
nslookup yourdomain.com 8.8.8.8        # Google DNS
nslookup yourdomain.com 1.1.1.1        # Cloudflare DNS
nslookup yourdomain.com 223.5.5.5      # 阿里DNS

# 查询特定记录类型
nslookup -type=MX yourdomain.com
nslookup -type=TXT yourdomain.com
nslookup -type=NS yourdomain.com

1.2 dig(更详细)

# 完整查询
dig yourdomain.com

# 查询A记录
dig yourdomain.com A

# 查询NS记录(看域名使用的DNS服务器)
dig yourdomain.com NS

# 追踪解析路径(最有用的排查命令)
dig +trace yourdomain.com

# 查询特定DNS服务器
dig @8.8.8.8 yourdomain.com

1.3 在线DNS检查工具

二、常见DNS问题与解决

2.1 域名未设置NS服务器

新注册的域名或修改了NS后未生效:

# 检查NS记录
dig yourdomain.com NS

# 如果返回空,说明NS未设置
# 到域名注册商处设置Nameserver
# Cloudflare: ns1.cloudflare.com / ns2.cloudflare.com
# Namecheap默认DNS: dns1.namecheap.com / dns2.namecheap.com

NS修改后全球生效通常需要数小时到48小时。

2.2 A记录未添加或IP错误

# 检查A记录
dig yourdomain.com A +short

# 如果返回空或错误IP,到DNS管理面板添加/修改A记录
# 类型: A
# 名称: @ (根域名) 或 www
# 值: 你的VPS IP地址
# TTL: 自动 或 300

2.3 DNS缓存导致未生效

# Windows清除DNS缓存
ipconfig /flushdns

# macOS清除DNS缓存
sudo dscacheutil -flushcache; sudo killall -HUP mDNSResponder

# Linux清除DNS缓存
systemd-resolve --flush-caches
# 或
resolvectl flush-caches

2.4 域名过期或被暂停

域名过期后解析会失效。检查域名状态:

# 查看域名WHOIS信息
whois yourdomain.com

# 或使用在线工具 who.is 查询
# 关注:Expiry Date、Status等字段

如果域名状态为clientHold或serverHold,联系注册商解决。

三、DNS记录配置指南

常用DNS记录类型说明:

记录类型用途示例值说明
A域名指向IPv41.2.3.4最基础的记录
AAAA域名指向IPv62001:db8::1IPv6地址
CNAME域名别名example.com不能与其他记录共存于根域名
MX邮件接收mail.yourdomain.com需设置优先级
TXT文本记录v=spf1 mx ~allSPF/DKIM/验证用
NSDNS服务器ns1.cloudflare.com在注册商处设置

典型建站DNS配置

# 基本网站配置
@     A     你的VPS_IP          # 根域名
www   A     你的VPS_IP          # www子域名
# 或者用CNAME
www   CNAME yourdomain.com     # www指向根域名

# 邮件配置
@     MX    mail.yourdomain.com (优先级10)
mail  A     你的VPS_IP

# SPF记录(防邮件伪造)
@     TXT   v=spf1 mx ip4:你的IP ~all

四、VPS端DNS配置

VPS自身的DNS解析也可能出问题:

# 检查VPS的DNS配置
cat /etc/resolv.conf

# 如果DNS服务器有问题,修改为公共DNS
echo "nameserver 8.8.8.8" > /etc/resolv.conf
echo "nameserver 1.1.1.1" >> /etc/resolv.conf

# 测试VPS的DNS解析
dig google.com @127.0.0.1

五、Cloudflare特殊问题

使用Cloudflare时的常见DNS问题:

Tip: DNS问题通常修改后需要等待生效。如果急需验证,使用 dig @8.8.8.8 查询Google DNS是否已更新。更多教程请查看新手教程
关于本站

搬瓦工VPS中文网(bwgvps.com)是非官方中文信息站,整理搬瓦工 BandwagonHost 的优惠信息、使用教程和方案对比,方便中文用户选购和使用。

新手必读
搬瓦工优惠码

当前最大折扣优惠码:

NODESEEK2026(优惠 6.77%)

在购买方案时填入优惠码即可自动抵扣。详见 优惠码使用教程