CN109218050B - 一种域名系统故障处理方法和系统 - Google Patents
一种域名系统故障处理方法和系统 Download PDFInfo
- Publication number
- CN109218050B CN109218050B CN201710526972.8A CN201710526972A CN109218050B CN 109218050 B CN109218050 B CN 109218050B CN 201710526972 A CN201710526972 A CN 201710526972A CN 109218050 B CN109218050 B CN 109218050B
- Authority
- CN
- China
- Prior art keywords
- dns
- version
- configuration file
- latest
- dns server
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0803—Configuration setting
- H04L41/0813—Configuration setting characterised by the conditions triggering a change of settings
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/06—Management of faults, events, alarms or notifications
- H04L41/0631—Management of faults, events, alarms or notifications using root cause analysis; using analysis of correlation between notifications, alarms or events based on decision criteria, e.g. hierarchy, tree or time analysis
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/06—Management of faults, events, alarms or notifications
- H04L41/0677—Localisation of faults
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0803—Configuration setting
- H04L41/0813—Configuration setting characterised by the conditions triggering a change of settings
- H04L41/082—Configuration setting characterised by the conditions triggering a change of settings the condition being updates or upgrades of network functionality
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/45—Network directories; Name-to-address mapping
- H04L61/4505—Network directories; Name-to-address mapping using standardised directories; using standardised directory access protocols
- H04L61/4511—Network directories; Name-to-address mapping using standardised directories; using standardised directory access protocols using domain name system [DNS]
Abstract
本发明提供了一种域名系统故障处理方法和系统。涉及计算机网络;解决了配置文件错误发现及处理方案存在效率和准确度低下的问题。该方法包括:获取DNS服务器当前加载的DNS配置文件版本;检测所述DNS服务器当前加载的DNS配置文件版本与配置管理平台最新的DNS配置文件版本是否匹配;在检测结果为不匹配时,判定所述DNS服务器故障,启动自动故障处理。本发明提供的技术方案适用于域名系统配置文件维护,实现了对配置文件异常的自动探测处理。
Description
技术领域
本发明涉及计算机网络,尤其涉及一种域名系统(DNS)故障处理方法和系统。
背景技术
DNS作为当前互联网的入口,在网络访问过程中占据重要地位。为了提高DNS系统的解析效率、增强系统的健壮性,除了DNS协议本身就支持集群协议之外,部分DNS系统采用了anycast或者边缘化等架构。不管是自适应的集群化协议、还是anycast和边缘化架构,都大幅增加了DNS系统的复杂性和规模。
随着互联网的发展,用户对网络访问的体验的要求越来越高,如何实现DNS服务器自动容灾备份也是其中的重要一环。如何在更复杂和更大规模的DNS系统中,实现DNS服务器的自动容灾备份,也成为一个重要课题。
当前实现DNS服务器自动容灾备份,基本是采用端口探测的方式,基于DNS服务器和服务的可用性,判定DNS服务器健康度,并进行自动容灾备份。当DNS系统中某一台或者几台设备,由于配置文件下发失败导致新增域名无法解析或者故障的Web Server IP无法及时从DNS配置文件中剔除,都会影响服务,最终导致用户的网络访问失败。
发明内容
本发明旨在解决上面描述的问题。
根据本发明的第一方面,提供了一种域名系统故障处理方法,包括:
获取DNS服务器当前加载的DNS配置文件版本;
检测所述DNS服务器当前加载的DNS配置文件版本与配置管理平台最新的DNS配置文件版本是否匹配;
在检测结果为不匹配时,判定所述DNS服务器故障,启动自动故障处理。
优选的,获取DNS服务器当前加载的DNS配置文件版本的步骤包括:
从接收到的探测任务中提取得到所述DNS服务器的IP地址;
根据所述DNS服务器的IP地址,使用dig命令获取所述DNS服务器的起始授权机构SOA记录;
从所述SOA记录中提取所述DNS服务器当前加载的DNS配置文件版本。
优选的,检测所述DNS服务器当前加载的DNS配置文件版本与配置管理平台最新的DNS配置文件版本是否匹配包括:
检测所述DNS服务器当前加载的DNS配置文件版本与配置管理平台最新的DNS配置文件版本的版本号是否一致;
在版本号不一致时,比较延迟时间与超时时间,所述延迟时间是将当前时间减去所述配置管理平台最新的DNS配置文件版本的下发时间计算得到的,所述超时时间是所述DNS服务器当前加载的DNS配置文件版本对应的超时时间;
在所述延迟时间大于所述超时时间时判定所述DNS服务器当前加载的DNS配置文件版本与配置管理平台最新的DNS配置文件版本不匹配。
优选的,在检测结果为不匹配时,判定所述DNS服务器故障,启动自动故障处理的步骤包括:
在检测结果为不匹配时,判定所述DNS服务器发生配置文件异常;
统计配置文件异常的DNS服务器数量占全部DNS服务器数量的比例;
在所述比例达到预置的告警门限时,发出告警信息。
优选的,统计配置文件异常的DNS服务器数量占全部DNS服务器数量的比例的步骤之后,还包括:
在所述比例没有达到所述预置的告警门限时,重新向故障的DNS服务器下发所述最新的DNS配置文件版本。
优选的,在所述比例没有达到所述预置的告警门限时,重新向故障的DNS服务器下发所述最新的DNS配置文件版本的步骤之后,还包括:
在重新下发所述最新的DNS配置文件版本后再度检测所述DNS服务器是否存在版本异常;
若仍存在版本异常,将所述DNS服务器的IP地址由所述最新的DNS配置文件版本中剔除,重新生成DNS配置文件。
优选的,在重新下发所述最新的DNS配置文件版本后再度检测所述DNS服务器是否存在版本异常的步骤之后还包括:
对存在版本异常的DNS服务器进行如下处理:
1)当所述最新的DNS配置文件涉及的修改类型为新增Domain时,对存在版本异常的所述DNS服务器进行NXDomain拦截;
2)当所述最新的DNS配置文件涉及的修改类型为删除Domain时,添加防火墙策略,丢弃所述最新的DNS配置文件要求删除的Domain的请求包;
3)当所述最新的DNS配置文件涉及的修改类型为IP替换、IP新增、IP删除、view变更四项中任一时,屏蔽存在版本异常的所述DNS服务器的53端口。
根据本发明的另一方面,还提供了一种域名系统故障处理系统,包括:
探测模块,用于获取DNS服务器当前加载的DNS配置文件版本;
智能运算模块,用于检测所述DNS服务器当前加载的DNS配置文件版本与配置管理平台最新的DNS配置文件版本是否匹配;
故障处理模块,用于在检测结果为不匹配时,判定所述DNS服务器故障,启动自动故障处理。
优选的,所述探测模块包括:
任务解析单元,用于从接收到的探测任务中提取得到所述DNS服务器的IP地址;
SOA记录获取单元,用于根据所述DNS服务器的IP地址,使用dig命令获取所述DNS服务器的起始授权机构SOA记录;
当前版本提取单元,用于从所述SOA记录中提取所述DNS服务器当前加载的DNS配置文件版本。
优选的,所述智能运算模块包括:
版本号对比单元,用于检测所述DNS服务器当前加载的DNS配置文件版本与配置管理平台最新的DNS配置文件版本的版本号是否一致;
时间对比单元,用于在版本号不一致时,比较延迟时间与超时时间,所述延迟时间是将当前时间减去所述配置管理平台最新的DNS配置文件版本的下发时间计算得到的,所述超时时间是所述DNS服务器当前加载的DNS配置文件版本对应的超时时间;
匹配判定单元,用于在所述延迟时间大于所述超时时间时判定所述DNS服务器当前加载的DNS配置文件版本与配置管理平台最新的DNS配置文件版本不匹配。
优选的,所述故障处理模块包括:
异常判定单元,用于在检测结果为不匹配时,判定所述DNS服务器发生配置文件异常;
统计单元,用于统计配置文件异常的DNS服务器数量占全部DNS服务器数量的比例;
第一故障处理单元,用于在所述比例达到预置的告警门限时,发出告警信息。
优选的,所述故障处理模块还包括:
第二故障处理单元,用于在所述比例没有达到所述预置的告警门限时,重新向故障的DNS服务器下发所述最新的DNS配置文件版本。
优选的,所述故障处理模块还包括:
重配置单元,用于在重新下发所述最新的DNS配置文件版本后再度检测所述DNS服务器仍存在版本异常时,将所述DNS服务器的IP地址由所述最新的DNS配置文件版本中剔除,重新生成DNS配置文件。
优选的,所述故障处理模块还包括:
DNS服务器故障处理单元,用于对存在版本异常的DNS服务器进行如下处理:
1)当所述最新的DNS配置文件涉及的修改类型为新增域名Domain时,对存在版本异常的所述DNS服务器进行NXDomain拦截;
2)当所述最新的DNS配置文件涉及的修改类型为删除Domain时,添加防火墙策略,丢弃所述最新的DNS配置文件要求删除的Domain的请求包;
3)当所述最新的DNS配置文件涉及的修改类型为IP替换、IP新增、IP删除、view变更四项中任一时,屏蔽存在版本异常的所述DNS服务器的53端口。
本发明提供了一种DNS故障处理方法和系统,获取DNS服务器当前加载的DNS配置文件版本;检测所述DNS服务器当前加载的DNS配置文件版本与配置管理平台最新的DNS配置文件版本是否匹配;在检测结果为不匹配时,判定所述DNS服务器故障,启动自动故障处理。通过DNS配置文件版本检测,发现DNS配置文件异常故障,并自动对故障进行处理。实现了对配置文件异常的自动探测处理,解决了配置文件错误发现及处理方案存在效率和准确度低下的问题,保障了系统运行的持续稳定性。
参照附图来阅读对于示例性实施例的以下描述,本发明的其他特性特征和优点将变得清晰。
附图说明
并入到说明书中并且构成说明书的一部分的附图示出了本发明的实施例,并且与描述一起用于解释本发明的原理。在这些附图中,类似的附图标记用于表示类似的要素。下面描述中的附图是本发明的一些实施例,而不是全部实施例。对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,可以根据这些附图获得其他的附图。
图1示例性地示出了本发明的实施例一提供的一种DNS故障处理方法的流程;
图2示例性的示出了图1中步骤103的具体流程;
图3示例性的示出了图1中步骤104的具体流程;
图4示例性的示出了本发明的实施例二提供的一种DNS故障处理系统的架构;
图5示例性的示出了图4中探测模块401的结构;
图6示例性的示出了图4中智能运算模块402的结构;
图7示例性的示出了图4中故障处理模块403的结构;
图8示例性的示出了本发明的实施例三提供的一种DNS故障处理系统的架构。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互任意组合。
现有的DNS中对配置文件错误的检测和错误处理方案存在如下问题:
a)现有技术直接对DNS配置文件的加载情况进行监控,发现异常后再进行手动处理。而DNS系统自动容灾备份,都是基于服务器状态或者端口状态探测来判定DNS服务器是否不可用,不能对配置文件异常及其带来的故障问题进行处理,处理效率低。
b)现有技术里配置文件异常的发现手段为根据任务下发程序的状态码回调判断配置文件加载是否成功。任务下发程序需要独立开发,具有一定的开发工作量经常发生误报。
c)现有技术对于配置文件监控告警及告警的处理,不能根据不同的异常情况细分异常类型和自动处理方式,处理的有效性差和效率低。
综上,现有的配置文件错误发现及处理方案存在效率和准确度低下的问题。
为了解决上述问题,本发明的实施例提供了一种DNS故障处理方法和系统,获取DNS服务器当前加载的DNS配置文件版本,检测所述DNS服务器当前加载的DNS配置文件版本与配置管理平台最新的DNS配置文件版本是否匹配,并在检测结果为不匹配时,判定所述DNS服务器故障,启动自动故障处理。实现了对配置文件异常的自动探测处理,保障了系统运行的持续稳定性。
下面结合附图,对本发明的实施例一进行说明。
本发明实施例提供了一种DNS故障处理方法,使用该方法完成对配置文件异常的检测及自动处理的流程如图1所示,包括:
步骤101、配置系统下发探测任务;
本步骤中,配置系统生成探测任务,下发给配置系统中用于对DNS服务器进行探测的模块或其他设备。
步骤102、获取DNS服务器当前加载的DNS配置文件版本;
本步骤具体包括:
1、从接收到的探测任务中提取得到所述DNS服务器的IP地址;
2、根据所述DNS服务器的IP地址,使用dig命令获取所述DNS服务器的起始授权机构SOA记录;
3、从所述SOA记录中提取所述DNS服务器当前加载的DNS配置文件版本。
步骤103、检测所述DNS服务器当前加载的DNS配置文件版本与配置管理平台最新的DNS配置文件版本是否匹配;
本步骤如图2所示,包括:
步骤1031、检测所述DNS服务器当前加载的DNS配置文件版本与配置管理平台最新的DNS配置文件版本的版本号是否一致;
在版本号一致时判定DNS配置文件正常,不作进一步处理,结束流程。在版本号不一致时,进入步骤1032进行进一步分析判定。
步骤1032、在版本号不一致时,比较延迟时间与超时时间,所述延迟时间是将当前时间减去所述配置管理平台最新的DNS配置文件版本的下发时间计算得到的,所述超时时间是所述DNS服务器当前加载的DNS配置文件版本对应的超时时间;
本发明实施例中,所述超时时间是根据系统业务情况设置的一个时间值,以DNS配置文件下发的正常不影响服务时间为标准。超过所述超时时间,即存在DNS配置文件下发过程过长影响了业务正常进行的可能。例如正常的配置文件下发时间为1min,超过5min不更新会影响服务,则可设置超时时间为300s,超过这个时间任务配置文件下发会影响服务,判定为异常。
在延迟时间小于等于所述超时时间时,认为有可能正常的DNS配置文件更新还未结束,本轮不对其进行处理,结束流程。
如果延迟时间大于所述超时时间,进入步骤1033进行进一步分析判定。
步骤1033、在所述延迟时间大于所述超时时间时判定所述DNS服务器当前加载的DNS配置文件版本与配置管理平台最新的DNS配置文件版本不匹配;
本步骤中,在所述延迟时间大于所述超时时间时,存在较大的发生配置文件异常的可能,因此,判定DNS服务器当前加载的DNS配置文件版本与配置管理平台最新的DNS配置文件版本不匹配,进入故障处理流程。
步骤104、在检测结果为不匹配时,判定所述DNS服务器故障,启动自动故障处理;
本步骤中,可以对各个被判定发生配置文件异常的DNS服务器实时单独进行处理;也可以在对探测任务涉及的全部DNS服务器均进行完一轮探测后,统计探测结果,根据异常发生的规模大小不同进行区别处理。
故障处理流程如图3所示,包括:
步骤1041、在检测结果为不匹配时,判定所述DNS服务器发生配置文件异常;
在步骤103中最终的检测结果为版本不匹配时,判定发生了配置文件异常。
步骤1042、统计配置文件异常的DNS服务器数量占全部DNS服务器数量的比例。具体的,比较配置文件异常的DNS服务器数量占全部DNS服务器数量的比例是否达到了预置的告警门限。
步骤1043、在所述比例达到预置的告警门限时,发出告警信息;
本发明实施例中,根据业务保障的需求,会预先设置一个告警门限,例如,将告警门限的值设置为50%。在达到该告警门限时,认为发生了大面积的配置文件异常,可通过发出告警信息的手段,触发上一级系统处理,或引入人工操作修复故障。
步骤1044、在所述比例没有达到所述预置的告警门限时,重新向故障的DNS服务器下发所述最新的DNS配置文件版本。
步骤1045、在重新下发所述最新的DNS配置文件版本后再度检测所述DNS服务器是否存在版本异常。本步骤可简化检测过程,例如只在一定时长后比较DNS服务器运行的配置文件版本号与下发的最新DNS配置文件版本号是否一致;也可返回步骤103,再进行一次标准流程的版本匹配判定。在检测结果为不存在异常后,表明DNS配置文件更新成功,结束流程。
步骤1046、若仍存在版本异常,将所述DNS服务器的IP地址由所述最新的DNS配置文件版本中剔除,重新生成DNS配置文件;
优选的,在发生异常的DNS服务器配置有容容灾备份份机时,可将异常DNS服务器剔除同时,将其容容灾备份份机加入DNS配置文件,由容容灾备份份机继续提供服务。对于DNS集群来说,其中的DNS服务器可互为容容灾备份份机,因此,只需将异常的DNS服务器剔即可。
优选的,对于下线的DNS服务器,还可进一步进行针对该DNS服务器的故障处理,具体包括:
a)如果最新的DNS配置文件涉及的修改类型为新增Domain,则开启存在异常配置的DNS服务器NXDomain拦截工具,对存在版本异常的所述DNS服务器进行NXDomain拦截,并发送告警给运维值班人员。
b)如果修改类型为删除Domain,则添加防火墙策略,丢弃删除Domain的请求包,并发送告警给运维值班人员。
c)如果修改类型为IP替换、IP新增、IP删除、view变更,则屏蔽存在版本异常的所述DNS服务器的53端口,并发送告警给运维值班人员。
下面结合附图,对本发明的实施例二进行说明。
本发明实施例提供了一种域名系统故障处理系统,其架构如图4所示,包括:
探测模块401,用于获取DNS服务器当前加载的DNS配置文件版本;
智能运算模块402,用于检测所述DNS服务器当前加载的DNS配置文件版本与配置管理平台最新的DNS配置文件版本是否匹配;
故障处理模块403,用于在检测结果为不匹配时,判定所述DNS服务器故障,启动自动故障处理。
优选的,所述探测模块401的结构如图5所示,包括:
任务解析单元501,用于从接收到的探测任务中提取得到所述DNS服务器的IP地址;
SOA记录获取单元502,用于根据所述DNS服务器的IP地址,使用dig命令获取所述DNS服务器的起始授权机构SOA记录;
当前版本提取单元503,用于从所述SOA记录中提取所述DNS服务器当前加载的DNS配置文件版本。
优选的,所述智能运算模块402的结构如图6所示,包括:
版本号对比单元601,用于检测所述DNS服务器当前加载的DNS配置文件版本与配置管理平台最新的DNS配置文件版本的版本号是否一致;
时间对比单元602,用于在版本号不一致时,比较延迟时间与超时时间,所述延迟时间是将当前时间减去所述配置管理平台最新的DNS配置文件版本的下发时间计算得到的,所述超时时间是所述DNS服务器当前加载的DNS配置文件版本对应的超时时间;
匹配判定单元603,用于在所述延迟时间大于所述超时时间时判定所述DNS服务器当前加载的DNS配置文件版本与配置管理平台最新的DNS配置文件版本不匹配。
优选的,所述故障处理模块403的结构如图7所示,包括:
异常判定单元701,用于在检测结果为不匹配时,判定所述DNS服务器发生配置文件异常;
统计单元702,用于统计配置文件异常的DNS服务器数量占全部DNS服务器数量的比例;
第一故障处理单元703,用于在所述比例达到预置的告警门限时,发出告警信息。
优选的,所述故障处理模块403还包括:
第二故障处理单元704,用于在所述比例没有达到所述预置的告警门限时,重新向故障的DNS服务器下发所述最新的DNS配置文件版本。
优选的,所述故障处理模块403还包括:
重配置单元705,用于在重新下发所述最新的DNS配置文件版本后再度检测所述DNS服务器仍存在版本异常时,将所述DNS服务器的IP地址由所述最新的DNS配置文件版本中剔除,重新生成DNS配置文件。
优选的,所述故障处理模块403还包括:
DNS服务器故障处理单元706,用于对存在版本异常的DNS服务器进行如下处理:
1)当所述最新的DNS配置文件涉及的修改类型为新增域名Domain时,对存在版本异常的所述DNS服务器进行NXDomain拦截;
2)当所述最新的DNS配置文件涉及的修改类型为删除Domain时,添加防火墙策略,丢弃所述最新的DNS配置文件要求删除的Domain的请求包;
3)当所述最新的DNS配置文件涉及的修改类型为IP替换、IP新增、IP删除、view变更四项中任一时,屏蔽存在版本异常的所述DNS服务器的53端口。
下面结合附图,对本发明的实施例三进行说明。
本发明实施例提供了一种DNS故障处理系统,通过获取DNS模块实时配置文件版本,对比配置文件版本列表,判定DNS模块实际运行的配置文件版本与配置管理模块最新的配置文件版本的差异和时延,判定配置文件是否存在异常,如果判定存在异常则将其置为不可用,并进行自动容灾备份,将服务切换至正常的服务器进行解析,保障系统的持续稳定性。
该系统架构如图8所示,包括配置管理模块、探测模块、智能运算模块、DNS模块。其中,DNS模块运行于DNS服务器上,本系统中可包含多个DNS模块,覆盖全部需要进行配置文件异常监控及故障处理的DNS服务器;其他模块可分布于一个或多个具有配置管理功能的设备之上,也可运行在DNS中添加的专用设备之上。
本发明实施例提供的技术方案可独立运行,也可以结合根据DNS模块中DNS服务器的可用性或服务质量判定,协同工作,达到及时容灾备份的目的。
1)配置管理模块下发配置文件给探测模块、智能运算模块。
a)下发探测任务给探测模块,探测任务格式为DNS模块的服务器IP列表
实例:
IP1
IP2
...
IPn
b)下发DNS配置文件、配置文件版本列表、运算参数给智能运算模块。
A.DNS配置文件格式:指定DNS模块里DNS服务器IP的NS记录和NS记录的A记录;域名的解析记录;
实例:
a.com NS ns1.a.com
a.com NS ns2.a.com
ns1.a.com A 1.1.1.1(备注:NS记录的A记录)
ns2.a.com A 2.2.2.2(备注:NS记录的A记录)
www.a.com A 3.3.3.3
mail.a.com A 4.4.4.4
备注:通过DNS配置文件中的NS记录的A记录变更,实现DNS服务器的容灾切换;通过修改域名的A记录,可以实现Web Server IP的容灾切换。
B.配置文件版本列表格式
格式及实例:
配置文件名称版本号修改类型配置下发时间
DNS配置文件dns-1新增Domain 20170614100000
DNS配置文件dns-2删除Domain 20170614110000
DNS配置文件dns-3IP替换20170614120000
DNS配置文件dns-4IP新增20170614130000
DNS配置文件dns-5IP删除20170614140000
DNS配置文件dns-6view变更20170614150000
备注:dns-1到dns-6等等中,都代表一个正整数的字符串
C.运算参数内容及格式
格式及实例:
配置文件名称修改类型超时时间
DNS配置文件新增Domain n秒
DNS配置文件删除Domain n秒
DNS配置文件IP替换n秒
DNS配置文件IP新增n秒
DNS配置文件IP删除n秒
DNS配置文件view变更n秒
注:其中n秒钟的n为相同或不同的固定值。
本发明实施例中,所述超时时间是根据系统业务情况设置的一个时间值,以DNS配置文件下发的正常不影响服务时间为标准。超过所述超时时间,即存在DNS配置文件下发过程过长影响了业务正常进行的可能。例如正常的配置文件下发时间为1min,超过5min不更新会影响服务,则可设置超时时间为300s,超过这个时间任务配置文件下发会影响服务,判定为异常。
2)探测模块接收探测任务,并执行对DNS模块的版本号探测任务。
a)探测模块接受探测任务,获取需要探测的DNS服务器IP。
b)使用dig命令,dig获取制定域的SOA记录类型。
例:
[]$dig@1.1.1.1a.com soa+short
ns1.a.com.postmaster.a.com.dns1 86400 3600 604800 10800
c)获取SOA记录应答结果中serial字段,作为DNS配置文件的版本号,形成配置文件版本号:提取dns1。
版本号监控数据格式:
配置文件名称DNS服务器IP配置文件版本号
DNS配置文件1.1.1.1dns1
d)将版本号监控数据发送给智能运算模块
3)智能运算模块接收配置管理模块下发的“DNS配置文件”、“运算参数、“配置版本列表”以及探测模块周期性上报的版本号监控数据,判定DNS模块中是否有服务器存在异常,并下发DNS配置文件和故障处理任务给DNS模块,进行自动容灾备份。
a)智能运算模块接收配置管理模块下发的“DNS配置文件”、“运算参数”、“配置版本列表”以及探测模块周期性上报的版本号监控数据。
b)智能运算模块对比版本号监控数据中的版本号和配置文件版本列表里的版本号,如果一致则不继续做处理;如果不一致则继续下一步判定。
c)判定版本号不一致的版本号监控数据的延迟时间,用当前时间减去配置文件版本列表里的配置下发时间,获取延迟时间;并查询配置文件版本列表里对应监控数据里版本号的修改类型和配置下发时间;通过匹配配置文件名称和修改类型从运算你参数里获取超时时间;计算延迟时间是否大于超时时间,如果小于等于超时时间,则不继续做处理;如果大于超时时间则认定对应的DNS服务器IP存在配置文件异常,继续下一步判定。
d)计算配置文件异常的DNS服务器IP占所有DNS模块中服务器的比例,如果大于50%,则发送报警信息给值班运维,不继续处理;如果小于50%,则继续进行处理。
e)获取存在配置文件异常的DNS服务器IP,触发最新配置文件重新下发,下发后重新判定版本信息,如果恢复则不继续处理;如果仍然存在异常,从DNS配置文件里剔除存在异常的DNS服务器IP,替换为正常的DNS服务器IP,并下发给DNS模块;触发故障处理任务给故障处理模块,进行故障处理。
4)DNS模块接收DNS配置文件并重载生效,实现DNS服务器IP自动容灾备份,将异常DNS服务器下线,替换为正常的DNS服务器IP。
5)故障处理模块接收故障处理任务,并执行故障处理动作。
a)如果最新版本的DNS配置文件涉及的修改类型为新增Domain,则开启存在异常配置的DNS服务器NXDomain拦截工具,并发送告警给运维值班人员。
b)如果修改类型为删除Domain,则添加防火墙策略,丢弃删除Domain的请求包,并发送告警给运维值班人员。
c)如果修改类型为IP替换、IP新增、IP删除、view变更,则屏蔽服务器53端口,并发送告警给运维值班人员。
本发明的实施例提供的DNS故障处理系统,能够与本发明的实施例提供的DNS故障处理方法相结合,获取DNS服务器当前加载的DNS配置文件版本;检测所述DNS服务器当前加载的DNS配置文件版本与配置管理平台最新的DNS配置文件版本是否匹配;在检测结果为不匹配时,判定所述DNS服务器故障,启动自动故障处理。通过DNS配置文件版本检测,发现DNS配置文件异常故障,并自动对故障进行处理。实现了对配置文件异常的自动探测处理,解决了配置文件错误发现及处理方案存在效率和准确度低下的问题,保障了系统运行的持续稳定性。使用dig命令实现配置文件版本获取,并自动区分不同的配置文件异常类型,减少配置文件异常的定位时间70%并提高定位的精细度,降低80%误报率;实现不同配置文件异常的自动处理机制,减少75%DNS配置文件导致的故障对服务影响时间
上面描述的内容可以单独地或者以各种方式组合起来实施,而这些变型方式都在本发明的保护范围之内。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制。尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (12)
1.一种域名系统故障处理方法,其特征在于,包括:
获取域名系统DNS服务器当前加载的DNS配置文件版本;
检测所述DNS服务器当前加载的DNS配置文件版本与配置管理平台最新的DNS配置文件版本是否匹配;
在检测结果为不匹配时,判定所述DNS服务器故障,启动自动故障处理;
其中,检测所述DNS服务器当前加载的DNS配置文件版本与配置管理平台最新的DNS配置文件版本是否匹配包括:
检测所述DNS服务器当前加载的DNS配置文件版本与配置管理平台最新的DNS配置文件版本的版本号是否一致;
在版本号不一致时,比较延迟时间与超时时间,所述延迟时间是将当前时间减去所述配置管理平台最新的DNS配置文件版本的下发时间计算得到的,所述超时时间是所述DNS服务器当前加载的DNS配置文件版本对应的超时时间;
在所述延迟时间大于所述超时时间时判定所述DNS服务器当前加载的DNS配置文件版本与配置管理平台最新的DNS配置文件版本不匹配。
2.根据权利要求1所述的域名系统故障处理方法,其特征在于,获取DNS服务器当前加载的DNS配置文件版本的步骤包括:
从接收到的探测任务中提取得到所述DNS服务器的IP地址;
根据所述DNS服务器的IP地址,使用dig命令获取所述DNS服务器的起始授权机构SOA记录;
从所述SOA记录中提取所述DNS服务器当前加载的DNS配置文件版本。
3.根据权利要求1所述的域名系统故障处理方法,其特征在于,在检测结果为不匹配时,判定所述DNS服务器故障,启动自动故障处理的步骤包括:
在检测结果为不匹配时,判定所述DNS服务器发生配置文件异常;
统计配置文件异常的DNS服务器数量占全部DNS服务器数量的比例;
在所述比例达到预置的告警门限时,发出告警信息。
4.根据权利要求3所述的域名系统故障处理方法,其特征在于,统计配置文件异常的DNS服务器数量占全部DNS服务器数量的比例的步骤之后,还包括:
在所述比例没有达到所述预置的告警门限时,重新向故障的DNS服务器下发所述最新的DNS配置文件版本。
5.根据权利要求4所述的域名系统故障处理方法,其特征在于,在所述比例没有达到所述预置的告警门限时,重新向故障的DNS服务器下发所述最新的DNS配置文件版本的步骤之后,还包括:
在重新下发所述最新的DNS配置文件版本后再度检测所述DNS服务器是否存在版本异常;
若仍存在版本异常,将所述DNS服务器的IP地址由所述最新的DNS配置文件版本中剔除,重新生成DNS配置文件。
6.根据权利要求5所述的域名系统故障处理方法,其特征在于,在重新下发所述最新的DNS配置文件版本后再度检测所述DNS服务器是否存在版本异常的步骤之后还包括:
对存在版本异常的DNS服务器进行如下处理:
1)当所述最新的DNS配置文件涉及的修改类型为新增Domain时,对存在版本异常的所述DNS服务器进行NXDomain拦截;
2)当所述最新的DNS配置文件涉及的修改类型为删除Domain时,添加防火墙策略,丢弃所述最新的DNS配置文件要求删除的Domain的请求包;
3)当所述最新的DNS配置文件涉及的修改类型为IP替换、IP新增、IP删除、view变更四项中任一时,屏蔽存在版本异常的所述DNS服务器的53端口。
7.一种域名系统故障处理系统,其特征在于,包括:
探测模块,用于获取DNS服务器当前加载的DNS配置文件版本;
智能运算模块,用于检测所述DNS服务器当前加载的DNS配置文件版本与配置管理平台最新的DNS配置文件版本是否匹配;
故障处理模块,用于在检测结果为不匹配时,判定所述DNS服务器故障,启动自动故障处理;
其中,所述智能运算模块包括:
版本号对比单元,用于检测所述DNS服务器当前加载的DNS配置文件版本与配置管理平台最新的DNS配置文件版本的版本号是否一致;
时间对比单元,用于在版本号不一致时,比较延迟时间与超时时间,所述延迟时间是将当前时间减去所述配置管理平台最新的DNS配置文件版本的下发时间计算得到的,所述超时时间是所述DNS服务器当前加载的DNS配置文件版本对应的超时时间;
匹配判定单元,用于在所述延迟时间大于所述超时时间时判定所述DNS服务器当前加载的DNS配置文件版本与配置管理平台最新的DNS配置文件版本不匹配。
8.根据权利要求7所述的域名系统故障处理系统,其特征在于,所述探测模块包括:
任务解析单元,用于从接收到的探测任务中提取得到所述DNS服务器的IP地址;
SOA记录获取单元,用于根据所述DNS服务器的IP地址,使用dig命令获取所述DNS服务器的起始授权机构SOA记录;
当前版本提取单元,用于从所述SOA记录中提取所述DNS服务器当前加载的DNS配置文件版本。
9.根据权利要求8所述的域名系统故障处理系统,其特征在于,所述故障处理模块包括:
异常判定单元,用于在检测结果为不匹配时,判定所述DNS服务器发生配置文件异常;
统计单元,用于统计配置文件异常的DNS服务器数量占全部DNS服务器数量的比例;
第一故障处理单元,用于在所述比例达到预置的告警门限时,发出告警信息。
10.根据权利要求9所述的域名系统故障处理系统,其特征在于,所述故障处理模块还包括:
第二故障处理单元,用于在所述比例没有达到所述预置的告警门限时,重新向故障的DNS服务器下发所述最新的DNS配置文件版本。
11.根据权利要求10所述的域名系统故障处理系统,其特征在于,所述故障处理模块还包括:
重配置单元,用于在重新下发所述最新的DNS配置文件版本后再度检测所述DNS服务器仍存在版本异常时,将所述DNS服务器的IP地址由所述最新的DNS配置文件版本中剔除,重新生成DNS配置文件。
12.根据权利要求11所述的域名系统故障处理系统,其特征在于,所述故障处理模块还包括:
DNS服务器故障处理单元,用于对存在版本异常的DNS服务器进行如下处理:
1)当所述最新的DNS配置文件涉及的修改类型为新增域名Domain时,对存在版本异常的所述DNS服务器进行NXDomain拦截;
2)当所述最新的DNS配置文件涉及的修改类型为删除Domain时,添加防火墙策略,丢弃所述最新的DNS配置文件要求删除的Domain的请求包;
3)当所述最新的DNS配置文件涉及的修改类型为IP替换、IP新增、IP删除、view变更四项中任一时,屏蔽存在版本异常的所述DNS服务器的53端口。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710526972.8A CN109218050B (zh) | 2017-06-30 | 2017-06-30 | 一种域名系统故障处理方法和系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710526972.8A CN109218050B (zh) | 2017-06-30 | 2017-06-30 | 一种域名系统故障处理方法和系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109218050A CN109218050A (zh) | 2019-01-15 |
CN109218050B true CN109218050B (zh) | 2021-07-13 |
Family
ID=64976982
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710526972.8A Active CN109218050B (zh) | 2017-06-30 | 2017-06-30 | 一种域名系统故障处理方法和系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109218050B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110149421B (zh) * | 2019-05-30 | 2021-11-26 | 世纪龙信息网络有限责任公司 | 域名系统的异常监测方法、系统、装置和计算机设备 |
CN112560028A (zh) * | 2020-12-24 | 2021-03-26 | 深圳昂楷科技有限公司 | 一种对关键文件防护的方法、装置和服务器 |
CN112804098B (zh) * | 2021-01-06 | 2023-04-07 | 北京小米松果电子有限公司 | 域名故障线路的切换方法、装置、终端设备及存储介质 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2016053045A1 (ko) * | 2014-10-02 | 2016-04-07 | 삼성전자주식회사 | 무선 통신 시스템의 단말기에서 데이터를 송수신하는 장치 및 방법 |
CN108933693A (zh) * | 2017-05-26 | 2018-12-04 | 贵州白山云科技有限公司 | 一种域名服务系统故障处理方法和系统 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10305800B2 (en) * | 2015-04-15 | 2019-05-28 | Hughes Network Systems, Llc | Preferential selection of IP protocol version with domain name matching on proxy servers |
-
2017
- 2017-06-30 CN CN201710526972.8A patent/CN109218050B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2016053045A1 (ko) * | 2014-10-02 | 2016-04-07 | 삼성전자주식회사 | 무선 통신 시스템의 단말기에서 데이터를 송수신하는 장치 및 방법 |
CN108933693A (zh) * | 2017-05-26 | 2018-12-04 | 贵州白山云科技有限公司 | 一种域名服务系统故障处理方法和系统 |
Also Published As
Publication number | Publication date |
---|---|
CN109218050A (zh) | 2019-01-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7213179B2 (en) | Automated and embedded software reliability measurement and classification in network elements | |
US20110270957A1 (en) | Method and system for logging trace events of a network device | |
CN106789306B (zh) | 通信设备软件故障检测收集恢复方法和系统 | |
US8245079B2 (en) | Correlation of network alarm messages based on alarm time | |
WO2017003780A1 (en) | Monitoring wireless access point events | |
CN108933693B (zh) | 一种域名服务系统故障处理方法和系统 | |
CN109218050B (zh) | 一种域名系统故障处理方法和系统 | |
CN108737574B (zh) | 一种节点离线判断方法、装置、设备及可读存储介质 | |
CN112714013B (zh) | 一种在云环境下的应用故障定位方法 | |
US20160352573A1 (en) | Method and System for Detecting Network Upgrades | |
CN114363151A (zh) | 故障检测方法和装置、电子设备和存储介质 | |
CN114996090A (zh) | 一种服务器异常检测方法、装置、电子设备及存储介质 | |
CN107769957B (zh) | 一种域名系统故障原因分析方法和装置 | |
CN104796283A (zh) | 一种监控报警的方法 | |
US7421493B1 (en) | Orphaned network resource recovery through targeted audit and reconciliation | |
CN106713038B (zh) | 一种远程传输线路质量检测方法及系统 | |
JP2010244137A (ja) | 障害情報収集装置 | |
CN110521233B (zh) | 标识中断的方法、接入点、远程配置的方法、系统和介质 | |
JP2014053658A (ja) | 障害部位推定システムおよび障害部位推定プログラム | |
EP3252995B1 (en) | Method for detecting network failures | |
CN108234152B (zh) | 远程接口调用的网络监控的方法和系统 | |
KR100887874B1 (ko) | 인터넷 망의 장애 관리 시스템 및 그 방법 | |
CN115378841A (zh) | 设备接入云平台状态的检测方法及装置、存储介质、终端 | |
KR101072154B1 (ko) | 중앙 집중적 네트워크 관리 시스템 | |
CN107968721B (zh) | 针对服务器主动放行的方法、网络管控系统及被管控终端 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |