CN104539751B - Dns解析系统、方法及装置 - Google Patents
Dns解析系统、方法及装置 Download PDFInfo
- Publication number
- CN104539751B CN104539751B CN201410848924.7A CN201410848924A CN104539751B CN 104539751 B CN104539751 B CN 104539751B CN 201410848924 A CN201410848924 A CN 201410848924A CN 104539751 B CN104539751 B CN 104539751B
- Authority
- CN
- China
- Prior art keywords
- domain name
- dns server
- alias
- static
- parsing
- 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]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer And Data Communications (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本发明实施例公开了一种DNS解析系统、方法及装置。其中,数据服务器工作组通过为域名设置别名来关联静态DNS服务器和动态DNS服务器,向智能DNS服务器推送别名的包括设置有是否可用标识的解析地址的域名解析链,同时,在解析地址的状态发生变更时,通知智能DNS服务器;而智能DNS服务器基于区域就近原则,确定静态DNS服务器所对应的该别名的最优的域名解析链,并从最优的域名解析链中提取可用解析信息,在接收到该静态DNS服务器发送的携带有该别名的第二类域名解析请求后,向该静态DNS服务器反馈该静态DNS服务器所对应的该别名的可用解析信息中的解析地址。可见,通过利用本方案,可以解决现有技术所存在的技术问题。
Description
技术领域
本发明涉及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服务器发送的携带有所述别名的第二类域名解析请求后,获得所述静态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服务器所对应的别名的可用解析信息存储于缓存中时,所述获得所述静态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服务器推送别名的包括设置有是否可用标识的解析地址的域名解析链,同时,在解析地址的状态发生变更时,通知智能DNS服务器,以尽量保证智能DNS服务器所存储的域名解析链中的解析地址的是否可用标识的准确性;而智能DNS服务器基于区域就近原则,确定静态DNS服务器所对应的该别名的最优的域名解析链,并从最优的域名解析链中提取可用解析信息,并且,在接收到该静态DNS服务器发送的携带有该别名的第二类域名解析请求后,向该静态DNS服务器反馈该静态DNS服务器所对应的该别名的可用解析信息中的解析地址。可见,通过利用本方案,在保留静态DNS服务器仍被利用的前提下,能够根据用户的来源动态解析分布式的应用服务的域名,并且,利用解析结果访问分布式的应用服务的成功率较高。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例所提供的一种DNS解析系统的结构示意图;
图2为本发明实施例从静态DNS服务器的角度所所提供的一种DNS解析方法的流程图;
图3为本发明实施例从智能DNS服务器的角度所提供的一种DNS解析方法的流程图;
图4为本发明实施例从静态DNS服务器的角度所提供的一种DNS解析装置;
图5为本发明实施例从智能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解析系统的结构示意图可以例如图1,其中,静态DNS服务器110关联有智能DNS服务器120,并且,数据服务器工作组130关联有静态DNS服务器110和智能DNS服务器120。
其中,不同的静态DNS服务器位于不同的数据中心内,而不同的数据中心可以位于不同的区域或相同的区域,这都是合理的;并且,每一台静态DNS服务器可以有专有的智能DNS服务器,当然,在实际应用中,为了提高资源利用率,属于同一区域的多台静态DNS服务器可以共享至少一台智能DNS服务器。同时,需要说明的是,上述的数据服务器工作组可以为能够实现上述全部功能的单独的一台服务器,也可以为分别能够实现某一项或几项功能的多台服务器。举例而言:对于数据服务器工作组为分别能够实现上述的某一项或几项功能的多台服务器的情况而言,在实际应用中,该数据服务器工作组可以包括:主服务器、登记服务器和IP健康检测服务器,其中,登记服务器用于获得域名与相应的至少一个解析地址并发送给主服务器,相应的,主服务器用于生成该域名对应的别名,指示所关联的静态DNS服务器将该域名与该别名的对应关系增加到动态解析记录中,并根据适应于静态DNS服务器和解析地址的区域就近原则,生成该别名的至少一条域名解析链,向所关联的智能DNS服务器推送该别名和相应的至少一条域名解析链;而IP检测健康服务器用于定时查询该域名所对应的所有解析地址是否可用,在本次查询结果相对于上一次查询结果发生更改时通知主服务器,相应的,主服务器用于根据本次查询结果更改相应解析地址的是否可用标识,并将更改后的域名解析链推送给所关联的智能DNS服务器。
需要强调的是,域名解析链中的是否可用标识可以根据实际情况设定,通常是否可用标识可以包括表明IP不可用的0和表明IP可用的1,当然并不局限于此。而域名解析链中的解析地址的排列顺序表明在解析过程中被使用的顺序;举例而言:假设域名解析链为IP1→IP3→IP2,那么,在域名解析过程中,首先检测IP1的是否可用标识是否表明该IP1可用,如果IP1可用,则IP1作为需要反馈的解析地址解析结果,如果IP1不可用,则检测IP3的是否可用标识是否表明IP3可用,如果IP3可用,则IP3作为解析地址需要反馈的解析结果;如果IP3不可用,则继续检测IP2的是否可用标识是否表明IP2可用,如果IP2可用,则IP2作为需要反馈的解析地址解析结果,如果IP2不可用,则该域名无法被解析;当然,在实际应用中,反向的解析顺序也是可行的。
并且,根据适应于静态DNS服务器和解析地址的区域就近原则,生成该别名的至少一条域名解析链,具体可以包括:确定静态DNS服务器所在的区域,确定配置有所述解析地址的各个应用服务节点所在的区域,基于所确定出地域,确定每一台静态DNS服务器分别与各个配置所述解析地址的应用服务节点的区域远近关系,按照区域就近原则,生成各台静态DNS服务器所需利用的该别名的域名解析链。举例而言:对于分布式的应用服务A而言,域名为aaa.com,别名为bbb,位于北京的应用服务节点被配置的解析地址为IP1,位于重庆的应用服务节点被配置的解析地址为IP2,位于郑州的应用服务节点被配置的解析地址为IP3,并且,第一静态DNS服务器所在区域为北京,第二静态DNS服务器所在区域为重庆,第三静态DNS服务器所在区域为天津,那么,基于区域就近原则,为第一静态DNS服务器和第三静态DNS服务器所生成的域名解析链为IP1→IP3→IP2,为第二静态DNS服务器所生成的域名解析链为IP2→IP3→IP1。
本领域技术人员可以理解的是,静态DNS服务器所在区域可以通过静态DNS服务器的IP地址来确定,或者,通过预先设定的关于静态DNS服务器与所在区域的对应关系来确定;同样的,配置有所述解析地址应用服务节点的区域可以通过解析地址来确定,或者,通过预先设定关于解析地址与区域的对应关系来确定,这都是合理的。
需要强调的是,“智能DNS服务器”中的“智能”和“静态DNS服务器”中的“静态”仅仅是基于所能实现功能对两种DNS服务器从命名上的区分,并不具有任何限定意义;同样的,“第一类域名解析请求”中的“第一”和“第二类域名解析请求”中的“第二”仅仅为了从命名上区分两种域名解析请求,并不具有任何限定意义。
本发明实施例中,数据服务器工作组通过为域名设置别名来关联静态DNS服务器和动态DNS服务器,并且,向智能DNS服务器推送别名的包括设置有是否可用标识的解析地址的域名解析链,同时,在解析地址的状态发生变更时,通知智能DNS服务器,以尽量保证智能DNS服务器所存储的域名解析链中的解析地址的是否可用标识的准确性;而智能DNS服务器基于区域就近原则,确定静态DNS服务器所对应的该别名的最优的域名解析链,并从最优的域名解析链中提取可用解析信息,并且,在接收到该静态DNS服务器发送的携带有该别名的第二类域名解析请求后,向该静态DNS服务器反馈该静态DNS服务器所对应的该别名的可用解析信息中的解析地址。可见,通过利用本方案,在保留静态DNS服务器仍被利用的前提下,能够根据用户的来源动态解析分布式的应用服务的域名,并且,利用解析结果访问分布式的应用服务的成功率较高。
更进一步的,为了提高反馈效率,该智能DNS服务器还用于将该静态DNS服务器所对应的别名的可用解析信息存储到缓存中,并在接收到所关联的该静态DNS服务器发送的携带有该别名的第二类域名解析请求后,将存储于缓存的该静态DNS服务器所对应的该别名的可用解析信息中的是否可用标识表明可用且排列顺序表明优先被使用的解析结果作为该第二类域名解析请求对应的解析结果,并将该解析结果反馈给该静态DNS服务器。
更进一步的,每一台静态DNS服务器可以关联有至少两台智能DNS服务器,其中,每台智能DNS服务器所接收到的数据服务器工作组推送的信息相同,并且,对于每一台静态NNS服务器而言,可以设置默认的智能DNS服务器和备用的智能DNS服务器,其中,当默认的智能DNS服务器故障或系统繁忙等原因无法返回解析结果时,可以利用备用的智能DNS服务器。基于上述关于默认的智能DNS服务器和备用的智能DNS服务器的系统配置,为了提高解析成功率,该静态DNS服务器还用于在预定时间内未接收到作为所述第二类域名解析请求的接收端的智能DNS服务器反馈的所述第二类域名解析请求的解析结果时,判断所关联的智能DNS服务器中是否存在未被发送该第二类域名解析请求的智能DNS服务器,如果存在,继续向未被发送第二类域名解析请求的智能DNS服务器发送该第二类域名解析请求。
基于上述的DNS解析系统,本发明实施例从静态DNS服务器的角度,提供了一种DNS解析方法。
如图2所示,从DNS服务器的角度所提供的一种DNS解析方法,可以包括如下步骤:
S201,接收客户端设备发送的携带有待解析的域名的第一类域名解析请求;
S202,当判断出该待解析的域名存在于关于域名与别名的对应关系的动态解析记录中时,确定该待解析的域名所对应的待解析的别名;
其中,在接收到客户端设备发送的携带有待解析的第一类域名解析请求后,可以判断该待解析的域名是否存在于关于域名与别名的对应关系的动态解析记录中,并根据不同的判断结果执行不同的操作。其中,当判断出该待解析的域名存在于关于域名与别名的对应关系的动态解析记录中时,表明该待解析的域名所对应的应用服务为分布式的应用服务,此时,可以从动态解析记录中确定该待解析的域名所对应的待解析的别名,进而执行后续的操作。
需要强调的是,当判断出该待解析的域名存在于关于域名与解析地址的对应关系的静态解析记录时,确定该待解析的域名所对应的解析地址;将所确定出的解析地址作为该第一类域名解析请求的解析结果反馈给该客户端设备。
S203,向所关联的一台智能DNS服务器发送携带有该待解析的别名的第二类域名解析请求;
其中,在确定出待解析的域名所对应的待解析的别名后,可以向所关联的一台智能DNS服务器发送携带有该待解析的别名的第二类域名解析请求,进而使得作为该第二类域名解析请求的接收端的智能DNS服务器获得该静态DNS服务器所对应的该别名的可用解析信息,将所获得的可用解析信息中的是否可用标识表明可用且排列顺序表明优先被使用的解析地址作为该第二类域名解析请求的解析结果,并反馈给该静态DNS服务器。
S204,接收作为该第二类域名解析请求的接收端的智能DNS服务器反馈的该第二类域名解析请求的解析结果;
S205,将该解析结果反馈给该客户端设备。
其中,在接收到作为该第二类域名解析请求的接收端的智能DNS服务器反馈的该第二类域名解析请求的解析结果后,可以将该解析结果反馈给该客户端设备,从而使得该客户端设备根据所接收到的解析结果进行关于分布式的应用服务的访问。
可见,通过利用本方案,在保留静态DNS服务器仍被利用的前提下,能够根据用户的来源动态解析分布式的应用服务的域名,并且,利用解析结果访问分布式的应用服务的成功率较高。
更进一步的,为了提高成功率,为静态DNS服务器关联至少两台智能DNS服务器,相应的,本实施例所提供的一种DNS解析方法还可以包括:
在预定时间内未接收到作为该第二类域名解析请求的接收端的智能DNS服务器反馈的该第二类域名解析请求的解析结果时,判断所关联的智能DNS服务器中是否存在未被发送该第二类域名解析请求的智能DNS服务器,如果存在,继续向未被发送第二类域名解析请求的智能DNS服务器发送该第二类域名解析请求。
其中,预定时间可以根据实际情况进行设定,在此不做赘述。
基于上述的DNS解析系统,本发明实施例从智能DNS服务器的角度,提供了一种DNS解析方法。
如图3所示,从智能DNS服务器的角度所提供的一种DNS解析方法,可以包括如下步骤:
S301,接收所关联的静态DNS服务器所发送的携带有待解析的别名的第二类域名解析请求;
其中,该第二类域名解析请求为该静态DNS服务器在判断出所接收到的第一类域名解析请求中的待解析域名存在于关于域名与别名的对应关系的动态解析记录中后所发送的。
S302,获得该静态DNS服务器所对应的该待解析的别名的可用解析信息;
在接收到所关联的静态DNS服务器所发送的携带有待解析的别名的第二类域名解析请求后,可以获得该静态DNS服务器所对应的该待解析的别名的可用解析信息,进而基于所获得的可用解析信息执行后续的操作。
其中,由于需要满足区域就近原则来确定解析结果,因此,可以基于静态DNS服务器所在区域和配置有解析地址的应用服务节点所对应的区域,确定其对应的别名的可用解析信息。本领域技术人员可以理解的是,静态DNS服务器所在区域可以通过静态DNS服务器的IP地址来确定,或者,通过预先设定的关于静态DNS服务器与所在区域的对应关系来确定;同样的,配置有所述解析地址应用服务节点的区域可以通过解析地址来确定,或者,通过预先设定关于解析地址与区域的对应关系来确定,这都是合理的。
S303,将所获得的可用解析信息中的是否可用标识表明可用且排列顺序表明优先被使用的解析地址作为该第二类域名解析请求的解析结果;
在获得该静态DNS服务器所对应的该别名的可用解析信息后,可以将所获得的可用解析信息中的是否可用标识表明可用且排列顺序表明优先被使用的解析地址作为该第二类域名解析请求的解析结果。
其中,所述排列顺序表明优先被使用的解析地址可以为域名解析链中的靠前排列的解析地址,当然,也可以为域名解析链中的靠后排列的解析地址,具体采用何种方式,可以预先设定。
S304,将该解析结果反馈给该静态DNS服务器。
在确定出解析结果后,可以将该解析结果反馈给该静态DNS服务器,以使得该静态DNS服务器在接收到所述解析结果后,将该解析结果反馈给作为该第一类域名解析请求的发送者的客户端设备。
可见,通过利用本方案,在保留静态DNS服务器仍被利用的前提下,能够根据用户的来源动态解析分布式的应用服务的域名,并且,利用解析结果访问分布式的应用服务的成功率较高。
更进一步的,为了提高解析效率,可以将该静态DNS服务器所对应的别名的可用解析信息存储于缓存中;相应的,所述获得该静态DNS服务器所对应的别名的可用解析信息,可以包括:
从缓存中获得该静态DNS服务器所对应的待解析的别名的可用解析信息。
相应于上述实施例从静态DNS服务器的角度所提供的一种DNS解析方法,本发明实施例还提供了一种DNS解析装置,应用于静态DNS服务器;如图4所示,所述装置可以包括:
请求接收模块410,用于接收客户端设备发送的携带有待解析的域名的第一类域名解析请求;
第一请求处理模块420,用于当判断出所述待解析的域名存在于关于域名与别名的对应关系的动态解析记录中时,确定所述待解析的域名所对应的待解析的别名;
请求发送模块430,用于向所关联的一台智能DNS服务器发送携带有所述待解析的别名的第二类域名解析请求,以使得作为所述第二类域名解析请求的接收端的智能DNS服务器获得所述静态DNS服务器所对应的所述待解析的别名的可用解析信息,将所获得的可用解析信息中的是否可用标识表明可用且排列顺序表明优先被使用的解析地址作为所述第二类域名解析请求的解析结果,并反馈给所述静态DNS服务器;
解析结果接收模块440,用于接收作为所述第二类域名解析请求的接收端的智能DNS服务器反馈的所述第二类域名解析请求的解析结果;
解析结果反馈模块450,用于将所述解析结果反馈给所述客户端设备。
可见,通过利用本方案,在保留静态DNS服务器仍被利用的前提下,能够根据用户的来源动态解析分布式的应用服务的域名,并且,利用解析结果访问分布式的应用服务的成功率较高。
更进一步的,本实施例所提供的一种DNS解析装置,还可以包括:
第二请求处理模块,用于当判断出所述待解析的域名存在于关于域名与解析地址的对应关系的静态解析记录时,确定所述待解析的域名所对应的解析地址;
解析地址发送模块,用于将所确定出的解析地址作为所述第一类域名解析请求的解析结果反馈给所述客户端设备。
更进一步的,本实施例所提供的一种DNS解析装置,还可以包括:
辅助处理模块,用于在预定时间内未接收到作为所述第二类域名解析请求的接收端的智能DNS服务器反馈的所述第二类域名解析请求的解析结果时,判断所关联的智能DNS服务器中是否存在未被发送所述第二类域名解析请求的智能DNS服务器,如果存在,继续向未被发送第二类域名解析请求的智能DNS服务器发送所述第二类域名解析请求。
相应于上述实施例从智能DNS服务器的角度所提供的一种DNS解析方法,本发明实施例还提供了一种DNS解析装置,应用于智能DNS服务器;如图5所示,所述装置可以包括:
请求接收模块510,用于接收所关联的静态DNS服务器所发送的携带有待解析的别名的第二类域名解析请求,所述第二类域名解析请求为所述静态DNS服务器在判断出所接收到的第一类域名解析请求中的待解析域名存在于关于域名与别名的对应关系的动态解析记录中后所发送的;
可用解析信息获得模块520,用于获得所述静态DNS服务器所对应的所述待解析的别名的可用解析信息;
解析结果确定模块530,用于将所获得的可用解析信息中的是否可用标识表明可用且排列顺序表明优先被使用的解析地址作为所述第二类域名解析请求的解析结果;
解析结果反馈模块540,用于将所述解析结果反馈给所述静态DNS服务器,以使得所述静态DNS服务器在接收到所述解析结果后,将所述解析结果反馈给作为所述第一类域名解析请求的发送者的客户端设备。
可见,通过利用本方案,在保留静态DNS服务器仍被利用的前提下,能够根据用户的来源动态解析分布式的应用服务的域名,并且,利用解析结果访问分布式的应用服务的成功率较高。
具体的,所述可用解析信息获得模块520,具体用于当所述静态DNS服务器所对应的别名的可用解析信息存储于缓存中时,从缓存中获得所述静态DNS服务器所对应的所述待解析的别名的可用解析信息。
对于系统或装置实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
本领域普通技术人员可以理解实现上述方法实施方式中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,所述的程序可以存储于计算机可读取存储介质中,这里所称得的存储介质,如:ROM/RAM、磁碟、光盘等。
以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。
Claims (11)
1.一种DNS解析系统,其特征在于,应用于企业内网,所述DNS解析系统包括:
数据服务器工作组、至少一台静态DNS服务器和多台智能DNS服务器,其中,每一台静态DNS服务器关联有至少一台智能DNS服务器,所述数据服务器工作组关联有所有智能DNS服务器和所有静态DNS服务器;
所述数据服务器工作组用于:在获得域名与相应的至少一个解析地址后,生成所述域名对应的别名,指示所关联的静态DNS服务器将所述域名与所述别名的对应关系增加到动态解析记录中,并根据适应于静态DNS服务器和解析地址的区域就近原则,生成所述别名的至少一条域名解析链,向所关联的智能DNS服务器推送所述别名和相应的至少一条域名解析链,其中,每一条域名解析链均包括所述别名所对应域名的所有解析地址,所述解析地址设置有是否可用标识,不同域名解析链中解析地址的排列顺序不同;并且,定时查询所述域名所对应的所有解析地址是否可用,在本次查询结果相对于上一次查询结果发生更改时,根据本次查询结果更改相应解析地址的是否可用标识,并将更改后的域名解析链推送给所关联的智能DNS服务器;
所述智能DNS服务器用于:在接收到所述数据服务器工作组推送的所述别名与相应的至少一条域名解析链后,根据适应于静态DNS服务器和解析地址的区域就近原则,确定所关联的静态DNS服务器所对应的所述别名的优选的域名解析链,并基于所关联的静态DNS服务器所对应的所述别名的优选的域名解析链确定所关联的静态DNS服务器所对应的所述别名的可用解析信息,其中,所述可用解析信息至少包括是否可用标识表明可用且排列顺序表明优先被使用的解析地址;在接收到所述数据服务器工作组推送的所述别名对应的更改后的域名解析链后,基于更改后的域名解析链重新确定所述别名对应的可用解析信息;进而,在接收到所关联的静态DNS服务器发送的携带有所述别名的第二类域名解析请求后,获得所述静态DNS服务器所对应的所述别名的可用解析信息,将所获得的可用解析信息中的是否可用标识表明可用且排列顺序表明优先被使用的解析地址作为所述第二类域名解析请求的解析结果,并将所述解析结果反馈给所述静态DNS服务器;
所述静态DNS服务器用于:在所述数据服务器工作组的指示下在动态解析记录中增加所述域名与所述别名的对应关系;并且,在接收到客户端设备发送的携带有所述域名的第一类域名解析请求后,当判断出所述域名存在于关于域名与别名的对应关系的动态解析记录中时,确定所述域名所对应的所述别名,向所关联的一台智能DNS服务器发送携带所述别名的第二类域名解析请求,并在接收到所述第二类域名解析请求的解析结果后,将所接收到的解析结果反馈给所述客户端设备。
2.一种DNS解析方法,其特征在于,应用于权利要求1所述的DNS解析系统中的静态DNS服务器;所述方法包括:
接收客户端设备发送的携带有待解析的域名的第一类域名解析请求;
当判断出所述待解析的域名存在于关于域名与别名的对应关系的动态解析记录中时,确定所述待解析的域名所对应的待解析的别名;
向所关联的一台智能DNS服务器发送携带有所述待解析的别名的第二类域名解析请求,以使得作为所述第二类域名解析请求的接收端的智能DNS服务器获得所述静态DNS服务器所对应的所述待解析的别名的可用解析信息,将所获得的可用解析信息中的是否可用标识表明可用且排列顺序表明优先被使用的解析地址作为所述第二类域名解析请求的解析结果,并反馈给所述静态DNS服务器;
接收作为所述第二类域名解析请求的接收端的智能DNS服务器反馈的所述第二类域名解析请求的解析结果;
将所述解析结果反馈给所述客户端设备。
3.根据权利要求2所述的方法,其特征在于,还包括:
当判断出所述待解析的域名存在于关于域名与解析地址的对应关系的静态解析记录时,确定所述待解析的域名所对应的解析地址;
将所确定出的解析地址作为所述第一类域名解析请求的解析结果反馈给所述客户端设备。
4.根据权利要求2或3所述的方法,其特征在于,还包括:
在预定时间内未接收到作为所述第二类域名解析请求的接收端的智能DNS服务器反馈的所述第二类域名解析请求的解析结果时,判断所关联的智能DNS服务器中是否存在未被发送所述第二类域名解析请求的智能DNS服务器,如果存在,继续向未被发送第二类域名解析请求的智能DNS服务器发送所述第二类域名解析请求。
5.一种DNS解析方法,其特征在于,应用于权利要求1所述的DNS解析系统中的智能DNS服务器;所述方法包括:
接收所关联的静态DNS服务器所发送的携带有待解析的别名的第二类域名解析请求,所述第二类域名解析请求为所述静态DNS服务器在判断出所接收到的第一类域名解析请求中的待解析域名存在于关于域名与别名的对应关系的动态解析记录中后所发送的;
获得所述静态DNS服务器所对应的所述待解析的别名的可用解析信息;
将所获得的可用解析信息中的是否可用标识表明可用且排列顺序表明优先被使用的解析地址作为所述第二类域名解析请求的解析结果;
将所述解析结果反馈给所述静态DNS服务器,以使得所述静态DNS服务器在接收到所述解析结果后,将所述解析结果反馈给作为所述第一类域名解析请求的发送者的客户端设备。
6.根据权利要求5所述的方法,其特征在于,当所述静态DNS服务器所对应的别名的可用解析信息存储于缓存中时,所述获得所述静态DNS服务器所对应的所述别名的可用解析信息,包括:
从缓存中获得所述静态DNS服务器所对应的待解析的别名的可用解析信息。
7.一种DNS解析装置,其特征在于,应用于静态DNS服务器;所述装置包括:
请求接收模块,用于接收客户端设备发送的携带有待解析的域名的第一类域名解析请求;
第一请求处理模块,用于当判断出所述待解析的域名存在于关于域名与别名的对应关系的动态解析记录中时,确定所述待解析的域名所对应的待解析的别名;
请求发送模块,用于向所关联的一台智能DNS服务器发送携带有所述待解析的别名的第二类域名解析请求,以使得作为所述第二类域名解析请求的接收端的智能DNS服务器获得所述静态DNS服务器所对应的所述待解析的别名的可用解析信息,将所获得的可用解析信息中的是否可用标识表明可用且排列顺序表明优先被使用的解析地址作为所述第二类域名解析请求的解析结果,并反馈给所述静态DNS服务器;
解析结果接收模块,用于接收作为所述第二类域名解析请求的接收端的智能DNS服务器反馈的所述第二类域名解析请求的解析结果;
解析结果反馈模块,用于将所述解析结果反馈给所述客户端设备。
8.根据权利要求7所述的装置,其特征在于,还包括:
第二请求处理模块,用于当判断出所述待解析的域名存在于关于域名与解析地址的对应关系的静态解析记录时,确定所述待解析的域名所对应的解析地址;
解析地址发送模块,用于将所确定出的解析地址作为所述第一类域名解析请求的解析结果反馈给所述客户端设备。
9.根据权利要求7或8所述的装置,其特征在于,还包括:
辅助处理模块,用于在预定时间内未接收到作为所述第二类域名解析请求的接收端的智能DNS服务器反馈的所述第二类域名解析请求的解析结果时,判断所关联的智能DNS服务器中是否存在未被发送所述第二类域名解析请求的智能DNS服务器,如果存在,继续向未被发送第二类域名解析请求的智能DNS服务器发送所述第二类域名解析请求。
10.一种DNS解析装置,其特征在于,应用于智能DNS服务器;所述装置包括:
请求接收模块,用于接收所关联的静态DNS服务器所发送的携带有待解析的别名的第二类域名解析请求,所述第二类域名解析请求为所述静态DNS服务器在判断出所接收到的第一类域名解析请求中的待解析域名存在于关于域名与别名的对应关系的动态解析记录中后所发送的;
可用解析信息获得模块,用于获得所述静态DNS服务器所对应的所述待解析的别名的可用解析信息;
解析结果确定模块,用于将所获得的可用解析信息中的是否可用标识表明可用且排列顺序表明优先被使用的解析地址作为所述第二类域名解析请求的解析结果;
解析结果反馈模块,用于将所述解析结果反馈给所述静态DNS服务器,以使得所述静态DNS服务器在接收到所述解析结果后,将所述解析结果反馈给作为所述第一类域名解析请求的发送者的客户端设备。
11.根据权利要求10所述的装置,其特征在于,所述可用解析信息获得模块,具体用于当所述静态DNS服务器所对应的别名的可用解析信息存储于缓存中时,从缓存中获得所述静态DNS服务器所对应的所述待解析的别名的可用解析信息。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410848924.7A CN104539751B (zh) | 2014-12-29 | 2014-12-29 | Dns解析系统、方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410848924.7A CN104539751B (zh) | 2014-12-29 | 2014-12-29 | Dns解析系统、方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104539751A CN104539751A (zh) | 2015-04-22 |
CN104539751B true CN104539751B (zh) | 2018-02-09 |
Family
ID=52855218
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410848924.7A Active CN104539751B (zh) | 2014-12-29 | 2014-12-29 | Dns解析系统、方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104539751B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109327559B (zh) * | 2018-11-08 | 2022-03-25 | 同盾控股有限公司 | 一种基于混合云平台的域名解析方法和装置 |
CN109922120B (zh) * | 2018-12-10 | 2022-04-05 | 网宿科技股份有限公司 | 提高dns可用性的方法及终端 |
CN110995888A (zh) * | 2019-12-17 | 2020-04-10 | 互联网域名系统北京市工程研究中心有限公司 | 域名系统的智能解析方法 |
CN113315852B (zh) * | 2021-04-27 | 2023-11-24 | 北京奇艺世纪科技有限公司 | 一种域名解析的方法、装置及系统 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101217576A (zh) * | 2008-01-18 | 2008-07-09 | 厦门纳网科技有限公司 | 动态域名解析系统及其动态解析方法 |
CN102025793A (zh) * | 2010-01-22 | 2011-04-20 | 中国移动通信集团北京有限公司 | 一种ip网络中的域名解析方法、系统及dns服务器 |
CN102685259A (zh) * | 2011-03-09 | 2012-09-19 | 中国移动通信集团公司 | 对dns解析请求进行解析的方法、系统和智能dns |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2006037865A1 (fr) * | 2004-10-06 | 2006-04-13 | France Telecom | Procede et systeme de resolution dns distribuee |
-
2014
- 2014-12-29 CN CN201410848924.7A patent/CN104539751B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101217576A (zh) * | 2008-01-18 | 2008-07-09 | 厦门纳网科技有限公司 | 动态域名解析系统及其动态解析方法 |
CN102025793A (zh) * | 2010-01-22 | 2011-04-20 | 中国移动通信集团北京有限公司 | 一种ip网络中的域名解析方法、系统及dns服务器 |
CN102685259A (zh) * | 2011-03-09 | 2012-09-19 | 中国移动通信集团公司 | 对dns解析请求进行解析的方法、系统和智能dns |
Also Published As
Publication number | Publication date |
---|---|
CN104539751A (zh) | 2015-04-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104539751B (zh) | Dns解析系统、方法及装置 | |
CN103281409B (zh) | 基于tcp协议的移动互联网域名解析方法及dns服务器 | |
CN103581213B (zh) | 一种共享Hosts文件的应用方法、设备和系统 | |
CN104519146A (zh) | 基于用户位置进行域名解析服务的方法与系统 | |
CN103546590A (zh) | 一种dns服务器的选择方法与装置 | |
CN102196060A (zh) | 一种Cache服务器选择源站的方法和系统 | |
CN101815104A (zh) | 网络协议地址反馈方法以及域名解析服务器 | |
CN102143243A (zh) | 动态路由处理方法和装置及其家庭网关 | |
CN109729187B (zh) | 一种代理通信方法、系统、装置及存储介质 | |
CN109787952A (zh) | 一种网络数据访问方法、装置及电子设备 | |
CN109327559B (zh) | 一种基于混合云平台的域名解析方法和装置 | |
CN103780714A (zh) | 一种dns服务器的探测方法及装置 | |
CN105704171B (zh) | 实现cdn访问的系统和方法 | |
CN102833125A (zh) | 测试服务器、采用该测试服务器的测试系统及其测试方法 | |
CN106603593A (zh) | 一种基于适配的http调用方法及装置 | |
CN108259630A (zh) | 未备案网站探测方法、平台和系统 | |
CN108847952A (zh) | 请求链路上下文的处理方法、装置及系统 | |
CN106375491A (zh) | 一种发现网络设备的方法、装置及系统 | |
CN104144223B (zh) | 一种数据获取方法及装置 | |
CN103369015A (zh) | 一种便捷的通过Web访问网络摄像机的方法 | |
CN103581361A (zh) | 一种域名解析代理方法、设备及系统 | |
CN104079682B (zh) | 一种基于域名系统dns的地址转换方法及装置 | |
CN108282455A (zh) | 网页请求方法、装置及域名信息解析结果处理方法、装置 | |
CN107249050B (zh) | 云平台中资源的管理方法和装置 | |
CN102801745A (zh) | 一种广域网浏览器访问局域网web网站的方法和系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |