本文旨在帮助用户通过简单的排查步骤,快速解决域名解析不生效的问题。
排查前须知
DNS生效存在延迟,修改/删除解析请等待 ”TTL时长+10分钟“ 再开始排查,详情可参见删除/修改记录解析多久生效? 。
解析生效检测
生效检测工具(推荐)
登录云解析DNS控制台>权威域名解析页面>权威域名页签>选择域名并单击解析设置。
在解析设置页面中,找到您需要测试的解析记录,单击其右侧操作栏中的生效检测。
在拨测工具页面,等待查询结果。如果解析结果与您设置的记录值一致,则表示解析已生效;如果不一致,则需等待运营商DNS缓存更新后,再次进行测试。
(在本示例中,设置的记录值为
192.0.2.0
,查询的解析结果与设置的相同,代表解析正常生效)
nslookup命令(Windows 默认支持)
1 . 查看本地DNS解析结果。
命令:nslookup 您的域名(示例:nslookup example.com)
2 . 指定公共DNS,查询解析生效情况。
命令:nslookup 您的域名公共DNS(以云解析公共DNS服务器为示例:nslookup example.com 223.5.5.5)
3 . 根据记录类型进行查询,比如MX,CNAME,NS,PTR等
命令:nslookup -type=记录类型 你的域名(示例:nslookup -type=NS example.com)
4 . 查看域名在指定权威服务器上的解析结果。
命令:nslookup 您的域名 权威服务器(示例:nslookup example.com ns1.alidns.com)
dig命令(信息详细,适合调试)
1 . 最常用的查询命令
命令:dig 您的域名(示例:dig example.com)
2 . 根据记录类型进行查询,比如MX,CNAME,NS,PTR等,只需将类型加在命令后面即可。
命令:dig 您的域名 记录类型(示例:dig example.com NS)
解析未生效、或者未设置解析记录场景的示例(示例:dig example.com CNAME)。
3 . 指定域名DNS服务器测试解析是否生效的命令,以下以指定云解析DNS服务器和公共DNS服务器作为查询解析是否生效的示例演示。
云解析DNS服务器命令:dig 您的域名 @ns1.alidns.com (示例:dig example.com @ns1.alidns.com )
公共DNS服务器命令:dig 您的域名 @223.5.5.5(示例:dig example.com @223.5.5.5 )
4 . 使用dig+trace参数,使用这个参数之后将显示从根域逐级查询的过程,trace查询可以看到根域、 顶级域、以及一级域名的权威服务器的地址,及其各自的返回结果,这样对于追踪DNS解析中的问题有很大的帮助。
命令:dig 您的域名 +trace(示例:dig example.com +trace)
5 . 获取 DNS 出口 IP,通过查询特殊域名返回客户端出口 IP(即本地 DNS 服务器对外的公网 IP),确认 NAT 或代理后的真实请求源地址(影响 CDN 调度)。
命令:dig +short TXT whoami.ds.akahelp.net
6 . 查询域名使用的域名DNS服务器。
命令:dig ns 您的域名(这里输入主域名即可)
7 . 可通过指定客户机IP,查询权威DNS返回的解析地址,来判断智能解析调度的精准度。
命令:dig @权威DNS服务器 域名 +subnet=指定客户机IP(示例:dig @ns1.alidns.com example.com +subnet=10.10.10.10)
异常快速定位
你的异常症状 | 直接跳转章节 | 高频场景 |
所有地区都无法访问 | 域名状态异常/DNS服务器错误 | |
部分区域访问异常 | 未选择默认线路/localDNS缓存原因 | |
修改/删除解析记录后不生效 | localDNS缓存原因 | |
修改DNS服务器后解析不生效 | 顶级域的DNS服务器缓存设置 | |
邮件收发异常 | 解析记录设置错误/缓存未生效 | |
解析已生效,但网站无法访问 | 备案/网站服务器配置异常 |
1. 新手必查(覆盖90%问题)
域名状态异常
查看:whois查询>输入您的域名>单击查询按钮>查看域名状态
❌ 异常状态:
serverHold
/clientHold
解决:
阿里云注册域名:解除域名锁定状态Clienthold、Serverhold。
非阿里云注册域名:您需要联系您的域名注册商进行处理。
DNS服务器状态检查
查看:控制台>权威域名解析页面>权威域名页签>查看列表DNS服务器地址栏
❌ 异常状态:未使用系统分配的DNS地址/域名的DNS信息未查询到/探测超时
解析记录设置问题
查看:控制台>权威域名解析页面>权威域名页签>选择对应的域名>查看解析记录列表
❌ 异常场景:未查询到相关域名解析记录/解析记录为暂停状态/主机记录设置错误/记录值设置错误
异常场景说明及解决方案:
异常场景
说明
解决方案
未查询到相关域名解析记录
解析记录列表中,没有对应的域名相关类型的解析记录。
根据业务需求添加相应的解析记录。
解析记录为暂停状态
解析记录列表中,有对应的域名相关类型的解析记录,但状态为暂停,导致解析不生效。
启用该解析记录,确保其状态为“启用”。
主机记录设置错误
若要为主域名本身
example.com
设置解析记录,主机记录输入@
。若要为子域名
www.example.com
设置解析记录,主机记录输入www
。
修改主机记录为正确值。
记录值设置错误
A记录:通常指网站服务器的公网IPv4地址。示例:
192.0.2.1
AAAA记录:通常指网站服务器的IPv6地址。示例:ff03:0:0:0:0:0:0:c1
CNAME记录:记录值为 CNAME 指向的域名,只可以填写域名。示例:
aliyundoc.com
更多记录值说明,请参见添加解析记录。
修改记录值为正确值。
2. 部分区域访问异常
解析请求来源未配置默认线路
查看:控制台>权威域名解析页面>权威域名页签>选择对应的域名>查看解析记录列表
❌ 异常状态:解析请求来源未配置默认线路。
解决:
本地DNS服务器缓存导致
当修改完解析后,解析生效时间是取决于本地DNS服务器的缓存刷新时间。如果某些地区的 DNS 缓存刷新得快,那么就生效快;如果某些地区本地DNS缓存刷新时间长,缓存信息里保存的仍然是原来的解析结果,所以这些地区就会出现解析不生效或者无法访问的情况。
解决:请耐心等待解析生效。这种情况云解析DNS无法处理,您可以联系当地的互联网服务提供商(ISP)进行咨询。
3. 邮箱解析不生效
解析记录设置错误
查看:控制台>权威域名解析页面>权威域名页签>选择对应的域名>查看解析记录列表
❌ 异常场景:主机记录设置错误/解析记录缺失/解析记录重复
异常场景说明及解决:
异常场景
说明
解决方案
主机记录设置错误
与邮箱服务商提供的“解析记录清单”对比后,发现设置的主机记录(如
@
、mail
)与邮箱服务商要求的不一致,导致解析未能指向正确的邮件服务器。例如应配置为mail
却误设为webmail
。根据邮箱服务商提供的配置清单,修改主机记录为指定值。
解析记录缺失
与邮箱服务商提供的“解析记录清单”对比后,发现缺少必要的解析记录(如 MX、CNAME、TXT等),导致邮件服务无法正常使用。
根据邮箱服务商提供的配置清单,添加缺失的解析记录。
解析记录重复
与邮箱服务商提供的“解析记录清单”对比后,发现存在“主机记录”和“记录类型”相同的解析配置,导致邮件服务无法正常使用。例如已有 MX 记录未删除,又新增一条。
刚设置的邮箱解析,缓存尚未生效。
域名刚添加解析一般要等2小时才能稳定生效,您可以稍后再测试下收发邮件。
常见问题
删除/修改记录解析多久生效?
修改或删除域名解析记录后,理论上生效的最长时间是解析记录修改或删除前设置的TTL值。例如解析记录设置的TTL值为 10 分钟,则理论上全球解析生效时间需要10分钟。
然而,如果某些运营商的LocalDNS服务器强制设置了更长的缓存时间,这将导致解析记录的修改或删除生效延迟,最长可能需要48小时才能完全生效,因此,在进行修改时,建议确保修改前后的IP地址都能正常提供服务,以避免影响用户体验。
修改DNS服务器解析多久生效?为什么需要48小时的解析生效时间?
修改DNS服务器的解析生效时间主要取决于本地DNS缓存中存储的域名DNS服务器名称的TTL(生存时间)值。一般来说,TTL值可以从几分钟到48小时不等,具体时长取决于顶级域的设置。
例如,“.com”顶级域的DNS服务器可能会将域名DNS服务器信息缓存长达48小时;而“.cn”顶级域的DNS服务器则通常会缓存24小时。由于不同顶级域的DNS服务器可能设置了不同的TTL值,因此理论上,修改域名DNS服务器后,全球范围内解析更新的最长生效时间需要48小时。