DNS更新方法、装置及系统与流程

文档序号:12731295阅读:377来源:国知局
DNS更新方法、装置及系统与流程

本发明涉及通信技术领域,具体涉及一种DNS更新方法、装置及系统。



背景技术:

作为互联网的重要基础设施,域名系统(Domain Name System,DNS)一直为全球互联网的运行提供关键性的基础服务。利用域名系统,用户只需输入待访问网站的域名即可方便而快速地进行访问。

但是,发明人在实现本发明的过程中发现:针对同一个域名,DNS的解析结果可能会因客户端所处地域的不同,以及访问时间的不同而动态变化,现有技术中尚无法确定一个域名在各个地域所对应的最优解析结果,因而无法为用户提供更为准确快捷的访问方式。



技术实现要素:

鉴于上述问题,提出了本发明以便提供一种克服上述问题或者至少部分地解决上述问题的DNS更新方法、装置及系统。

根据本发明的一个方面,提供了一种DNS更新方法,包括:向遍布多个地域的客户端分别发送监测域名列表,获取各个客户端针对所述监测域名列表中的各个域名确定的域名解析结果;从获取到的多个域名解析结果中提取正确的域名解析结果;其中,每个域名解析结果中包含域名及其对应的IP地址;分别针对每个域名,确定与该域名相对应的至少一个IP地址,根据访问所述至少一个IP地址的客户端的地域分布情况确定该域名在各个地域所对应的优选IP地址;根据各个域名在各个地域所对应的优选IP地址更新相应地域的DNS服务器中存储的域名解析文件。

根据本发明的另一个方面,提供了一种DNS更新装置,包括:获取模块,适于向遍布多个地域的客户端分别发送监测域名列表,获取各个客户端针对所述监测域名列表中的各个域名确定的域名解析结果;提取模块,适于从获取到的多个域名解析结果中提取正确的域名解析结果;其中,每个域名解析结果中包含域名及其对应的IP地址;确定模块,适于分别针对每个域名,确定与该域名相对应的至少一个IP地址,根据访问所述至少一个IP地址的客户端的地域分布情况确定该域名在各个地域所对应的优选IP地址;更新模块,适于根据各个域名在各个地域所对应的优选IP地址更新相应地域的DNS服务器中存储的域名解析文件。

根据本发明的再一个方面,提供了一种DNS更新系统,包括:上述DNS更新装置,以及遍布多个地域的客户端及DNS服务器。

在本发明提供的DNS更新方法、装置及系统中,首先,获取遍布多个地域的客户端针对监测域名列表中的各个域名确定的域名解析结果;然后,分别针对每个域名,确定与该域名相对应的至少一个IP地址,根据访问至少一个IP地址的客户端的地域分布情况确定该域名在各个地域所对应的优选IP地址;根据各个域名在各个地域所对应的优选IP地址更新相应地域的DNS服务器中存储的域名解析文件。由此可见,本发明能够预先在多个地域布署多台客户端,并根据各个客户端反馈的域名解析结果及其对应的客户端的地域分布情况确定各个地域的优选IP地址,并对相应的DNS服务器进行更新,从而确保客户端在各个地域访问相应域名时解析到的IP地址都能满足用户快捷准确访问的需求。

上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。

附图说明

通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:

图1示出了本发明实施例一提供的一种DNS更新方法的流程图;

图2示出了本发明实施例二提供的一种DNS更新方法的流程图;

图3示出了本发明实施例二提供的一种用于检测域名解析结果的具体实现方式的流程图;

图4示出了本发明实施例三提供的一种DNS更新装置的结构框图;

图5示出了本发明实施例四提供的一种DNS更新系统的结构框图。

具体实施方式

下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。

本发明提供了一种DNS更新方法、装置及系统,至少能够解决现有技术中无法确定一个域名在各个地域所对应的最优解析结果的技术问题。

实施例一

图1示出了根据本发明实施例一提供的一种DNS更新方法的流程图。如图1所示,该方法包括以下步骤:

步骤S110:向遍布多个地域的客户端分别发送监测域名列表,获取各个客户端针对监测域名列表中的各个域名确定的域名解析结果。

其中,监测域名列表用于存储待监测的域名,该监测域名列表由服务器预先生成并发送给各个客户端,还可以在后期由服务器和/或客户端进行更改。各个客户端针对该监测域名列表中的域名确定的域名解析结果既可以由相应客户端在访问监测域名列表中的某一域名时实时地确定并上报给服务器,也可以由客户端通过打点请求等方式定期地将上一周期内访问过的包含在监测域名列表中的域名所对应的域名解析结果发送给服务器,本发明对域名解析结果的获取方式不做具体限定。

步骤S120:从获取到的多个域名解析结果中提取正确的域名解析结果;其中,每个域名解析结果中包含域名及其对应的IP地址。

其中,提取正确的域名解析结果的过程可通过多种检测方式实现。每个域名解析结果中至少要包含客户端访问的域名以及与该域名对应的IP地址。其中,与该域名对应的IP地址是指客户端在本次访问时所采用的IP地址,该IP地址通常由预设的DNS服务器提供,也可能直接通过客户端本地存储的域名解析文件确定。

步骤S130:分别针对每个域名,确定与该域名相对应的至少一个IP地址,根据访问至少一个IP地址的客户端的地域分布情况确定该域名在各个地域所对应的优选IP地址。

具体地,每个域名所对应的IP地址的数量可能为一个或多个,同一个IP地址也可能在不同的地域被访问,因此,通过统计访问各个IP地址的客户端的地域分布情况,能够确定出相应地域的优选IP地址。例如,对于一个IP地址而言,若该IP地址在地域A的访问数量远大于其在其他地域的访问数量,则可以确定该IP地址最适宜在地域A进行访问。又如,针对一个地域而言,若该地域的客户端共访问过三个IP地址,那么三个IP地址当中访问量最大的IP地址则可以作为该地域对应的优选IP地址。总之,通过客户端访问特定IP地址时的地域分布情况,既可以确定出一个IP所最适宜的地域,也可以确定出一个地域内最适宜的IP地址。

步骤S140:根据各个域名在各个地域所对应的优选IP地址更新相应地域的DNS服务器中存储的域名解析文件。

通过对各个地域的DNS服务器中存储的域名解析文件进行更新,能够确保各地客户端在访问时能够获取到与其所处的地域最匹配的IP地址,从而提升各地客户端的访问效率。

另外,上述的各个步骤还可以周期性进行,例如,每天晚上对当天的客户端访问情况进行统计,并根据当天的客户端访问情况对各地的DNS服务器进行更新,以确保第二天的访问效率。

由此可见,本发明能够预先在多个地域布署多台客户端,并根据各个客户端反馈的域名解析结果及其对应的客户端的地域分布情况确定各个地域的优选IP地址,并对相应的DNS服务器进行更新,从而确保客户端在各个地域访问相应域名时解析到的IP地址都能满足用户快捷准确访问的需求。

实施例二

图2示出了根据本发明实施例二提供的一种DNS更新方法的流程图。该方法的执行主体通常为服务器或服务器集群,优选地,可以利用云服务器实现。如图2所示,该方法包括以下步骤:

步骤S210:向遍布多个地域的客户端分别发送监测域名列表,获取各个客户端针对监测域名列表中的各个域名确定的域名解析结果。

其中,预先在多个地域分别布署一台或多台客户端,以实现对各个地域的访问情况的监控。预设的监测域名列表用于存储待监测的域名,该监测域名列表通常由服务器预先生成并发送给各个客户端,还可以由服务器和/或客户端进行更改,例如,客户端可以根据自身需求向服务器发送添加域名请求,从而在监测域名列表中添加待监测的域名数量。而且,服务器通常会根据网络变化情况而定期调整监测域名列表的内容,为此,该监测域名列表还具有版本信息,则本实施例中的方法还可以进一步根据版本信息判断客户端的监测域名列表是否需要更新,当判断结果为是时,向客户端发送更新后的监测域名列表。其中,该版本信息既可以由客户端定期上报给服务器,也可以由服务器定期从客户端获取。当客户端接收到更新后的监测域名列表后,根据更新后的监测域名列表增减待监测的域名数量。

具体地,在一种实现方式中,客户端针对预设的监测域名列表中的域名确定的域名解析结果由客户端在访问监测域名列表中的某一域名时实时地确定并上报给服务器。相应地,每当客户端访问某一域名时,进一步判断该域名是否属于监测域名列表,若判断结果为是,则实时获取该域名的域名解析结果并上报给服务器。具体实现时,可以通过挂钩函数等机制来实现实时上报的效果。在另一种实现方式中,客户端通过访问日志和/或打点请求等方式定期地将上一周期内访问过的包含在监测域名列表中的域名所对应的域名解析结果发送给服务器。具体地,服务器每隔预设的时间间隔(例如一天)获取客户端发送的访问日志和/或打点请求,根据访问日志和/或打点请求确定客户端针对监测域名列表中的域名确定的域名解析结果。另外,由于同一客户端在一段时间内可能会重复多次访问同一域名,由此产生大量的冗余数据,因此,为了提高后续分析的处理速度,可以进一步对访问日志和/或打点请求中包含的数据内容进行消重处理,根据消重处理后的数据内容确定客户端针对监测域名列表中的各个域名确定的域名解析结果。

步骤S220:对获取到的各个域名解析结果进行检测,以确定各个域名解析结果的正确性。

其中,步骤S220可以采用多种方式实现,例如,可以根据预设的黑/白列表进行检测,也可以根据预设的检测规则进行检测,只要能够确定域名解析结果是否正确即可。通过本步骤能够检测出异常的域名,例如被劫持的域名,以确保后续处理结果的准确性。

步骤S230:从检测后的域名解析结果中提取正确的域名解析结果;其中,每个域名解析结果中包含域名及其对应的IP地址。

其中,每个域名解析结果中至少要包含客户端访问的域名以及与该域名对应的IP地址。其中,与该域名对应的IP地址是指客户端在本次访问时所采用的IP地址,该IP地址通常由预设的DNS服务器提供,也可能直接通过客户端本地存储的域名解析文件确定。

另外,在每个域名解析结果中还可以进一步包括与该域名解析结果相对应的客户端的地域信息,以便在后续步骤中根据各个域名解析结果中包含的与该域名解析结果相对应的客户端的地域信息确定访问至少一个IP地址的客户端的地域分布情况。例如,假设客户端一位于地域A,当客户端一在地域A内访问域名X1时,根据预设的DNS服务器或客户端一本地存储的域名解析文件对域名X1进行解析后得到的IP地址为x1,则客户端一针对本次访问生成的域名解析结果中包括:域名X1、与该域名X1对应的IP地址x1、以及客户端一所处的地域A。当然,在后续步骤中也可以根据其他方式确定客户端的地域信息,例如,可以直接根据客户端的IP地址进行判断等。

步骤S240:分别针对每个域名,确定与该域名相对应的至少一个IP地址,根据访问至少一个IP地址的客户端的地域分布情况确定该域名在各个地域所对应的优选IP地址。

具体地,每个域名所对应的IP地址的数量可能为一个或多个,同一个IP地址也可能在不同的地域被访问,因此,通过统计访问各个IP地址的客户端的地域分布情况,能够确定出相应地域的优选IP地址。例如,对于一个IP地址而言,若该IP地址在地域A的访问数量远大于其在其他地域的访问数量,则可以确定该IP地址最适宜在地域A进行访问。又如,针对一个地域而言,若该地域的客户端共访问过三个IP地址,那么三个IP地址当中访问量最大的IP地址则可以作为该地域对应的优选IP地址。总之,通过客户端访问特定IP地址时的地域分布情况,既可以确定出一个IP所最适宜的地域,也可以确定出一个地域内最适宜的IP地址。

例如,假设一段时间内有一千万个用户正常访问域名M1,相应地,在步骤S230中提取出一千万条正确的域名解析结果,在步骤S240中,计算与这些域名解析结果相对应的客户端的地域分布情况,经统计后,若地域A的客户端大多访问IP1,且IP3的访问量在地域A内仅次于IP1,则确定域名M1在地域A所对应的优选IP地址为IP1和IP3,且IP1的排列顺序位于IP3之前,或IP1的权重值大于IP3;若地域B的客户端大多访问IP2,且IP5的访问量在地域B内仅次于IP2,则确定域名M1在地域B所对应的优选IP地址为IP2和IP5,且IP2的排列顺序位于IP5之前,或IP2的权重值大于IP5。依照上述方式,可以分别针对每个域名,计算出该域名在各个地域的优选IP地址,且一个域名在同一地域内的优选IP地址既可以是一个也可以是多个,具体数量和排列方式取决于客户端的实际需求。具体地,当一个域名在同一地域内的优选IP地址为多个时,根据各个IP地址在该地域内的访问量的多少来确定各个IP地址之间的排列顺序,从而使访问量越多的IP地址的排序越靠前;和/或,测量各个IP地址在该地域内的访问速度,根据访问速度的快慢来确定各个IP地址之间的排列顺序,从而使访问速度越快的IP地址的排序越靠前。

步骤S250:根据各个域名在各个地域所对应的优选IP地址更新相应地域的DNS服务器中存储的域名解析文件。

通过对各个地域的DNS服务器中存储的域名解析文件进行更新,能够确保各地客户端在访问时能够获取到与其所处的地域最匹配的IP地址,从而提升各地客户端的访问效率。例如,在上例中,向地域A所对应的DNS服务器下发用于将域名M1对应的优选IP地址更新为IP1和IP3的更新指令,向地域B所对应的DNS服务器下发用于将域名M1对应的优选IP地址更新为IP2和IP5的更新指令。

具体实现时,由于域名解析结果具有动态变化的特性,因此,上述的各个步骤可以周期性进行,以提升更新结果的准确性和及时性。例如,每隔预设周期对上一周期内的客户端访问情况进行统计,并根据统计结果对各地的DNS服务器进行更新,以确保下一周期的访问效率。具体更新时,可以针对监测域名列表中的所有域名设置相同的更新周期并同时进行更新,例如,每天对监测域名列表中的所有域名对应的优选IP地址变动情况进行统计,并根据统计结果进行更新。还可以针对监测域名列表中的不同域名设置不同的更新周期,例如,可以进一步统计各个域名的访问频率,并针对访问频率较高的域名设置较短的更新周期,为访问频率较低的域名设置较长的更新周期。其中,访问频率可以通过一段时间内的PV(Page View,页面浏览量)、和/或UV(Unique Visitor,独立访问者)进行统计。另外,还可以结合域名被劫持的概率、域名的重要程度等因素来设置更新周期。

步骤S260:根据各个域名在各个地域所对应的优选IP地址向各个客户端发送用于更新客户端本地存储的域名解析文件的更新指令。

本步骤为一个可选的步骤,通过本步骤,能够对客户端本地存储的域名解析文件进行更新,从而省去客户端通过DNS服务器查询解析结果的时间,提升访问速度。

由此可见,通过本发明实施例提供的DNS更新方法能够确保客户端能够在各个地域内享受最优的DNS服务。另外,本实施例除了能够对最优DNS列表进行更新之外,还可以进一步通过对域名解析结果的检测来确定已被劫持的域名,进而对DNS进行更新,以确保DNS解析服务的正确性。具体地,图3示出了用于检测域名解析结果的步骤S220的具体实现方式,如图3所示,步骤S220进一步包括:

步骤S221:根据预设的白IP列表和/或白DNS列表,以及预设的黑IP列表和/或黑DNS列表对域名解析结果的正确性进行预判断。

其中,预设的白IP列表可以通过多种方式创建,例如,在一种可选的方式中,预先根据设定规则生成一批白IP,并将该批白IP存储到白IP列表中,以便于查询。具体地,可以通过预先向至少一个白DNS服务器请求与监测域名列表中的域名相对应的IP地址的方式创建白IP列表;还可以通过预设的检测方式检测IP地址的正确性,进而根据检测结果创建白IP列表;也可以通过IP反查Passive DNS数据库,以此来运营和扩充白IP列表。同理,白DNS列表也可以通过多种方式创建,例如,既可以是预先创建好的,也可以在后期的检测过程中动态更改。

预设的黑IP列表也可以通过多种方式创建,例如,可以预先对一批IP进行检测,并根据检测结果创建,也可以在检测过程中动态更改。另外,黑IP列表中进一步包括:全局黑IP子表,用于存储针对所有域名生效的全局黑IP;以及,多个与监测域名列表中的各个域名一一对应的局部黑IP子表,每个局部黑IP子表用于存储针对相应的域名生效的局部黑IP。具体查询时,可以先查询与相应域名对应的局部黑IP子表,再查询全局黑IP子表,从而提高查询效率。同理,白IP列表也可以进一步划分为全局白IP子表,用于存储针对所有域名生效的全局白IP;以及,多个与监测域名列表中的各个域名一一对应的局部白IP子表,由于局部白IP子表是针对于特定域名的白IP,因而在查询时更具针对性,查询速度更快。同理,黑DNS列表也可以通过多种方式创建,例如,既可以是预先创建好的,也可以在后期的检测过程中动态更改。

在本步骤中,首先获取域名解析结果中包含的域名及其对应的IP地址,然后,查询黑/白IP列表中与该域名对应的局部黑/白IP子表,若查询到相匹配的,则直接根据查询结果确定该域名解析结果的预判断结果为黑(即:不正确,也叫被劫持)或白(即:正确);若未查询到相匹配的,则进一步查询全局黑/白IP子表,并根据查询结果进行预判断。通过划分局部子表和全局子表可以加快查询速度。另外,还可以进一步结合黑/白DNS列表进行预判断。例如,首先确定与提供域名解析结果的客户端相对应的DNS服务器地址,然后,查询黑/白DNS列表,若该DNS服务器地址属于黑DNS列表,则该域名解析结果的预判断结果为黑。另外,若在黑/白IP列表和/或黑/白DNS列表中均未查询到与该域名解析结果中的域名及其IP地址相匹配的内容,则确定该域名解析结果的预判断结果为未知。

在本实施例中,确定域名解析结果的预判断结果之后,可以采取多种处理方式,例如,在一种可选的方式中,若域名解析结果的预判断结果为黑,则直接确定域名解析结果不正确(即:已被劫持);若域名解析结果的预判断结果为白,则直接确定域名解析结果正确;若域名解析结果的预判断结果为未知,则进一步执行步骤S222及其后续步骤进行进一步地检测,并根据检测结果确定是否需要对黑/白IP列表和/或黑/白DNS列表进行更新。另外,在另一种可选的方式中,无论域名解析结果的预判断结果如何,都进一步执行步骤S222及其后续步骤进行进一步地检测,并在步骤S222中进一步对预判断结果的正确性进行验证,并根据验证结果确定是否需要对黑/白IP列表和/或黑/白DNS列表进行更新,从而进一步提升判断的准确性。

步骤S222:根据预设的安全DNS确定与域名解析结果中包含的域名相对应的标准页面。

具体地,根据域名解析结果中包含的域名查询预设的安全DNS,以确定与该域名相对应的标准页面。标准页面是指该域名所对应的正确页面。其中,预设的安全DNS可以是任何已知的白DNS,优选地,可以是该域名在注册时所指定的官方DNS。另外,在本步骤中,为了提高响应速度,可以不必每次都向安全DNS请求标准页面,而是预先对监测域名列表中的域名所对应的标准页面进行请求并存储,以加快后续的查询速度。而且,除了通过向预设的安全DNS请求与该域名相对应的标准页面之外,还可以直接根据预存的与该域名对应的白IP请求对应的标准页面,总之,本发明不限定标准页面的获取方式,只要能够确保获取到的标准页面的正确性即可。

步骤S223:根据域名解析结果中包含的IP地址获取对应的网络页面,将网络页面与标准页面进行比较,根据比较结果确定域名解析结果中包含的域名的安全性。

首先,根据域名解析结果中包含的域名所对应的IP地址,获取与该IP地址对应的网络页面。例如,可通过网络爬虫等各种方式进行获取。具体实现时,可以绑定用户发送的打点请求,获取其中的IP地址以及HOST信息,并根据该IP地址进行HTTP请求,将下载到的主页面作为对应的网络页面。由此可见,根据域名解析结果中包含的IP地址获取到的网络页面是相应的客户端所展现的页面,因此,也可以称之为用户页面。

然后,将网络页面与标准页面进行比较,若比较结果为相似,则确定域名解析结果正确;反之,则确定域名解析结果不正确。具体比较时,可通过以下两种比较方式中的至少一种实现:

在第一种比较方式中,根据网络页面与标准页面的DOM树、链接数量和/或页面尺寸确定页面内容之间的相似度分值,当相似度分值大于第一预设阈值时,确定域名解析结果中包含的域名安全;当相似度分值不大于第一预设阈值时,确定域名解析结果中包含的域名已被劫持。由此可见,第一种比较方式主要侧重于从页面内容的角度进行静态信息的比较,因此,只要是能够反映页面内容的页面元素都可以用于比较。具体地,通过解析页面的DOM树,并对其树节点进行对比实现。具体分析时可以从DOM树中提取若干级重要节点进行主要属性的对比,从而提高比较效率(例如仅提取前3级节点进行主要属性的对比),如果差异数量超过20%判为不相似,否则为相似。另外,还可以对DOM树中的各个元素设置不同的权重值,例如,发明人在实现本发明的过程中发现:通过对script等标签设置更高的权重能够进一步提升比较的准确率。具体计算时,可以通过sim哈希算法提升计算效率。

在第二种比较方式中,根据网络页面与标准页面的跳转次数、和/或落地页面确定页面行为之间的相似度分值,当相似度分值大于第二预设阈值时,确定域名解析结果中包含的域名安全;当相似度分值不大于第二预设阈值时,确定域名解析结果中包含的域名已被劫持。由此可见,第二种比较方式主要侧重于从页面行为的角度进行动态信息的比较,因此,只要是能够反映页面行为的特征都可以用于比较。例如,若页面的跳转次数不同则很可能为黑,通过跳转次数能够快速判断;若页面多次跳转后的落地页面明显不同,也很可能为黑,通过落地页面能够更加直观地判断。上述的两种比较方式既可以单独使用,也可以结合使用。

步骤S224:当确定域名解析结果正确时,根据域名解析结果中包含的IP地址,和/或提供该IP地址的DNS服务器地址更新预设的白IP列表和/或白DNS列表;当确定域名解析结果不正确时,根据域名解析结果中包含的IP地址,和/或提供该IP地址的DNS服务器地址更新预设的黑IP列表和/或黑DNS列表。

具体地,确定域名解析结果中包含的域名正确时,根据域名解析结果中包含的IP地址更新预设的白IP列表的过程具体为:查询白IP列表中与该域名相对应的局部白IP子表,判断该局部白IP子表中是否已存储有域名解析结果中包含的IP地址,若判断结果为否,则将域名解析结果中包含的IP地址增加到该局部白IP子表中。当域名解析结果中包含的域名非安全时,采用类似的方式对局部黑IP子表进行更新。

另外,在更新黑/白DNS列表时,可以采取以下策略,当确定域名解析结果不正确时,进一步查询提供该域名解析结果中包含的IP地址的DNS服务器,并将该DNS服务器地址加入黑DNS列表;或者,也可以针对同一个DNS服务器,确定其提供的IP地址的错误数量达到预设阈值时将其加入黑DNS列表。

另外,在本实施例中,当确定域名解析结果中包含的域名已被劫持后,可以进一步向对应的客户端和/或DNS服务器发送域名劫持消息,以便客户端和/或DNS服务器根据域名劫持消息进行恶意IP的拦截以及域名解析结果的更正。其中,可以在每当确定域名被劫持后,立即向对应的客户端和/或DNS服务器发送域名劫持消息,该域名劫持消息中至少包含被劫持的域名及其对应的用户页面的IP地址,该方式尤其适用于客户端实时上报域名解析结果的场景中,从而能够及时通知客户端和/或DNS服务器对被劫持的域名进行防范。另外,该域名劫持消息中还可以进一步包含被劫持的域名所对应的标准页面的IP地址,以供客户端和/或DNS服务器及时进行更正。另外,步骤S224还可以每隔预设的时间间隔执行一次,例如,可以每天晚上12:00对当天确定的被劫持域名进行统计,并分别向各个客户端和/或DNS服务器发送域名劫持消息。

另外,在本实施例中,还可以定期将上述预设的白IP列表和/或白DNS列表以及预设的黑IP列表和/或黑DNS列表发送给各个客户端,以供客户端存储在本地进行查询。其中,由于上述预设的白IP列表和/或白DNS列表以及预设的黑IP列表和/或黑DNS列表均会在服务器的运行过程中进行动态更新,因此,有必要定期地将这些列表发送给客户端,以供客户端存储在本地查询,从而加快客户端的域名解析效率。具体实现时,可以为更新前后的每个列表设置不同的版本号,客户端根据版本号确定是否需要对本地的列表进行更新。另外,为了提高传输速度,节省网络资源,也可以由服务器定期对上一周期内出现变化的黑/白IP以及黑/白DNS进行统计,并根据统计结果确定出各个列表中更新的部分,并仅将更新的部分(即增量部分)发送给客户端。或者,还可以每隔第一时间间隔发送各个列表的全量部分,每隔第二时间间隔发送各个列表相对于上一版本的增量部分,其中,第一时间间隔大于第二时间间隔。具体地,服务器可以针对监测域名列表中的每个域名,统计该域名在上一周期内新增的白IP和/或黑IP。相应地,每当客户端欲访问监测域名列表中的一域名时,首先查询本地的黑/白IP列表,若查询到对应的IP地址为黑,则直接提示用户该域名已被劫持,进而还可以向服务器请求正确的IP地址。而且,还可以定期将上述预设的白IP列表和/或白DNS列表以及预设的黑IP列表和/或黑DNS列表发送给对应的DNS服务器,以供DNS服务器进行更新。

由此可见,在本实施例中,不仅能够根据地域向各个DNS服务器下发最优的IP地址列表,以确保各个DNS服务器能够提供最佳的DNS解析服务。而且,还能够进一步对域名进行防护,并在发现被劫持的域名时及时对相应的DNS服务器进行更新,以确保DNS解析服务的正确性,其中,在根据检测结果更新DNS服务器时,也可以根据DNS服务器的地域分布情况进行更新。

实施例三

图4示出了根据本发明实施例三提供的一种DNS更新装置40的结构框图。如图4所示,该装置包括:获取模块41、提取模块42、确定模块43以及更新模块44。

获取模块41适于向遍布多个地域的客户端分别发送监测域名列表,获取各个客户端针对监测域名列表中的各个域名确定的域名解析结果。

其中,预先在多个地域分别布署一台或多台客户端,以实现对各个地域的访问情况的监控。预设的监测域名列表用于存储待监测的域名,该监测域名列表通常由获取模块41预先生成并发送给各个客户端,还可以由获取模块41和/或客户端进行更改,例如,客户端可以根据自身需求向获取模块41发送添加域名请求,从而在监测域名列表中添加待监测的域名数量。而且,获取模块41通常会根据网络变化情况而定期调整监测域名列表的内容,为此,该监测域名列表还具有版本信息,则获取模块41还可以进一步根据版本信息判断客户端的监测域名列表是否需要更新,当判断结果为是时,获取模块41向对应的客户端发送更新后的监测域名列表。其中,该版本信息既可以由客户端定期上报给获取模块41,也可以由获取模块41定期从客户端获取。当客户端接收到更新后的监测域名列表后,根据更新后的监测域名列表增减待监测的域名数量。

具体地,在一种实现方式中,客户端针对预设的监测域名列表中的域名确定的域名解析结果由客户端在访问监测域名列表中的某一域名时实时地确定并上报给获取模块41。相应地,每当客户端访问某一域名时,进一步判断该域名是否属于监测域名列表,若判断结果为是,则实时获取该域名的域名解析结果并上报给获取模块41。在另一种实现方式中,客户端通过访问日志和/或打点请求等方式定期地将上一周期内访问过的包含在监测域名列表中的域名所对应的域名解析结果发送给获取模块41。具体地,获取模块41每隔预设的时间间隔(例如一天)获取客户端发送的访问日志和/或打点请求,根据访问日志和/或打点请求确定客户端针对监测域名列表中的域名确定的域名解析结果。另外,由于同一客户端在一段时间内可能会重复多次访问同一域名,由此产生大量的冗余数据,因此,为了提高后续分析的处理速度,获取模块41可以进一步对访问日志和/或打点请求中包含的数据内容进行消重处理,根据消重处理后的数据内容确定客户端针对监测域名列表中的各个域名确定的域名解析结果。

提取模块42适于从获取到的多个域名解析结果中提取正确的域名解析结果;其中,每个域名解析结果中包含域名及其对应的IP地址。

其中,每个域名解析结果中至少要包含客户端访问的域名以及与该域名对应的IP地址。与该域名对应的IP地址是指客户端在本次访问时所采用的IP地址,该IP地址通常由预设的DNS服务器提供,也可能直接通过客户端本地存储的域名解析文件确定。另外,提取模块42还可以进一步提取与该域名解析结果相对应的客户端的地域信息,以便在后续模块(对应确定模块43)中根据各个域名解析结果中包含的与该域名解析结果相对应的客户端的地域信息确定访问至少一个IP地址的客户端的地域分布情况。

具体地,提取模块42提取正确的域名解析结果的过程可通过多种检测方式实现。例如,可以根据预设的黑/白列表进行检测,也可以根据预设的检测规则进行检测,只要能够确定域名解析结果是否正确即可。通过上述过程能够检测出异常的域名,例如被劫持的域名,以确保后续处理结果的准确性。

具体实施中,提取模块42可以首先根据预设的白IP列表和/或白DNS列表,以及预设的黑IP列表和/或黑DNS列表对域名解析结果的正确性进行预判断。其中,预设的白IP列表以及白DNS列表可以通过多种方式创建。其中,白IP列表也可以进一步划分为全局白IP子表,用于存储针对所有域名生效的全局白IP;以及,多个与监测域名列表中的各个域名一一对应的局部白IP子表,由于局部白IP子表是针对于特定域名的白IP,因而在查询时更具针对性,查询速度更快。同样地,预设的黑IP列表以及黑DNS也可以通过多种方式创建。另外,黑IP列表中进一步包括:全局黑IP子表,用于存储针对所有域名生效的全局黑IP;以及,多个与监测域名列表中的各个域名一一对应的局部黑IP子表,每个局部黑IP子表用于存储针对相应的域名生效的局部黑IP。具体查询时,提取模块42可以先查询与相应域名对应的局部黑IP子表,再查询全局黑IP子表,从而提高查询效率。

在上述过程中,提取模块42首先获取域名解析结果中包含的域名及其对应的IP地址,然后,查询黑/白IP列表中与该域名对应的局部黑/白IP子表,若查询到相匹配的,则直接根据查询结果确定该域名解析结果的预判断结果为黑(即:不正确,也叫被劫持)或白(即:正确);若未查询到相匹配的,则进一步查询全局黑/白IP子表,并根据查询结果进行预判断。通过划分局部子表和全局子表可以加快查询速度。另外,提取模块42还可以进一步结合黑/白DNS列表进行预判断。并且,若在黑/白IP列表和/或黑/白DNS列表中均未查询到与该域名解析结果中的域名及其IP地址相匹配的内容,则确定该域名解析结果的预判断结果为未知。

可选地,提取模块42在确定域名解析结果的预判断结果之后,可以采取多种处理方式,例如,在一种可选的方式中,若域名解析结果的预判断结果为黑,则直接确定域名解析结果不正确(即:已被劫持);若域名解析结果的预判断结果为白,则直接确定域名解析结果正确;若域名解析结果的预判断结果为未知,则进一步执行后续的进一步检测,并根据后续检测结果确定是否需要对黑/白IP列表和/或黑/白DNS列表进行更新。另外,在另一种可选的方式中,无论域名解析结果的预判断结果如何,都进一步执行后续的进一步检测,并在后续检测中对预判断结果的正确性进行验证,并根据验证结果确定是否需要对黑/白IP列表和/或黑/白DNS列表进行更新,从而进一步提升判断的准确性。

其次,提取模块42根据预设的安全DNS确定与域名解析结果中包含的域名相对应的标准页面。具体地,标准页面是指该域名所对应的正确页面。其中,预设的安全DNS可以是任何已知的白DNS,优选地,可以是该域名在注册时所指定的官方DNS。另外,为了提高响应速度,提取模块42可以不必每次都向安全DNS请求标准页面,而是预先对监测域名列表中的域名所对应的标准页面进行请求并存储,以加快后续的查询速度。而且,提取模块42除了通过向预设的安全DNS请求与该域名相对应的标准页面之外,还可以直接根据预存的与该域名对应的白IP请求对应的标准页面,总之,本发明不限定标准页面的获取方式,只要能够确保获取到的标准页面的正确性即可。

最后,提取模块42根据域名解析结果中包含的IP地址获取对应的网络页面,将网络页面与标准页面进行比较,根据比较结果确定域名解析结果中包含的域名的安全性。具体地,提取模块42首先根据域名解析结果中包含的域名所对应的IP地址,获取与该IP地址对应的网络页面。具体实现时,提取模块42可以绑定用户发送的打点请求,获取其中的IP地址以及HOST信息,并根据该IP地址进行HTTP请求,将下载到的主页面作为对应的网络页面。由此可见,提取模块42根据域名解析结果中包含的IP地址获取到的网络页面是相应的客户端所展现的页面,因此,也可以称之为用户页面。然后,提取模块42将网络页面与标准页面进行比较,若比较结果为相似,则确定域名解析结果正确;反之,则确定域名解析结果不正确。具体比较时,可通过以下两种比较方式中的至少一种实现:

在第一种比较方式中,提取模块42根据网络页面与标准页面的DOM树、链接数量和/或页面尺寸确定页面内容之间的相似度分值。具体实现方式参见方法实施例中的相关描述,此处不再赘述。这种比较方式主要侧重于从页面内容的角度进行静态信息的比较,因此,只要是能够反映页面内容的页面元素都可以用于比较。在第二种比较方式中,提取模块42根据网络页面与标准页面的跳转次数、和/或落地页面确定页面行为之间的相似度分值。具体实现方式参见方法实施例中的相关描述,此处不再赘述。这种比较方式主要侧重于从页面行为的角度进行动态信息的比较,因此,只要是能够反映页面行为的特征都可以用于比较。

可选地,当提取模块42确定域名解析结果中包含的域名已被劫持后,可以进一步向对应的客户端和/或DNS服务器发送域名劫持消息,以便客户端和/或DNS服务器根据域名劫持消息进行恶意IP的拦截以及域名解析结果的更正。

确定模块43适于分别针对每个域名,确定与该域名相对应的至少一个IP地址,根据访问所述至少一个IP地址的客户端的地域分布情况确定该域名在各个地域所对应的优选IP地址。

具体地,每个域名所对应的IP地址的数量可能为一个或多个,同一个IP地址也可能在不同的地域被访问,因此,确定模块43通过统计访问各个IP地址的客户端的地域分布情况,进而确定出相应地域的优选IP地址。例如,对于一个IP地址而言,若该IP地址在地域A的访问数量远大于其在其他地域的访问数量,则可以确定该IP地址最适宜在地域A进行访问。又如,针对一个地域而言,若该地域的客户端共访问过三个IP地址,那么三个IP地址当中访问量最大的IP地址则可以作为该地域对应的优选IP地址。总之,确定模块43通过客户端访问特定IP地址时的地域分布情况,既可以确定出一个IP所最适宜的地域,也可以确定出一个地域内最适宜的IP地址。

更新模块44适于根据各个域名在各个地域所对应的优选IP地址更新相应地域的DNS服务器中存储的域名解析文件。

具体地,更新模块44用于对各个地域的DNS服务器中存储的域名解析文件进行更新来确保各地客户端在访问时能够获取到与其所处的地域最匹配的IP地址,从而提升各地客户端的访问效率。例如,在上例中,向地域A所对应的DNS服务器下发用于将域名M1对应的优选IP地址更新为IP1和IP3的更新指令,向地域B所对应的DNS服务器下发用于将域名M1对应的优选IP地址更新为IP2和IP5的更新指令。

具体实现时,上述的过程可以周期性进行。例如,更新模块44每隔预设周期对上一周期内的客户端访问情况进行统计,并根据统计结果对各地的DNS服务器进行更新,以确保下一周期的访问效率;或者,更新模块44还可以针对监测域名列表中的不同域名设置不同的更新周期。另外,在更新模块44中,还可以结合域名被劫持的概率、域名的重要程度等因素来设置更新周期。

可选地,更新模块44进一步用于:根据各个域名在各个地域所对应的优选IP地址向各个客户端发送用于更新客户端本地存储的域名解析文件的更新指令。在这里,更新模块44能够对客户端本地存储的域名解析文件进行更新,从而省去客户端通过DNS服务器查询解析结果的时间,提升访问速度。

可选地,更新模块44进一步用于:当确定域名解析结果正确时,根据域名解析结果中包含的IP地址,和/或提供该IP地址的DNS服务器地址更新预设的白IP列表和/或白DNS列表;当确定域名解析结果不正确时,根据域名解析结果中包含的IP地址,和/或提供该IP地址的DNS服务器地址更新预设的黑IP列表和/或黑DNS列表;并根据预设的白IP列表和/或白DNS列表以及预设的黑IP列表和/或黑DNS列表更新相应的DNS服务器中存储的域名解析文件。

具体地,在提取模块42确定域名解析结果中包含的域名正确时,更新模块44根据域名解析结果中包含的IP地址更新预设的白IP列表的过程具体为:更新模块44查询白IP列表中与该域名相对应的局部白IP子表,判断该局部白IP子表中是否已存储有域名解析结果中包含的IP地址,若判断结果为否,则更新模块44将域名解析结果中包含的IP地址增加到该局部白IP子表中。当域名解析结果中包含的域名非安全时,更新模块44采用类似的方式对局部黑IP子表进行更新。

另外,在更新黑/白DNS列表时,更新模块44可以采取以下策略:当确定域名解析结果不正确时,更新模块44进一步查询提供该域名解析结果中包含的IP地址的DNS服务器,并将该DNS服务器地址加入黑DNS列表;或者,更新模块44也可以针对同一个DNS服务器,确定其提供的IP地址的错误数量达到预设阈值时将其加入黑DNS列表。

可选地,更新模块44还可以定期将上述预设的白IP列表和/或白DNS列表以及预设的黑IP列表和/或黑DNS列表发送给各个客户端,以供客户端存储在本地进行查询。其中,由于上述预设的白IP列表和/或白DNS列表以及预设的黑IP列表和/或黑DNS列表均会在服务器的运行过程中进行动态更新,因此,更新模块44有必要定期地将这些列表发送给客户端,以供客户端存储在本地查询,从而加快客户端的域名解析效率。具体实现时,更新模块44可以为更新前后的每个列表设置不同的版本号,客户端根据版本号确定是否需要对本地的列表进行更新。另外,为了提高传输速度,节省网络资源,更新模块44也可以定期对上一周期内出现变化的黑/白IP以及黑/白DNS进行统计,并根据统计结果确定出各个列表中更新的部分,并仅将更新的部分(即增量部分)发送给客户端。或者,更新模块44还可以每隔第一时间间隔发送各个列表的全量部分,每隔第二时间间隔发送各个列表相对于上一版本的增量部分,其中,第一时间间隔大于第二时间间隔。具体地,更新模块44可以针对监测域名列表中的每个域名,统计该域名在上一周期内新增的白IP和/或黑IP。相应地,每当客户端欲访问监测域名列表中的一域名时,首先查询本地的黑/白IP列表,若查询到对应的IP地址为黑,则直接提示用户该域名已被劫持,进而还可以向服务器请求正确的IP地址。而且,还可以定期将上述预设的白IP列表和/或白DNS列表以及预设的黑IP列表和/或黑DNS列表发送给对应的DNS服务器,以供DNS服务器进行更新。

上述各个模块的具体结构和工作原理可参照方法实施例中相应步骤的描述,此处不再赘述。

由此可见,在本实施例中,不仅能够根据地域向各个DNS服务器下发最优的IP地址列表,以确保各个DNS服务器能够提供最佳的DNS解析服务。而且,还能够进一步对域名进行防护,并在发现被劫持的域名时及时对相应的DNS服务器进行更新,以确保DNS解析服务的正确性。通过本发明实施例提供的DNS更新装置能够确保客户端能够在各个地域内享受最优的DNS服务。另外,本实施例除了能够对最优DNS列表进行更新之外,还可以进一步通过对域名解析结果的检测来确定已被劫持的域名,进而对DNS进行更新,以确保DNS解析服务的正确性。

实施例四

图5示出了根据本发明实施例四提供的一种DNS更新系统500的结构框图。如图5所示,该系统包括:DNS更新装置50以及遍布多个地域的客户端51及DNS服务器52。其中,更新装置50具体包括:获取模块41、提取模块42、确定模块43以及更新模块44。

在此提供的算法和显示不与任何特定计算机、虚拟系统或者其它设备固有相关。各种通用系统也可以与基于在此的示教一起使用。根据上面的描述,构造这类系统所要求的结构是显而易见的。此外,本发明也不针对任何特定编程语言。应当明白,可以利用各种编程语言实现在此描述的本发明的内容,并且上面对特定语言所做的描述是为了披露本发明的最佳实施方式。

在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。

类似地,应当理解,为了精简本公开并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如下面的权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。

本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。

此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在下面的权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。

本发明的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(DSP)来实现根据本发明实施例的基于集群的数据存储空间装置模块中的一些或者全部部件的一些或者全部功能。本发明还可以实现为用于执行这里所描述的方法的一部分或者全部的设备或者装置程序(例如,计算机程序和计算机程序产品)。这样的实现本发明的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,或者在载体信号上提供,或者以任何其他形式提供。

应该注意的是上述实施例对本发明进行说明而不是对本发明进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本发明可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。

本发明公开了:A1.一种DNS更新方法,包括:

向遍布多个地域的客户端分别发送监测域名列表,获取各个客户端针对所述监测域名列表中的各个域名确定的域名解析结果;

从获取到的多个域名解析结果中提取正确的域名解析结果;其中,每个域名解析结果中包含域名及其对应的IP地址;

分别针对每个域名,确定与该域名相对应的至少一个IP地址,根据访问所述至少一个IP地址的客户端的地域分布情况确定该域名在各个地域所对应的优选IP地址;

根据各个域名在各个地域所对应的优选IP地址更新相应地域的DNS服务器中存储的域名解析文件。

A2.根据A1所述的方法,其中,每个域名解析结果中进一步包括:与该域名解析结果相对应的客户端的地域信息;

则所述访问所述至少一个IP地址的客户端的地域分布情况根据各个域名解析结果中包含的与该域名解析结果相对应的客户端的地域信息确定。

A3.根据A 1或A 2所述的方法,其中,所述确定与该域名相对应的至少一个IP地址,根据访问所述至少一个IP地址的客户端的地域分布情况确定该域名在各个地域所对应的优选IP地址的步骤具体包括:

确定与该域名相对应的多个IP地址,分别针对每个地域,将多个IP地址中在该地域内的访问量最大的IP地址作为该地域所对应的优选IP地址。

A4.根据A1-A3任一所述的方法,其中,客户端针对所述监测域名列表中的各个域名确定的域名解析结果根据与该客户端对应的域名解析服务器确定;和/或,根据该客户端本地存储的域名解析文件确定。

A5.根据A1-A4任一所述的方法,其中,所述根据访问所述至少一个IP地址的客户端的地域分布情况确定该域名在各个地域所对应的优选IP地址的步骤之后进一步包括步骤:

根据各个域名在各个地域所对应的优选IP地址向各个客户端发送用于更新客户端本地存储的域名解析文件的更新指令。

A6.根据A1-A5任一所述的方法,其中,所述获取各个客户端针对所述监测域名列表中的各个域名确定的域名解析结果的步骤具体包括:每隔预设的时间间隔获取各个客户端发送的访问日志和/或打点请求,根据所述访问日志和/或打点请求确定各个客户端针对所述监测域名列表中的各个域名确定的域名解析结果。

A7.根据A6所述的方法,其中,所述根据所述访问日志和/或打点请求确定各个客户端针对所述监测域名列表中的各个域名确定的域名解析结果的步骤具体包括:对所述访问日志和/或打点请求中包含的数据内容进行消重处理,根据消重处理后的数据内容确定各个客户端针对所述监测域名列表中的各个域名确定的域名解析结果。

A8.根据A1-A7任一所述的方法,其中,所述监测域名列表具有版本信息,则所述方法进一步包括步骤:根据所述版本信息判断各个客户端的监测域名列表是否需要更新,当判断结果为是时,向对应的客户端发送更新后的监测域名列表。

A9.根据A1-A8任一所述的方法,其中,所述从获取到的多个域名解析结果中提取正确的域名解析结果的步骤具体包括:

针对每个域名解析结果,根据预设的安全DNS确定与该域名解析结果中包含的域名相对应的标准页面;根据该域名解析结果中包含的IP地址获取对应的网络页面,将所述网络页面与所述标准页面进行比较,根据比较结果确定该域名解析结果是否正确。

A10.根据A9所述的方法,其中,当确定域名解析结果正确时,进一步根据所述域名解析结果中包含的IP地址,和/或提供该IP地址的DNS服务器地址更新预设的白IP列表和/或白DNS列表;当确定所述域名解析结果不正确时,进一步根据所述域名解析结果中包含的IP地址,和/或提供该IP地址的DNS服务器地址更新预设的黑IP列表和/或黑DNS列表;

且所述方法进一步包括步骤:根据所述预设的白IP列表和/或白DNS列表以及所述预设的黑IP列表和/或黑DNS列表更新相应的DNS服务器中存储的域名解析文件。

本发明还公开了:B11.一种DNS更新装置,包括:

获取模块,适于向遍布多个地域的客户端分别发送监测域名列表,获取各个客户端针对所述监测域名列表中的各个域名确定的域名解析结果;

提取模块,适于从获取到的多个域名解析结果中提取正确的域名解析结果;其中,每个域名解析结果中包含域名及其对应的IP地址;

确定模块,适于分别针对每个域名,确定与该域名相对应的至少一个IP地址,根据访问所述至少一个IP地址的客户端的地域分布情况确定该域名在各个地域所对应的优选IP地址;

更新模块,适于根据各个域名在各个地域所对应的优选IP地址更新相应地域的DNS服务器中存储的域名解析文件。

B12.根据B11所述的装置,其中,每个域名解析结果中进一步包括:与该域名解析结果相对应的客户端的地域信息;

则所述确定模块根据各个域名解析结果中包含的与该域名解析结果相对应的客户端的地域信息确定访问所述至少一个IP地址的客户端的地域分布情况。

B13.根据B11或B12所述的装置,其中,所述确定模块具体用于:

确定与该域名相对应的多个IP地址,分别针对每个地域,将多个IP地址中在该地域内的访问量最大的IP地址作为该地域所对应的优选IP地址。

B14.根据B11-B13任一所述的装置,其中,客户端针对所述监测域名列表中的各个域名确定的域名解析结果根据与该客户端对应的域名解析服务器确定;和/或,根据该客户端本地存储的域名解析文件确定。

B15.根据B11-B14任一所述的装置,其中,所述更新模块进一步用于:

根据各个域名在各个地域所对应的优选IP地址向各个客户端发送用于更新客户端本地存储的域名解析文件的更新指令。

B16.根据B11-B15任一所述的装置,其中,所述获取模块具体用于:每隔预设的时间间隔获取各个客户端发送的访问日志和/或打点请求,根据所述访问日志和/或打点请求确定各个客户端针对所述监测域名列表中的各个域名确定的域名解析结果。

B17.根据B16所述的装置,其中,所述获取模块具体用于:对所述访问日志和/或打点请求中包含的数据内容进行消重处理,根据消重处理后的数据内容确定各个客户端针对所述监测域名列表中的各个域名确定的域名解析结果。

B18.根据B11-B17任一所述的装置,其中,所述监测域名列表具有版本信息,则获取模块进一步用于:根据所述版本信息判断各个客户端的监测域名列表是否需要更新,当判断结果为是时,向对应的客户端发送更新后的监测域名列表。

B19.根据B11-B18任一所述的装置,其中,所述提取模块具体用于:

针对每个域名解析结果,根据预设的安全DNS确定与该域名解析结果中包含的域名相对应的标准页面;根据该域名解析结果中包含的IP地址获取对应的网络页面,将所述网络页面与所述标准页面进行比较,根据比较结果确定该域名解析结果是否正确。

B20.根据B19所述的装置,其中,所述更新模块进一步用于:当确定域名解析结果正确时,进一步根据所述域名解析结果中包含的IP地址,和/或提供该IP地址的DNS服务器地址更新预设的白IP列表和/或白DNS列表;当确定所述域名解析结果不正确时,进一步根据所述域名解析结果中包含的IP地址,和/或提供该IP地址的DNS服务器地址更新预设的黑IP列表和/或黑DNS列表;并根据所述预设的白IP列表和/或白DNS列表以及所述预设的黑IP列表和/或黑DNS列表更新相应的DNS服务器中存储的域名解析文件。

本发明还公开了:C21.一种DNS更新系统,包括:如B11-B20任一所述的DNS更新装置,以及遍布多个地域的客户端及DNS服务器。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1