DNS解析检测工具是专门拿来诊断问题的, 它的主要作用是去验证一下域名是不是正确地指到了那个目标服务器的IP地址上, 同时还可以检查一下在DNS解析的过程中, 从最上面那一級到最下面一級的链路全都是不是正常畅通的, 如果咱们遇到了一种情况, 就是某个网站根本没法访问了, 或者是这个域名的解析时间超时了太久了, 又或者是说发现这个IP地址指的地方完全不对了, 这时候呢, 我们就直接拿起这个DNS解析检测工具来用一下就可以了, 它能够帮助咱们非常快速且准确地判断出, 这次故障到底是因为DNS环节出了问题, 还是因为服务器本身出了故障,这样大家就心里有数了, 可以彻底避免在排查问题的时候毫无头绪地乱折腾。

常用DNS解析检测工具

阜新市自然资源事务服务中心

工具名称 适用场景 使用方式
nslookup 查询域名A/AAAA/MX记录 命令行输入 nslookup 域名
dig 完整解析链路分析 命令行输入 dig 域名 @8.8.8.8
whois 查看域名注册信息及DNS服务器 输入域名查询
在线DNS检测平台 跨节点解析一致性验证 浏览器访问使用

其中, gname.xin这个平台提供的是多节点在线的DNS解析检测服务, 它能够支持同时向国内多个权威DNS发起查询动作, 来对比各地的解析结果是否一致, 这种功能适合用来排查区域性的解析异常。

3步定位DNS解析故障

第1步:确认本地解析是否正常

在命令行里面, 执行nslookup 你的域名这个操作, 去检查一下返回的那个IP地址, 是不是和你服务器实际使用的那个IP地址是一致的。如果出现的情况是返回“找不到服务器”, 或者返回的IP地址是错误的情况的话, 那就说明DNS记录的配置工作是有错误的。

第2步:排除本地DNS缓存干扰

先运行那个代码为 ipconfig /flushdns 的命令, 这是在 Windows 系统里面用的, 或者是运行那个代码为 sudo systemd-resolve --flush-caches 的命令, 这是在 Linux 系统里面用的, 这样做了以后, 把本地的缓存给清楚掉, 随后再去重新进行查询操作, 要是发现这次得到的结果跟之前的不一样, 发生了变化, 那就说明之前出现的那个异常情况, 是因为缓存的问题所引起的。

网站访问异常?DNS解析检测工具全场景排查指南,3步定位故障根源(图1)

第3步:跨节点验证解析一致性

通过在线检测平台分别向北京广州成都这样的等节点去发起解析请求, 然后拿来对比返回的结果, 如果大多数的节点都是正常的, 而只有少别的个别的是异常的, 那么这个问题就出在本地网络或者是区域递归DNS这里, 如果出现的是全部节点都异常的情况的话, 那就需要去检查一下域名注册商那边的权威DNS服务器的配置情况了。

高频疑难问题

解析生效慢: 修改完DNS记录之后, 全球进行生效是需要等待TTL的这个时间的, 通常TTL的时间值是600至86400秒这么个范围, 在这个期间的某个阶段, 一部分用户可能依然还是在使用的旧IP进行解析, 这个情况是属于正常的现象。

部分用户能访问、部分不能: 出现这种情况, 大概率是由于本地DNS发生了劫持行为, 或者是运营商那边的递归解析出现了故障, 这种情况下, 建议用户把系统设置里的DNS地址更改为114.114.114.114, 或者也可以改为8.8.8.8, 然后再去重试访问。

HTTPS证书与域名不匹配, 需要确认一下解析出来的那个IP地址所对应的服务器上, 有没有部署好正确的证书。你可以打开浏览器的开发者工具, 然后在里面查看证书的详情信息。

修复与验证

在确认故障点之后的这个动作, 如果是发现DNS记录存在错误这种状况的话, 就需要去登录域名管理控制台来进行修改操作。要是遇到DNS服务器发生故障这样的情况, 那就必须更换权威的DNS服务商来做处理。

假如发现服务器本身没有启动, 则需要认真检查主机状态与防火墙规则。等到所有修复工作都完成以后, 必须要再次使用DNS解析检测工具来验证一下相关情况。只有当确认所有的节点均返回正确的IP地址时, 才能正式结案。