跟我学-域名解析故障排查技巧

天苍苍,野茫茫,网站一瘫,唯有泪两行!!
客户跳,老板叫,解析故障,心惊又肉跳!!

对企业网站来说,很怕出现网站打不开的情况,一旦发生,准会发现公司技术部呈现一片哀嚎景象。为了让运维的难兄难弟们做个精致的小白领,小编特别为你们总结了一套《域名解析故障排查技巧实操全网最全手册》,并分为“初阶版”“进阶版”,跟我学完保您在排查解析故障方面,脑回路神清晰,分分钟就能定位问题。为了助您减少客户不可用时间,并赢得老板信任,今天就来听听小编跟大家唠唠域名解析那点事儿。

因为DNS是互联网流量的入口,所以企业网站一旦发现不可用,运维人员都需要第一时间优先排除是否为域名解析故障导致。其次我们需要知道域名解析故障与网站不能访问是两个概念,因为网站的访问与域名解析、网站服务器、网站备案、网站程序、网路环境等诸多因素都有关联,而本文则重点描述 域名解析故障 排查的方法和思路。

初阶版

多数用户反映的域名解析故障,其实并不一定是真的域名解析出了问题,小编在这里为大家总结了最常见的四种原因,可帮助大家快速定位原因:

第一、 因为域名过期、被锁定都会导致域名无法正常访问。

① 首先我们要知道为什么域名异常会直接导致域名解析异常呢?

因为域名处于域名解析的上游服务,所以递归解析过程中如果域名环节存在异常,权威DNS服务器是接收不到DNS查询请求并完成响应任务的。

② 其次我们要知道域名在什么场景下会导致域名解析异常?

  • 域名过期:一般域名注册商通过修改用户DNS服务器名称,实现访问页面显示域名过期。
  • 域名状态:如果域名处于clienthold、serverhold、inactive三种状态,则代表是因为域名状态异常导致解析异常。

③ 最后我们再加深了解如何定位原因与解决。

阿里云DNS为用户提供了 域名检测工具,可一键查询出域名有效期和域名状态是否存在异常。

  • 域名过期: 域名续费后解析生效时间取决于TTL的设置,一般10分钟后可以在进行解析生效测试。
  • 域名状态:域名状态异常时可参考下图提供的解决方法处理。

第二、 check备案是否存在异常

首先我们需要知道域名解析和备案实际并无直接关联关系,即使网站出现备案异常,是完全不影响域名解析的设置和解析的生效。而备案异常则会直接影响网站的访问与使用,您可以通过 域名检测工具一键查询备案情况,如备案检查出现异常,即可联系网站服务器供应商定位备案的异常原因并解决。

第三、 check下是否在48小时内修改过域名DNS服务器名称

修改DNS服务器后,解析生效时间取决于本地DNS中缓存的DNS服务器名称的TTL时间,一般需要24-48小时。所以在修改DNS服务器48小时内,新/旧DNS服务商的解析数据需要保持一致,如果您在原DNS服务商删除了解析记录、或者在新DNS服务商未添加解析记录、或者新/旧DNS服务商添加的解析记录不一致,都有可能导致解析不可用、或者出现站点时而正常时而异常的现象。
结论:如果排查是此情况导致,您可到新/旧DNS服务商操作,最终保持解析数据一致,即可实现快速恢复。

第四、 check解析记录

①检查解析记录的设置是否正确

建议运维GG们首先可通过 域名检测工具 ,检查下DNS服务商的解析结果,如提示“未检测到该域名设置DNS解析记录”,则建议您检查下解析记录的设置是否正确,例如是未设置该条子域名,还是被“误操作”“不小心”给删除了?还是修改解析记录时输入错误了?总之错误的原因皆有可能,我们首要先排除下因配置原因导致的异常错误。

②检查是否近期刚修改过解析记录。

如果修改了解析记录,需要等待各地的运营商Localdns的缓存到期,域名解析才会生效。一般修改解析后的生效时间取决于域名的TTL设置。您可以通过 域名检测工具 查出TTL生效时间,等待此TTL生效时间后再次检查。

③检查智能解析线路是否未设置默认线路

云解析DNS的智能解析线路,解析优先级是按照“专线”线路、“默认”线路的排序应用,如果访问者来源不属于“专线”线路,而管理员又未设置“默认”线路场景,则会造成此部分用户无法访问站点。

如果以上初步排查后,排查结果都属于正常,那么则可以随小编进入进阶版学习了。

进阶版

在进入进阶版前,要深入了解域名解析异常情况,绕不开的就得先了解域名解析递归流程,很多同学应该还不知道解析的110套路,简单来说就是在递归DNS未有缓存场景下,1次域名解析需要经历10次查询交互。

从上面的解析流程介绍我们可以看出,域名解析的过程是经历很多查询交互,任意一环节出现问题都可能会导致解析不生效,所以接下来小编就教教在每个环节如何排查解析异常问题。一般判断解析不生效的定义是DNS查询请求未能查询到域名指向的服务器IP地址或者查询的IP地址与预期不一致。多表现于权威DNS解析结果和递归解析结果/本地DNS解析结果/公共DNS解析结果不一致,或查询结果显示无数据。

第一、排除下权威DNS的解析数据是否存在异常

权威DNS是真正管理域名和IP地址映射关系的DNS服务器,阿里云提供的云解析DNS就是权威DNS,所以第一步,小编教您优先检查权威DNS的解析数据是否存在异常。
用 域名检测工具,重点查看DNS服务商解析结果,见下图。

① 检查解析结果和您在DNS服务商控制台处设置的解析记录对比是否一致,如一致代表权威DNS解析是正常生效的。
② DNS服务商解析结果显示DNS未设置解析记录,则需要检查您是否为忘记设置或误操作过删除等行为。
③ 检查结果和您在DNS服务商控制台设置的解析记录不一致,此种场景则需要联系您的DNS服务商进行解析数据刷新处理。

第二、排除下是否属于用户本地DNS服务器问题

本地域名服务器是响应来自客户端的递归请求,并最终跟踪直到获取到解析结果的DNS服务器。例如用户本机自动分配的DNS、运营商ISP分配的DNS,我们也可称之为递归DNS。
用 域名检测工具,在本地DNS检查模块下载客户端查询工具。

用本地DNS工具检测结果如下:

如果确认权威DNS解析是正确的情况下,发现本地DNS解析结果与权威DNS结果不一致,则代表域名解析是在用户本地没有生效。那么为什么会出现本地解析没有生效呢?

主要有下列几种情况:

① 本地DNS服务器上的缓存信息未到期导致。 ->此场景,只需要等待本地DNS解析处显示的TTL生效时间到期后,再次尝试测试即可。
② 如果本地DNS解析TTL过期后测试,仍然和权威DNS解析结果不一致,尝试检查公共DNS解析结果是否一致。
③ 如果公共DNS解析结果和权威解析结果一致,说明权威DNS和公共DNS上解析数据都是生效的,那么可以判断为是用户本地DNS未生效,此种情况建议刷新本地DNS服务器后再进行测试、或将本地DNS服务器修改为公共DNS服务器。

放心放心,小编为了让您能加深了解和记忆,早已为您精心绘制了精简版的Check List,一表在手,让我们帮您把排查解析异常故障的时间“打下来”。

第三、排除下是否为域名被阻断导致域名解析异常

①通过 域名检测工具 ,如递归解析追踪报错“域名递归解析过程被污染“。

一般是域名正常解析过程中受到上级网络设施强行阻断,这已超出权威DNS服务能力, 如果遇到此情况,小编也很遗憾不能给予更好的解决办法,一般建议用户更换业务域名。

②判断递归解析过程哪个环节被“污染”

您也可以通过命令dig+trace测试,本地DNS向根DNS服务器查询时,直接返回了IP地址,则一般可判断为在DNS查询在根DNS服务器处就被阻断。

这次的分享就先到这里了,最后,希望小编为大家总结的《域名解析故障排查技巧实操全网最全手册》,能够有效帮助到您快速定位解析异常原因和降低业务不可用时间。

本文作者:阿里云DNS专家

原文链接

本文为阿里云内容,未经允许不得转载。

原文地址:https://www.cnblogs.com/zhaowei121/p/12175818.html

时间: 2024-08-11 08:54:05

跟我学-域名解析故障排查技巧的相关文章

51CTO学习笔记--Linux运维故障排查思路与系统调优技巧视频课程(高俊峰)

51CTO学习笔记--Linux运维故障排查思路与系统调优技巧视频课程 第一课 Linux运维经验分享与思路 1.一般把主机名,写到hosts下    127.0.0.1    hostname,因为很多应用要解析到本地.oracle没有这个解析可能启动不了. 2.注释掉UUID以及MAC地址,需要绑定网卡的时候,这个可能会有影响. 3.磁盘满了无法启动,  var下木有空间,无法创创建PID等文件,导致文件无法启动,按e   进入single  然后b  重启进入单用户模式. 4.ssh登陆系

Linux运维常见故障排查和处理的33个技巧汇总

作为linux运维,多多少少会碰见这样那样的问题或故障,从中总结经验,查找问题,汇总并分析故障的原因,这是一个Linux运维工程师良好的习惯.每一次技术的突破,都经历着苦闷,伴随着快乐,可我们还是执着的继续努力,从中也积累了更多的经验,这就是实践给予我们的丰厚回报. 下面汇总了我做项目过程可能出现的故障及解决方法,看看是否与你有共鸣,并对你有帮助? 第一:常见问题解决集锦   1.shell脚本不执行    问题:某天研发某同事找我说帮他看看他写的shell脚本,死活不执行,报错.我看了下,脚本

PC主板故障维修技巧

1.熟悉PC主板的总线类型及I/O总线插槽中各信号排列情况,以I/O插槽中重要信号为线索进行故障点查找是维修PC主板致命性故障的关键.微机主板常用总线有PC/XT.PC/AT.VESA.PCI等类型,不同总线的I/O槽中信号排列有所差别,熟悉I/O槽中重要信号是查找因总线类故障系统死机.屏幕无显示等严重故障的前提. 对死机类故障,首先区分故障原因是由I/O设备故障引起还是主板本身故 障引起.确诊故障在系统板后,可检测系统板I/O槽中地址总线或数据总线的脉冲状态初步判断系统故障部位:若所有地址总线

线上应用故障排查之二:高内存占用

搞Java开发的,经常会碰到下面两种异常: 1.java.lang.OutOfMemoryError: PermGen space 2.java.lang.OutOfMemoryError: Java heap space 要详细解释这两种异常,需要简单重提下Java内存模型. Java内存模型是描述Java程序中各变量(实例域.静态域和数组元素)之间的关系,以及在实际计算机系统中将变量存储到内存和从内存取出变量这样的低层细节. 在Java虚拟机中,内存分为三个代:新生代(New).老生代(Ol

线上应用故障排查之二:高内存占用(转)

搞Java开发的,经常会碰到下面两种异常: 1.java.lang.OutOfMemoryError: PermGen space 2.java.lang.OutOfMemoryError: Java heap space 要详细解释这两种异常,需要简单重提下Java内存模型. (友情提示:本博文章转载,出处:hankchen,http://www.blogjava.net/hankchen) Java内存模型是描述Java程序中各变量(实例域.静态域和数组元素)之间的关系,以及在实际计算机系统

[linux]df 磁盘100%Used告警,du显示目录状态良好的故障排查

1.回顾: 某在线主机深夜连续接到告警系统的disk Used 超限告警. 登陆主机查看却遇到了困惑:在检查磁盘使用量 df –h 出来的磁盘使用量确实和告警信息一样,已经被100%占用,但是查看目录大小 du 时,却显示实际目录大小并非这样,而是有很大空闲空间. 如图:磁盘用量 df –h 结果为100%Used, 目录实际总大小 du –h –max-depth=1,显示总目录大小为60k,几乎可以忽略的使用比例. [知识准备] [linux] lsof 命令了解: lsof(list op

Atitit. 包厢记时系统 的说明,教程,维护,故障排查手册v2 pb25.doc

Atitit. 包厢记时系统 的说明,教程,维护,故障排查手册v2 pb25.doc 1. 服务器方面的维护1 1.1. 默认情况下,已经在系统的启动目录下增加了 个启动项目1 1.2. 后台服务.保持mysql数据库服务启动状态2 1.3. 服务器如无必要无需关闭,保持一直开启状态...2 1.4. 配置文件说明3 1.4.1. 指明选片服务端url3 1.4.2. 包厢计时系统提供的接口url (部分分店需要)3 1.4.3. 其他设置3 2. 故障排查4 3. 包厢记时系统5 3.1. 维

三分钟教你学Git (一)之技巧

先来看看几个比较有用的技巧 git stash 将工作区中的状态保存到栈中,供以后apply/pop.可以把它理解为一个commit,但是是存在另一个仓库里的. git reset --hard 将暂存区,工作区,版本库都恢复到某一次提交的状态 --soft 暂存区和工作区都不变,只改变版本库的状态 --mixed (默认) 将版本库和暂存区都改变,不改变工作区 如果在commit之后进行push,发现别人在你之前做了push,这时应该怎么办呢? git reset --mixed HEAD^

Rsync 12种故障排查及思路

Rsync 故障排查整理 Rsync服务常见问题汇总讲解: ============================================================================================== 1 客户端的错误现象:No route to host rsync服务端开启的iptables防火墙 [[email protected] tmp]# rsync -avz /etc/hosts [email protected]::backup r