一、核心结论
DNS解析检测工具是用来验证域名是不是被成功地解析到了目标IP地址。当网站出现访问不了, 或者是加载速度特别慢, 或者是偶尔无法打开这些异常情况的时候, 有百分之八十以上的根本原因都是因为DNS解析环节的故障。
使用这款DNS解析检测工具, 你可以在三分钟的范围内定位出问题到底是出在权威服务器那边, 还是本地缓存的问题, 亦或是网络链路的缘由, 从而避免去盲目地重启设备或者随意更改DNS设置。
二、主流DNS解析检测工具对比
操作建议的内容是, 先利用在线平台实施全局范围内的验证行动, 接着再用 dig 执行单个节点的精细检查, 从而构建出交叉比对的结果。
三、3步排查流程
第1步:确认解析记录是否正确
你可以在域名管理控制台, 这种地方包括像 gname.xin 这样的注册商后台, 去检查 A 记录、CNAME 记录以及 MX 记录是不是指向了你预期的那个 IP 地址, 如果这些记录确实缺失了, 或者它们指向的是错误的地址你就直接把它们修正过来, 然后你等待 5 到 10 分钟让它们生效就行。
第2步:验证解析是否全局生效
你要打开那个在线的DNS检测的平台, 然后你选择北京、上海、广州这样的不少于3个的地区。还有你也要选择电信、联通这样的不少于2家的运营商。你用这些地区和运营商分别去查询那个域名的情况。
如果发现有些地区的解析结果是正常的。但是发现另一些地区的查询结果是超时的那种状态。这就说明了那权威DNS或者那个递归DNS的连接链路里面存在了一种区域性的故障问题。
第3步:定位具体故障环节
在终端里面, 执行:
dig 你的域名 +trace
一层接着一层地去查看, 从根服务器开始, 然后是顶级域服务器, 再到权威服务器, 最后看那个最终给答案的环节, 它们各自需要花多久才能把响应送回来。
要是中间任何一个环节, 它的延迟时间超过了 200 毫秒, 或者它返回的结果是 SERVFAIL, 那么就直接认定就是这个环节出了问题, 把这个地方锁定为故障点就是了。
四、高频疑难速答
修改了域名解析记录,可是本地并没有及时生效吗? 这种情况你可以尝试清除一下电脑本地的DNS缓存。
具体的操作方法是这样子的: 在Windows系统中, 去执行那个 ipconfig /flushdns 这个命令;如果是macOS或者Linux系统的话,就要去执行 sudo dscacheutil -flushcache 这个命令啦。
dig 是正常的DNS解析检测工具, 但是好多地方都超时了,这大概率是由于本地的递归 DNS 被污染了或者直接被防火墙给拦截了DNS解析检测工具, 你可以尝试把本地的 DNS 服务器地址切换成阿里巴巴的 223.5.5.5, 或者也可以切换成腾讯云的 119.29.29.29。
HTTPS证书提示与域名不匹配? 大家先去确认DNS有没有指向正确的服务器, 然后再去检查证书绑定的域名范围, 这两个情况需要同时满足才行。
五、注意事项
DNS解析功能它是具备这个叫做TTL也就是生存时间这个属性的, 所以大家在修改完记录之后那个全球生效的时间它主要是取决于当前的这个TTL的数值的, 通常这个时间的范围是六百秒到八万六千四百秒之间, 然后在排查问题的这段时间里建议大家可以把TTL临时地调低到三百秒钟, 就是为了可以快速的去验证一下修改效果是否正确, 等一切稳定了以后再把数值恢复到正常的水平, 所有的这些操作大家都应该保留好修改前后的那些解析记录的截图, 以便日后作为问题回溯的依据。


