CN105681491B - 一种域名解析加速方法、系统和装置 - Google Patents
一种域名解析加速方法、系统和装置 Download PDFInfo
- Publication number
- CN105681491B CN105681491B CN201610216679.7A CN201610216679A CN105681491B CN 105681491 B CN105681491 B CN 105681491B CN 201610216679 A CN201610216679 A CN 201610216679A CN 105681491 B CN105681491 B CN 105681491B
- Authority
- CN
- China
- Prior art keywords
- domain name
- resolved
- dns
- analysis result
- mapping
- 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
Classifications
-
- 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]
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明提供了一种域名解析加速方法、系统和装置,域名解析加速装置连接于DNS解析器和一个或多个权威DNS服务器之间。域名解析加速方法包括接收由DNS解析器发出的解析待解析域名的第一请求,第一请求包括待解析域名的解析结果的记录类型;通过与待解析域名相关联的一个或多个权威DNS服务器进行待解析域名的递归解析,以获取整个递归解析过程中与待解析域名相关联的一个或多个权威DNS服务器响应的解析结果;收集所有的解析结果,并在所有解析结果中隐藏递归解析过程中出现的别名记录,选择与第一请求中待解析域名的解析结果的记录类型相同的解析结果响应至DNS解析器。本发明保证了域名的解析记录稳定有效,具有更精准的调度能力。
Description
技术领域
本发明涉及一种域名解析领域,特别是涉及一种存在非DNSSEC(Domain NameSystem Security Extensions,DNS安全扩展)记录的空主机头域名解析的域名解析加速加速方法、系统和装置。
背景技术
域名解析是把域名指向网站空间的IP(Internet Protocol)地址,让人们通过注册的域名可以方便地访问到网站的一种技术。但是,IP地址是一组用户标识网络上站点的数字,不便于记忆。因此,为了方便记忆,通常采用域名来代替IP地址来标识站点地址。域名解析就是域名到IP地址的转换过程,并且,域名的解析工作是由DNS(Domain Name System)服务器完成。当客户端需要访问网络时,在浏览器输入域名;该域名经过解析后,客户端便实现了对该IP地址所对应的服务器的访问。其中,主机名或者域名所对应的IP地址被称作A记录。
随着互联网技术的发展,为了优化域名解析过程引入了CDN技术。在CDN服务领域,需要对自己网络做访问加速的用户通常将网站的地址(例如:www.163.com)配置一个别名记录(例如:www.163.com.aaa.com)。别名记录(CNAME)中的域名属于CDN服务提供商,由CDN服务提供商为别名记录的域名指定A记录。这样一来,需要做访问加速的原始域名做域名解析的结果就由CDN服务提供商控制,从而达到了优化访问的效果。
CDN加速领域还衍生出对顶级域名解析的加速需求,即对形如163.com这样的空主机头域名的A记录解析。其中,顶级域名是一个和权威域名同名的域名(例如:163.com),或称为“空主机头”,且其配置的资源类型包括NS(Name Serve)记录、SOA(Start ofAuthority)记录、MX(Mail Exchanger)记录、TXT记录等。
客户端采用现有的CDN加速方式,得到一个域名的解析记录的DNS解析过程如图1所示,包括:
步骤001,客户端向本地DNS解析器请求要访问域名的A记录;假设域名为www.163.com;
步骤002,本地DNS解析器向域163.com的权威DNS服务器发出请求解析域名www.163.com的A记录;
步骤003,域名163.com的权威DNS服务器给本地DNS解析器返回www.163.com的别名记录www.163.com.aaa.com,该别名记录通常由客户www.163.com自行配置,别名记录由CDN服务提供商配置管理,授权域名为aaa.com;
步骤004,本地DNS解析器解析步骤003返回的响应,并向域名aaa.com的权威DNS服务器请求www.163.com.aaa.com的A记录;
步骤005,域名aaa.com的权威DNS服务器向本地DNS解析器返回www.163.com.aaa.com的别名记录163.xdwscache.bbb.com,该别名记录通常由CDN服务提供商配置管理,别名记录的授权域名为bbb.com;
步骤006,本地DNS解析器解析步骤005返回的响应,并向域名bbb.com的权威DNS服务器请求163.xdwscache.bbb.com的A记录;
步骤007,域名bbb.com的权威DNS服务器向本地DNS解析器响应域名163.xdwscache.bbb.com的A记录,即IP地址;
步骤008,本地DNS解析器解析007返回的响应,并对上网终端用户响应如下内容:www.163.com的别名记录www.163.com.aaa.com,www.163.com.aaa.com的别名记录163.xdwscache.bbb.com,163.xdwscache.bbb.com的A记录(即IP地址),bbb.com的权威记录(NS类型记录)以及附加段。
但是,依据国际互联网协会ISOC赞助发行的RFC1034文件的规定:已经注册了CNAME类型的域名记录不能再注册除DNSSEC相关类型记录(包括RRSIG记录、NSEC记录等)外的任何其他类型记录(包括MX记录、A记录、NS记录等等)。所有的DNS解析器对空机头域名解析时均需要遵守该规定,从而对于空主机头的域名出现CNAME类型配置时将影响其它类型的记录(如NS记录、MX记录、SOA记录等),势必会导致该空主机头域名解析失败。
为了解决空主机头域名的CDN加速不适宜直接使用配置别名记录的问题,目前主要通过以下三种方式来实现:
1.对空主机头域名直接配置A记录,其基于来访IP或客户子网(edns-client-subnet)来调度解析结果:由于调度解析的资源通常是放在CDN厂商,而域名的授权注册通常在域名注册厂商或第三方的DNS解析服务提供商,因此这种方法需要把CDN厂商的资源暴露给权威域名的管理员,或者权威域名的管理员把权威解析授权给CDN服务厂商,这种耦合了CDN调度和域名解析授权注册的方法增加了管理成本,设置上不灵活,或者引起权利纠纷。
2.一些第三方的DNS解析服务提供商提出了一种隐式CNAME类型(如:cloudXNS提出的名为LINK的资源类型):该类型不是DNS标准协议中所规定的类型,属于自定义的私有协议,不能在公开的DNS请求-响应过程中传递。在支持该私有协议的DNS系统中,DNS服务器直接给出域名解析的最终结果(即A记录)并隐藏了当前域名的别名记录,但是当解析器请求的类型没有在该DNS系统配置时,该DNS系统仍然会响应当前域名的CNAME配置,由于公共的DNS解析器遵循RFC1034的规定,缓存的别名类型记录将影响该域名的其他类型,导致其他类型的记录解析失效。另一方面,这种私有的隐式CNAME的机制要求别名记录在同一厂商的系统下解析,因此仍然存在方法1中所述CDN加速厂商和解析服务提供商的耦合问题。
3.对于http/https协议的加速场景,可以借助http协议的特性来实现规避别名记录和其他记录共存的问题:当HTTP服务器返回一个状态码为302的响应时,可以将HTTP请求重定向到新的资源地址,不依赖DNS的别名记录。然而CDN服务的需求并不仅限于http/https,目前衍生出大量对于非http/https协议的加速需求,如git://协议和ssh://协议,没有具备类似http302跳转的特性,因此该方法不能解决非http/https协议的CDN加速需求。
因此,在满足RFC1034文件规定的情况下,如何有效实现空主机头域名的解析加速问题是本领域技术人员所亟待解决的问题。
发明内容
鉴于以上所述现有技术的缺点,本发明的目的在于提供一种域名解析加速方法、系统和装置,用于解决现有技术中,如何实现对空主机头域名的解析加速,以及在解析空主机头域名出现别名记录类型配置时,易导致该空机头域名解析失败的问题。
为实现上述目的及其他相关目的,本发明提供一种域名解析加速方法,应用于连接在DNS解析器和一个或多个权威DNS服务器之间的域名解析加速装置,每个权威DNS服务器对应于解析预先指定的域名;所述域名解析加速方法包括:接收由所述DNS解析器发出的解析待解析域名的第一请求,所述第一请求包括所述待解析域名的解析结果的记录类型;通过与所述待解析域名相关联的一个或多个权威DNS服务器进行所述待解析域名的递归解析,以获取整个递归解析过程中与所述待解析域名相关联的一个或多个权威DNS服务器响应的解析结果;收集所有的所述解析结果,并在收集到的所有所述解析结果中,隐藏所述递归解析过程中出现的别名记录,选择与所述第一请求中所述待解析域名的解析结果的记录类型相同的解析结果响应至所述DNS解析器。
于本发明的一实施例中,所述第一请求中所述待解析域名的解析结果的记录类型包括A记录、TXT记录、AAAA记录、PTR记录和MX记录。
于本发明的一实施例中,在整个所述递归解析过程中,向与所述待解析域名相关联的一个或多个权威DNS服务器发出的每一个解析请求中均包括携带了所述DNS解析器的IP地址或所述DNS解析器的子网地址的edns-client-subnet信息。
于本发明的一实施例中,所述递归解析过程中的与所述待解析域名相关联的一个或多个权威DNS服务器是根据所述DNS解析器的IP地址或所述DNS解析器的子网地址而选择的。
于本发明的一实施例中,所述域名解析加速方法还包括:若接收到的所有解析结果的记录类型均与所述域名的解析结果的记录类型不同,则将所述递归解析过程中所述待解析域名的SOA记录响应至所述DNS解析器。
于本发明的一实施例中,所述域名解析加速还包括:所述DNS解析器将接收到的与所述待解析域名的解析结果的记录类型相同的解析结果和/或所述SOA记录返回至客户端。
本发明还公开了一种域名解析加速系统,应用于连接在DNS解析器和一个或多个权威DNS服务器之间的域名解析加速装置,每个权威DNS服务器对应于解析预先指定的域名,所述域名解析加速系统包括:接收模块,用于接收所述DNS解析器发出的解析待解析域名的第一请求,所述第一请求包括所述待解析域名的解析结果的记录类型;域名解析模块,用于通过与所述待解析域名相关联的一个或多个权威DNS服务器对所述待解析域名进行递归解析,以获取整个递归解析过程中与所述待解析域名相关联的一个或多个权威DNS服务器响应的解析结果;收集模块,用于收集所述待解析域名的递归解析过程中一个或多个权威DNS服务器响应的所有解析结果;选择输出模块,用于在收集到的所有所述解析结果中,隐藏所述递归解析过程中出现的别名记录,选择与所述第一请求中所述待解析域名的解析结果的记录类型相同的解析结果,并响应至所述DNS解析器。
于本发明的一实施例中,所述域名解析模块在整个所述递归解析过程中,向与所述待解析域名相关联的一个或多个权威DNS服务器发出的每一个解析请求中均包括携带了所述DNS解析器的IP地址或所述DNS解析器的子网地址的edns-client-subnet信息。
于本发明的一实施例中,所述递归解析过程中的与所述待解析域名相关联的一个或多个权威DNS服务器是根据所述DNS解析器的IP地址或所述DNS解析器的子网地址而选择的。
本发明还公开了一种域名解析加速装置,所述域名解析加速连接在DNS解析器和一个或多个权威DNS服务器之间,其中,每个权威DNS服务器对应于解析预先指定的域名,所述域名解析加速装置包括如上所述的域名解析加速系统。
如上所述,本发明的一种域名解析加速方法、系统和装置,是一种智能的DNS解析服务器,并提供了隐藏别名记录的配置接口,以控制域名在反馈时是否需要隐藏别名记录。本发明具备以下有益效果:
1)本发明具备DNS转发的功能,能够处理解析其他权威DNS服务器反馈的别名类型记录并递归查找最终的解析结果,也能直接缓存其他权威DNS服务器反馈的记录作为最终解析结果。在反馈行为上完全隐藏了别名类型记录的反馈,避免别名记录出现在DNS解析器的缓存中,规避了RFC1034文件中的别名记录和其他类型记录不能共存的问题,保证了域名的各类解析记录稳定有效;
2)本发明允许需要享有加速服务的待解析域名使用传统的别名记录类型配置接入方式配置在任意的DNS解析提供商中,由于本发明采用DNS协议规范中的edns-client-subnet扩展机制来联合不同DNS授权系统,因此可以无障碍地联合不同的权威DNS服务器系统。
3)本发明采用DNS协议规范中的edns-client-subnet扩展机制来联合不同的DNS授权系统,因此对于支持edns-client-subnet协议的CDN厂商来说,能够在得到DNS请求时获取实际用户的IP地址子网,根据实际用户的子网地址调度解析结果。相较于不具备edns-client-subnet协议扩展支持的权威DNS服务器,具有更精准的调度能力。
4)本发明代替DNS解析器做递归解析操作,并在对DNS解析器响应时隐藏了别名记录,减少了DNS解析器从权威DNS服务器递归解析的时间,改善了DNS解析效果,且在本发明的应用场景上减少了一层对外服务的机器,将更多的机器放在前端,加强了防攻击能力。
附图说明
图1显示为传统的CDN加速进行域名解析的流程示意图。
图2显示为本发明实施例公开的一种域名解析加速方法的流程示意图。
图3显示为本发明实施例公开的一种采用域名解析加速方法进行域名解析且解析成功的流程示意图。
图4显示为本发明实施例公开的一种采用域名解析加速方法进行域名解析且解析失败的流程示意图。
图5显示为本发明实施例公开的一种域名解析加速系统的结构示意图。
元件标号说明
S10~S30 步骤
001~008 步骤
009~018 步骤
019~028 步骤
100 DNS解析器
200 权威DNS服务器
300 客户端
400 域名解析加速装置
500 域名解析加速系统
510 接收模块
520 域名解析模块
530 收集模块
540 选择输出模块
具体实施方式
以下通过特定的具体实例说明本发明的实施方式,本领域技术人员可由本说明书所揭露的内容轻易地了解本发明的其他优点与功效。本发明还可以通过另外不同的具体实施方式加以实施或应用,本说明书中的各项细节也可以基于不同观点与应用,在没有背离本发明的精神下进行各种修饰或改变。需说明的是,在不冲突的情况下,以下实施例及实施例中的特征可以相互组合。
请参阅附图。需要说明的是,以下实施例中所提供的图示仅以示意方式说明本发明的基本构想,遂图式中仅显示与本发明中有关的组件而非按照实际实施时的组件数目、形状及尺寸绘制,其实际实施时各组件的型态、数量及比例可为一种随意的改变,且其组件布局型态也可能更为复杂。
本发明的一种域名解析加速方法、系统和装置是为了解决空主机头域名在存在非DNSSEC记录等其他记录时的域名解析加速的问题。
本发明允许待解析域名进行解析加速时,仍然使用传统的别名类型记录配置方式接入服务,不需要改变接入方式,但解析待解析域名是直接解析出域名对应的IP地址。和直接在待解析域名解析注册商配置A记录的方法相比,CDN资源通常包括大量的主机用于缓存待解析域名网站的内容,因而直接配置A记录,需要暴露所有的CDN资源给域名解析注册商才能满足多线路的加速访问效果,对于不具备智能调度的注册解析系统来说,管理成本是不可估量的。而保持原有的传统接入方式,则可以不增加任何管理成本,仅需要在解析注册处设置域名的别名记录,对使用本发明的域名解析加速服务的客户来讲最为方便。
并且,本发明在公网DNS体系中的角色是权威DNS服务器,但在反馈行为上完全隐藏了别名记录类型的反馈,避免别名记录类型出现在DNS解析器的缓存中,规避了RFC 1034文件中的别名记录和其他记录类型不能共存的问题。对于现有的一些技术方案中,当DNS解析器向权威DNS请求域名的某种类型时,若该域名做了隐式CNAME的别名,但别名后的域名没有所请求的记录类型,则仍然会对DNS解析器返回别名记录类型,从而使DNS解析器对于该域名的其他类型记录失效。而完全隐藏别名类型记录的反馈行为则避免了这样的解析问题,当DNS解析器向本发明的域名解析加速装置请求域名的某种记录类型时,本发明的域名解析加速装置将返回该域名的最终解析类型或者返回空结果,不会造成DNS解析器的缓存中出现别名记录和其他类型共存冲突的问题。
本发明使用了DNS协议规范中的edns-client-subnet扩展机制来联合不同DNS授权系统。其中,edns-client-subnet是一种由google提交的一种DNS扩展协议,允许DNS解析器传递用户的IP地址给权威DNS服务器。如果CDN服务提供商的DNS支持该协议,就可以获取用户真实的IP地址,从而对域名解析的结果进行准确的调度。不支持该协议的DNS,则通常只能根据来访的IP地址而非用户的真实IP地址来调度解析的结果。因此待解析域名可使用传统的别名记录方式接入解析加速服务时,不需要把待解析域名的解析权和别名记录后的域名解析权集中在同一系统中,可以解耦加速解析调度和DNS解析服务提供商的域名管理。由于edns-client-subnet是早已公开的协议,因此使用该机制联合不同的DNS授权配置系统障碍很小,而使用私有协议的现有技术则只能要求CDN加速解析调度和DNS解析服务都在同一DNS系统中,有更高的管理成本。
进一步地,本发明是在域名解析的阶段做了别名记录的隐藏,因此可以使用域名解析加速服务的域名不仅限于http/https协议,而是任何协议都可以支持。而现有技术中借助HTTP协议特性才能做到重定向达到类似别名的效果,适用范围仅限于HTTP协议的内容。
实施例1
本实施例公开了一种域名解析加速方法,应用于连接在DNS解析器和一个或多个权威DNS服务器之间的域名解析加速装置,且每个权威DNS服务器对应于解析预先指定的域名。其中,域名解析加速装置是由与待解析域名相关联的一个或多个权威DNS服务器所指定授权的服务器。
如图2所示,本实施例的域名解析加速方法包括:
步骤S10,接收由所述DNS解析器发出的解析待解析域名的第一请求,所述第一请求包括所述待解析域名的解析结果的记录类型;
其中,所述第一请求是由客户端发出,再由DNS解析器转发的。
并且,本实施例的域名解析加速方法中,待解析域名的解析结果的记录类型包括但不限于:A记录、TXT记录、AAAA记录、PTR记录和MX记录。其中,A记录是用来指定主机名(或域名)对应的IP地址记录,该IP地址指的是Ipv4地址。TXT记录是用来保存域名的附加文本信息。AAAA记录是用来将域名解析到IPv6地址的DNS记录。PTR记录是IP地址到DNS名称的映射,用于反向解析。MX记录指向一个邮件服务器,用于电子邮件系统发邮件时根据收信人的地址后缀来定位邮件服务器。
步骤S20,通过与待解析域名相关联的一个或多个权威DNS服务器进行所述待解析域名的递归解析,以获取整个递归解析过程中与所述待解析域名相关联的一个或多个权威DNS服务器响应的解析结果;
本实施例的域名解析加速装置对于待解析域名的递归解析过程与传统的DNS解析器对待解析域名的递归解析过程基本相同。如图3和图4所示,在整个的递归解析过程中,域名解析加速装置先向待解析域名对应的权威DNS服务器发出解析请求,并接收该权威DNS服务器响应的解析结果,即别名记录;再向别名记录的权威域名对应的权威DNS服务器发出解析请求,并接受该权威DNS服务器响应的解析结果;再继续向别名记录的权威域名对应的权威DNS服务器发出解析请求,并接受该权威DNS服务器响应的解析结果;以此类推,直至获得最终的解析结果。在本实施例中,与待解析域名相关联的权威DNS服务器包括:待解析域名对应的权威DNS服务器和递归解析过程中权威DNS服务器解析的别名记录的权威域名对应的权威DNS服务器。
但是,本实施例的域名解析加速装置在递归解析过程中,向与待解析域名相关联的一个或多个权威DNS服务器发出的解析请求中,增加了携带DNS解析器的IP地址或DNS解析器的子网地址的edns-client-subnet信息。请求中增加了edns-client-subnet信息,既可以无障碍地联合不同的权威DNS服务系统,还可以根据携带的DNS解析器的IP地址或DNS解析器的子网地址选择与待解析的域名相关联的权威DNS服务器。
步骤S30,收集所有的所述解析结果,并在收集到的所有所述解析结果中隐藏所述递归解析过程中的别名记录,选择与所述第一请求中所述待解析域名的解析结果的记录类型相同的解析结果来响应至所述DNS解析器。
整个递归解析过程中,域名解析加速装置会从与待解析域名相关联的一个或多个权威DNS服务器接收到每一次域名(待解析域名、别名记录的权威域名)解析的解析结果。收集所有的解析结果,隐藏递归解析过程中的别名记录,选出与第一请求中的待解析域名的解析结果的记录类型相同的解析结果,最后将选择出的解析结果响应至DNS解析器。优选地,还将将整个递归解析过程中与待解析域名相关联的一个或多个权威DNS服务器的DNS记录响应至DNS解析器。
若收集到的所有解析结果的记录类型均与第一请求中的待解析域名的解析结果的记录类型不同,那么,则将整个递归解析过程中与待解析域名相关联的一个或多个权威DNS服务器的SOA记录响应至DNS解析器。
进一步地,再由DNS解析器将从域名解析加速装置接收到的与第一请求中的待解析域名的解析结果的记录类型相同的解析结果和/或与待解析域名相关联的一个或多个权威DNS服务器的SOA记录返回至客户端。
为了更进一步地说明本实施例的域名解析加速方法,本实施例还列举了一个对域名wcdn.cn4e.com的解析过程,其中,解析成功的整个过程如图3所示,解析失败的过程如图4所示。
如图3所示,域名解析加速装置400连接在本地DNS解析器100和多个权威DNS服务器200之间,且DNS解析器100与客户端300连接。客户端300向本地DNS解析器100请求要求访问域名的A记录,假设待解析域名为wcdn.cn4e.com。那么,DNS解析过程包括:
步骤009,客户端300向本地DNS解析器100请求要访问待解析域名的A记录,其中,待解析域名为wcdn.cn4e.com;
步骤010,本地DNS解析器100向域名解析加速装置400发出解析待解析域名wcdn.cn4e.com的第一请求,第一请求中包括待解析域名的解析结果为A记录;其中,域名解析加速装置400已经在父域cn4e.com的权威DNS服务器中被指定授权为权威DNS服务器地址;
步骤011,域名解析加速装置400向待解析域名wcdn.cn4e.com的权威DNS服务器发起解析wcdn.cn4e.com的A记录的解析请求,其中,解析请求中携带了本地DNS解析器100的IP或本地DNS解析器100中的子网地址作为DNS请求中的edns-client-subnet信息;
步骤012,wcdn.cn4e.com的权威DNS服务器对域名解析加速装置400进行响应,返回wcdn.cn4e.com的别名记录wcdn.cn4e.com.ccc.com.,别名记录的域名的权威域为ccc.com;
步骤013,域名解析加速装置400解析wcdn.cn4e.com的权威DNS服务器对域名解析加速装置400的响应,然后向域名ccc.com的权威DNS服务器请求wcdn.cn4e.com.ccc.com.的A记录;
步骤014,域名ccc.com的权威DNS服务器对域名解析加速装置400响应,返回wcdn.cn4e.com.ccc.com.的别名记录1st.appat108.bbb.com.,别名记录的域名的权威域为bbb.com;
步骤015,域名解析加速装置400解析域名ccc.com的权威DNS服务器对域名解析加速装置400的响应,然后向域bbb.com的权威DNS服务器请求1st.appat108.bbb.com.的A记录;
步骤016,域名bbb.com的权威DNS服务器对域名解析加速装置400响应,返回1st.appat108.bbb.com.的A记录,即IP地址;
步骤017,域名解析加速装置400解析域名bbb.com的权威DNS服务器对域名解析加速装置400的响应,然后将步骤012、步骤014和步骤016的响应重新组装,对本地DNS解析器100响应如下内容:
将步骤016的响应中的A记录作为待解析域名wcdn.cn4e.com的A记录,隐藏且不返回012、014中出现的别名记录;
步骤018,本地DNS解析器100得到步骤017的响应,返回给客户端300,响应内容为wcdn.cn4e.com的A记录以及wcdn.cn4e.com的权威记录(NS类型记录)以及附加记录。
其中,与待解析域名wcdn.cn4e.com相关联的权威DNS服务器包括:域名wcdn.cn4e.com的权威DNS服务器、域名ccc.com的权威DNS服务器、域名bbb.com的权威DNS服务器。
图4表示的是客户端300请求解析一个待解析域名,但最终收集的解析结果中没有满足待解析域名的解析结果的记录类型的情况,即解析失败。以客户端300向本地DNS解析器100请求要求访问域名的TXT记录为例,同样假设待解析域名为wcdn.cn4e.com。那么,DNS解析过程包括:
步骤019,客户端300向本地DNS解析器100请求要访问待解析域名的A记录,其中,待解析域名为wcdn.cn4e.com;
步骤020,本地DNS解析器100向域名解析加速装置400发出解析待解析域名wcdn.cn4e.com的第一请求,第一请求中包括待解析域名的解析结果为TXT记录;其中,域名解析加速装置400已经在父域cn4e.com的权威DNS服务器中被指定授权为权威DNS服务器地址;
步骤021,域名解析加速装置400向待解析域名wcdn.cn4e.com的权威DNS服务器发起解析wcdn.cn4e.com的TXT记录的解析请求,其中,解析请求中携带了本地DNS解析器100的IP或本地DNS解析器中的子网地址作为DNS请求中的edns-client-subnet信息;
步骤022,与步骤012相同,wcdn.cn4e.com的权威DNS服务器对域名解析加速装置400进行响应,返回wcdn.cn4e.com的别名记录wcdn.cn4e.com.ccc.com.,别名记录的域名的权威域为ccc.com;
步骤023,域名解析加速装置400解析wcdn.cn4e.com的权威DNS服务器对域名解析加速装置400的响应,然后向域名ccc.com的权威DNS服务器请求wcdn.cn4e.com.ccc.com.的TXT记录;
步骤024,与步骤014相同,域名ccc.com的权威DNS服务器对域名解析加速装置400响应,返回wcdn.cn4e.com.ccc.com.的别名记录1st.appat108.bbb.com.,别名记录的域名的权威域为bbb.com;
步骤025,域名解析加速装置400解析域名ccc.com的权威DNS服务器对域名解析加速装置400的响应,然后向域bbb.com的权威DNS服务器请求1st.appat108.bbb.com.的TXT记录;
步骤026,域名bbb.com的权威DNS服务器对域名解析加速装置400响应,由于没有1st.appat108.bbb.com.的TXT记录,因此返回中没有TXT类型的结果,只有bbb.com的权威记录;
步骤027,域名解析加速装置400解析域名bbb.com的权威DNS服务器对域名解析加速装置400的响应,然后将步骤022、步骤024和步骤026的响应重新组装,对本地DNS解析器100的响应中隐藏且不返回步骤022和步骤024中出现的别名记录,仅返回包含待请求域名wcdn.cn4e.com的权威记录(SOA类型);
步骤028,本地DNS解析器100得到步骤027响应,并返回给客户端300。
并且,由于从步骤019到步骤028中,本地DNS解析器100均没有得到wcdn.cn4e.com的别名记录,因此本地DNS解析器100仍然保持wcdn.cn4e.com的其他记录类型有效。
上面方法的步骤划分,只是为了描述清楚,实现时可以合并为一个步骤或者对某些步骤进行拆分,分解为多个步骤,只要包含相同的逻辑关系,都在本专利的保护范围内;对算法中或者流程中添加无关紧要的修改或者引入无关紧要的设计,但不改变其算法和流程的核心设计都在该专利的保护范围内。
实施例2
本实施例还公开了一种域名解析加速系统,应用于连接在DNS解析器和一个或多个权威DNS服务器之间的域名解析加速装置,每个权威DNS服务器对应于解析预先指定的域名。
如图5所示,本实施例的域名解析加速系统500包括:
接收模块510,用于接收DNS解析器100发出的解析待解析域名的第一请求,所述第一请求包括所述待解析域名的解析结果的记录类型;其中,第一请求中待解析域名的解析结果的记录类型包括A记录、TXT记录、AAAA记录、PTR记录和MX记录。
域名解析模块520,用于通过与待解析域名相关联的一个或多个权威DNS服务器200对待解析域名进行递归解析,以获取整个递归解析过程中与待解析域名相关联的一个或多个权威DNS服务器响应的解析结果。其中,域名的递归解析过程与传统的域名递归解析过程相同,在此不再赘述。但是值得注意的是,递归过程中,向与待解析域名相关联的一个或多个权威DNS服务器200发出的每一个解析请求中,均包括携带了DNS解析器100的IP地址或DNS解析器100的子网地址的edns-client-subnet信息。
收集模块530,用于收集待解析域名的递归解析过程中一个或多个权威DNS服务器200响应的所有解析结果。
选择输出模块540,用于在收集到的所有所述解析结果中,隐藏所述递归解析过程中出现的别名记录,选择与第一请求中所述待解析域名的解析结果的记录类型相同的解析结果,并响应至DNS解析器100。
进一步地,如果收集模块530收集的所有解析结果中没有与第一请求中待解析域名的解析记录相同的解析结果,那么,选择输出模块540则将递归解析过程中待解析域名的SOA记录响应至DNS解析器100。
此外,为了突出本发明的创新部分,本实施例中并没有将与解决本发明所提出的技术问题关系不太密切的模块引入,但这并不表明本实施例中不存在其它的模块。
并且不难发现,本实施例为与第一实施例相对应的系统实施例,本实施例可与第一实施例互相配合实施。第一实施例中提到的相关技术细节在本实施例中依然有效,为了减少重复,这里不再赘述。相应地,本实施例中提到的相关技术细节也可应用在第一实施例中。
实施例3
本实施例公开了一种域名解析加速装置,其采用实施例2所公开的域名解析加速系统,此处不再赘述。
综上所述,本发明的一种域名解析加速方法、系统和装置,是一种智能的DNS解析服务器,并提供了隐藏别名类型的配置接口控制域名在反馈时是否需要隐藏别名类型。本发明避免了别名记录出现在DNS解析器的缓存中,规避了RFC1034文件中别名记录和其他类型记录不能共存的问题,保证了域名的各类解析记录稳定有效;且本发明可以无障碍地联合不同的权威DNS服务器系统;本发明还采用了DNS协议规范中的edns-client-subnet扩展机制,具有更精准的调度能力。所以,本发明有效克服了现有技术中的种种缺点而具高度产业利用价值。
上述实施例仅例示性说明本发明的原理及其功效,而非用于限制本发明。任何熟悉此技术的人士皆可在不违背本发明的精神及范畴下,对上述实施例进行修饰或改变。因此,举凡所属技术领域中具有通常知识者在未脱离本发明所揭示的精神与技术思想下所完成的一切等效修饰或改变,仍应由本发明的权利要求所涵盖。
Claims (10)
1.一种域名解析加速方法,其特征在于,应用于连接在DNS解析器和一个或多个权威DNS服务器之间的域名解析加速装置,每个权威DNS服务器对应于解析预先指定的域名;所述域名解析加速方法包括:
接收由所述DNS解析器发出的解析待解析域名的第一请求,所述第一请求包括所述待解析域名的解析结果的记录类型;
通过与所述待解析域名相关联的一个或多个权威DNS服务器进行所述待解析域名的递归解析,以获取整个递归解析过程中与所述待解析域名相关联的一个或多个权威DNS服务器响应的解析结果;
收集所有的所述解析结果,并在收集到的所有所述解析结果中,隐藏所述递归解析过程中出现的别名记录,选择与所述第一请求中所述待解析域名的解析结果的记录类型相同的解析结果响应至所述DNS解析器。
2.根据权利要求1所述的域名解析加速方法,其特征在于:所述第一请求中所述待解析域名的解析结果的记录类型包括A记录、TXT记录、AAAA记录、PTR记录和MX记录。
3.根据权利要求1所述的域名解析加速方法,其特征在于:在整个所述递归解析过程中,向与所述待解析域名相关联的一个或多个权威DNS服务器发出的每一个解析请求中均包括携带了所述DNS解析器的IP地址或所述DNS解析器的子网地址的edns-client-subnet信息。
4.根据权利要求1所述的域名解析加速方法,其特征在于:所述递归解析过程中的与所述待解析域名相关联的一个或多个权威DNS服务器是根据所述DNS解析器的IP地址或所述DNS解析器的子网地址而选择的。
5.根据权利要求1所述的域名解析加速方法,其特征在于:所述域名解析加速方法还包括:若接收到的所有解析结果的记录类型均与所述域名的解析结果的记录类型不同,则将所述递归解析过程中所述待解析域名的SOA记录响应至所述DNS解析器。
6.根据权利要求5所述的域名解析加速方法,其特征在于:所述域名解析加速方法还包括:所述DNS解析器将接收到的与所述待解析域名的解析结果的记录类型相同的解析结果和/或所述SOA记录返回至客户端。
7.一种域名解析加速系统,其特征在于:应用于连接在DNS解析器和一个或多个权威DNS服务器之间的域名解析加速装置,每个权威DNS服务器对应于解析预先指定的域名,所述域名解析加速系统包括:
接收模块,用于接收所述DNS解析器发出的解析待解析域名的第一请求,所述第一请求包括所述待解析域名的解析结果的记录类型;
域名解析模块,用于通过与所述待解析域名相关联的一个或多个权威DNS服务器对所述待解析域名进行递归解析,以获取整个递归解析过程中与所述待解析域名相关联的一个或多个权威DNS服务器响应的解析结果;
收集模块,用于收集所述待解析域名的递归解析过程中一个或多个权威DNS服务器响应的所有解析结果;
选择输出模块,用于在收集到的所有所述解析结果中,隐藏所述递归解析过程中出现的别名记录,选择与所述第一请求中所述待解析域名的解析结果的记录类型相同的解析结果,并响应至所述DNS解析器。
8.根据权利要求7所述的域名解析加速系统,其特征在于:所述域名解析模块在整个所述递归解析过程中,向与所述待解析域名相关联的一个或多个权威DNS服务器发出的每一个解析请求中均包括携带了所述DNS解析器的IP地址或所述DNS解析器的子网地址的edns-client-subnet信息。
9.根据权利要求8所述的域名解析加速系统,其特征在于:所述递归解析过程中的与所述待解析域名相关联的一个或多个权威DNS服务器是根据所述DNS解析器的IP地址或所述DNS解析器的子网地址而选择的。
10.一种域名解析加速装置,其特征在于:所述域名解析加速装置连接在DNS解析器和一个或多个权威DNS服务器之间,其中,每个权威DNS服务器对应于解析预先指定的域名,所述域名解析加速装置包括如权利要求7-9中任意一项所述的域名解析加速系统。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610216679.7A CN105681491B (zh) | 2016-04-08 | 2016-04-08 | 一种域名解析加速方法、系统和装置 |
PCT/CN2016/095940 WO2017173766A1 (zh) | 2016-04-08 | 2016-08-19 | 一种域名解析加速方法、系统和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610216679.7A CN105681491B (zh) | 2016-04-08 | 2016-04-08 | 一种域名解析加速方法、系统和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105681491A CN105681491A (zh) | 2016-06-15 |
CN105681491B true CN105681491B (zh) | 2018-09-14 |
Family
ID=56310174
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610216679.7A Active CN105681491B (zh) | 2016-04-08 | 2016-04-08 | 一种域名解析加速方法、系统和装置 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN105681491B (zh) |
WO (1) | WO2017173766A1 (zh) |
Families Citing this family (27)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105681491B (zh) * | 2016-04-08 | 2018-09-14 | 网宿科技股份有限公司 | 一种域名解析加速方法、系统和装置 |
CN106453675B (zh) * | 2016-09-19 | 2022-07-08 | 网宿科技股份有限公司 | 302跳转方法、url生成方法及系统、域名解析方法及系统 |
CN106453692B (zh) * | 2016-11-28 | 2019-10-25 | 腾讯科技(深圳)有限公司 | 一种域名解析方法、装置和系统 |
CN106817437B (zh) * | 2017-01-11 | 2022-05-06 | 腾讯科技(深圳)有限公司 | 地址记录的查询方法和装置 |
CN108574744A (zh) * | 2017-07-28 | 2018-09-25 | 北京金山云网络技术有限公司 | 一种域名解析方法、装置、电子设备及可读存储介质 |
CN107888717B (zh) * | 2017-12-26 | 2021-04-20 | 北京搜狐新媒体信息技术有限公司 | 一种域名确定方法、装置及电子设备 |
CN109995885B (zh) * | 2017-12-30 | 2022-06-03 | 中国移动通信集团辽宁有限公司 | 域名空间结构呈现方法、装置、设备及介质 |
CN108900648B (zh) * | 2018-06-13 | 2020-11-06 | 网宿科技股份有限公司 | 一种控制多cname流量比例的方法和装置 |
CN108989487A (zh) * | 2018-09-06 | 2018-12-11 | 北京泰策科技有限公司 | 基于本地dns的cdn优化调度方法 |
CN109547583B (zh) * | 2018-11-22 | 2022-02-25 | 中国移动通信集团江苏有限公司 | 域名资源查询方法、装置、设备及计算机存储介质 |
CN111447291B (zh) * | 2018-12-29 | 2024-04-05 | 三六零科技集团有限公司 | 基于dns的调度方法、系统及电子设备 |
CN109936632B (zh) * | 2019-03-07 | 2021-12-21 | 杭州又拍云科技有限公司 | 一种应用于dns权威服务器的cname加速方法 |
CN112769967B (zh) * | 2019-10-21 | 2023-06-27 | 阿里巴巴集团控股有限公司 | 域名解析处理方法、装置及电子设备 |
CN111010462A (zh) * | 2019-12-30 | 2020-04-14 | 互联网域名系统北京市工程研究中心有限公司 | 基于TRANS记录的IPv6域名解析方法 |
CN111277461B (zh) * | 2020-01-19 | 2021-12-24 | 杭州安恒信息技术股份有限公司 | 一种内容分发网络节点的识别方法、系统及设备 |
CN111416885B (zh) * | 2020-03-20 | 2021-04-06 | 福建万物易联网络科技有限公司 | 一种固定长度域名的外链改写分布式系统 |
CN114513487A (zh) * | 2020-10-28 | 2022-05-17 | 武汉斗鱼网络科技有限公司 | 一种加速域名解析的方法、装置、电子设备及计算机可读存储介质 |
CN112600952B (zh) * | 2020-12-10 | 2022-09-27 | 四川迅游网络科技股份有限公司 | 一种移动端网络加速分流方法和系统 |
CN112671866B (zh) * | 2020-12-15 | 2022-11-25 | 牙木科技股份有限公司 | Dns分流解析方法、dns服务器及计算机可读存储介质 |
CN112769769B (zh) * | 2020-12-24 | 2022-11-11 | 网根(南京)网络中心有限公司 | Dns别名解析方法及系统 |
CN112751948B (zh) * | 2020-12-28 | 2022-11-01 | 互联网域名系统北京市工程研究中心有限公司 | 基于协同过滤的dns缓存推荐方法 |
CN115150358B (zh) * | 2021-03-31 | 2024-02-13 | 贵州白山云科技股份有限公司 | 域名获取的方法、电子装置以及系统 |
CN113556411B (zh) * | 2021-06-28 | 2023-05-26 | 深圳市高德信通信股份有限公司 | 一种cdn视频调度设备及方法 |
CN113873054A (zh) * | 2021-09-13 | 2021-12-31 | 支付宝(杭州)信息技术有限公司 | 基于DNS的IPv6引流方法、装置以及设备 |
CN114448849B (zh) * | 2021-12-17 | 2023-12-05 | 北京邮电大学 | 网站IPv6网络支持模式检测方法及电子设备 |
CN114500460B (zh) * | 2021-12-27 | 2024-04-26 | 天翼云科技有限公司 | 一种cdn网络及其节点回上层请求的自动调度方法 |
CN115174518B (zh) * | 2022-06-15 | 2023-11-21 | 哈尔滨工业大学 | 一种基于rpz的递归侧域名保全方法及系统 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101841520A (zh) * | 2010-01-22 | 2010-09-22 | 中国科学院计算机网络信息中心 | 域名系统以及域名系统的信息处理方法、装置 |
CN103701955A (zh) * | 2014-01-03 | 2014-04-02 | 互联网域名系统北京市工程研究中心有限公司 | 域名查询请求的方法及其系统 |
CN104954507A (zh) * | 2015-06-23 | 2015-09-30 | 中国互联网络信息中心 | 数据优选的域名解析方法及系统 |
CN105162900A (zh) * | 2015-09-25 | 2015-12-16 | 中国互联网络信息中心 | 一种多节点协作的域名解析和缓存方法及系统 |
CN105376344A (zh) * | 2015-11-26 | 2016-03-02 | 中国互联网络信息中心 | 一种与源地址相关的递归域名服务器的解析方法及系统 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101640684A (zh) * | 2009-08-21 | 2010-02-03 | 中国电信股份有限公司 | 内容分发方法、网络系统、gslb设备和域名服务器 |
US10530738B2 (en) * | 2014-08-07 | 2020-01-07 | Citrix Systems, Inc. | DNS resolution replay for bare domain names that map to “A” records |
CN104243627A (zh) * | 2014-08-29 | 2014-12-24 | 华为技术有限公司 | 一种域名解析方法、装置及系统 |
CN105681491B (zh) * | 2016-04-08 | 2018-09-14 | 网宿科技股份有限公司 | 一种域名解析加速方法、系统和装置 |
-
2016
- 2016-04-08 CN CN201610216679.7A patent/CN105681491B/zh active Active
- 2016-08-19 WO PCT/CN2016/095940 patent/WO2017173766A1/zh active Application Filing
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101841520A (zh) * | 2010-01-22 | 2010-09-22 | 中国科学院计算机网络信息中心 | 域名系统以及域名系统的信息处理方法、装置 |
CN103701955A (zh) * | 2014-01-03 | 2014-04-02 | 互联网域名系统北京市工程研究中心有限公司 | 域名查询请求的方法及其系统 |
CN104954507A (zh) * | 2015-06-23 | 2015-09-30 | 中国互联网络信息中心 | 数据优选的域名解析方法及系统 |
CN105162900A (zh) * | 2015-09-25 | 2015-12-16 | 中国互联网络信息中心 | 一种多节点协作的域名解析和缓存方法及系统 |
CN105376344A (zh) * | 2015-11-26 | 2016-03-02 | 中国互联网络信息中心 | 一种与源地址相关的递归域名服务器的解析方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN105681491A (zh) | 2016-06-15 |
WO2017173766A1 (zh) | 2017-10-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105681491B (zh) | 一种域名解析加速方法、系统和装置 | |
US7924832B2 (en) | Facilitating transition of network operations from IP version 4 to IP version 6 | |
US20070124487A1 (en) | DNS server | |
CN108353095A (zh) | 域名解析方法、客户端、边缘节点及域名解析系统 | |
CN106797410A (zh) | 域名解析方法和装置 | |
US20030217136A1 (en) | Apparatus and method for managing and controlling UPnP devices in home network over external internet network | |
US20100064047A1 (en) | Internet lookup engine | |
EP2556438A1 (en) | Reverse dns lookup with modified reverse mappings | |
KR20010086381A (ko) | 도메인 네임 시스템 트래픽을 투과적으로 처리하기 위한방법 및 장치 | |
CN102546854A (zh) | 一种域名和服务器建立http连接的域名解析方法 | |
JP2011077804A (ja) | 通信装置およびその通信方法 | |
CN107846483A (zh) | 一种域名解析方法、系统和服务器 | |
RU2008115139A (ru) | Оборудование, система и способ связи между клиентом и серверной стороной | |
CN101582925A (zh) | 一种网络地址转换的方法及系统 | |
CN108040134A (zh) | 一种dns透明代理的方法及装置 | |
EP1602034A2 (en) | Communications interchange system | |
US20030009588A1 (en) | Resource request forwarding in havi and other internetworking devices | |
CN103581361A (zh) | 一种域名解析代理方法、设备及系统 | |
CN104219257B (zh) | 一种网页实时通信方法、系统及服务器和客户端 | |
CN114666245A (zh) | B/S系统的IPv6单栈支持度确定方法及相关设备 | |
WO2013120315A1 (zh) | 域名信息的处理方法、无线路由器和客户端 | |
CN106713528B (zh) | 一种家庭网关及IPv6主机访问网络服务器的方法 | |
CN115150312B (zh) | 一种路由方法及设备 | |
CN104378301B (zh) | 一种数据处理方法及数据处理设备 | |
JP5573835B2 (ja) | Dns名解決システム、オーバーライドエージェント、dns名解決方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |