一种基于DNS的流量代理方法、服务器及系统技术方案

技术编号:28773247 阅读:18 留言:0更新日期:2021-06-09 11:01
本发明专利技术实施例提供一种基于DNS的流量代理方法、服务器及系统,该方法包括:域名DNS代理服务接收客户端发送的DNS解析请求,所述DNS解析请求包含待解析域名;所述DNS代理服务从DNS权威服务器获取所述待解析域名对应的IP地址;若所述DNS代理服务记录有针对所述待解析域名的流量控制策略,则保存所述待解析域名和所述IP地址至本地磁盘,并基于所述IP地址对所述DNS解析请求进行响应。上述方法用于减短获取IP地址及其流量代理策略的时间,提高流量代理系统性能。系统性能。系统性能。

【技术实现步骤摘要】
一种基于DNS的流量代理方法、服务器及系统


[0001]本申请涉及网络
,尤其涉及一种基于DNS的流量代理方法、服务器及系统。

技术介绍

[0002]在现有流量代理服务中,由于内容提供商的源站服务器的IP地址会经常发生更新,因此,需先对其进行DNS代理,以获知域名对应的IP地址,并通过将其保存至缓存来提高响应速度,但由于DNS代理服务器在运行过程中可能会发生进程重启、异常退出、或设备异常重启等问题,内存的信息就会丢失,造成缓存中存储的域名和IP地址映射关系丢失,则再次接收到该域名的DNS解析请求时,只能从权威服务器中获取该域名对应的IP地址,增加了域名服务器的工作量,拖慢域名服务器的代理速度。

技术实现思路

[0003]本专利技术实施例提供一种基于DNS的流量代理方法、服务器及系统,用于防止因内存数据丢失而导致的上述问题,提高流量代理系统性能。
[0004]第一方面,本专利技术实施例提供一种基于DNS的流量代理方法,该方法包括:
[0005]域名DNS代理服务接收客户端发送的DNS解析请求,所述DNS解析请求包含待解析域名;
[0006]所述DNS代理服务从DNS权威服务器获取所述待解析域名对应的IP地址;
[0007]若所述DNS代理服务记录有针对所述待解析域名的流量控制策略,则保存所述待解析域名和所述IP地址至本地磁盘,并基于所述IP地址对所述DNS解析请求进行响应。
[0008]上述方法中,通过将待解析域名和IP地址保存至本地磁盘。则在本地缓存信息丢失时,DNS代理服务可以直接从本地磁盘中获取待解析域名对应的IP地址,而无需再次从DNS权威服务器获取该待解析域名对应的IP地址。相比于现有技术来说,本申请可以在DNS代理服务中的内存数据丢失时,通过从本地磁盘中获取本地缓存中丢失的信息,以快速响应DNS解析请求,降低DNS代理服务的工作量,加快DNS代理服务的代理速度。
[0009]可选的,在所述DNS代理服务从DNS权威服务器获取所述待解析域名对应的IP地址步骤前,所述方法还包含:所述DNS代理服务查询本地缓存,以获取所述待解析域名对应的IP地址;若未查询到记录,则查询本地磁盘,以获取所述待解析域名对应的IP地址;若所述本地磁盘中没有相应记录,再执行所述从DNS权威服务器获取所述待解析域名对应的IP地址的步骤以及后续步骤;若所述本地缓存或者所述本地磁盘中有相应记录,则基于从所述本地缓存或所述本地磁盘中获取到的所述待解析域名对应的IP地址,对所述DNS解析请求进行响应。
[0010]上述方法中,DNS代理服务先从本地缓存获取待解析域名对应的IP地址,若获取不到,则从本地磁盘获取待解析域名对应的IP地址,若本地缓存和本地磁盘皆获取不到,才从DNS权威服务器获取待解析域名对应的IP地址。如此,当DNS代理服务进程重启或异常等造
成本地缓存中的信息丢失,可以从本地磁盘获取,可以节省重新从DNS权威服务器获取该丢失的信息所耗费的时间,加快DNS代理服务的流量代理速度。
[0011]可选的,所述方法包含:将所述待解析域名所述IP地址保存至本地缓存。
[0012]上述方法中,将从DNS权威服务器获取到的IP地址保存至本地缓存,可以节省DNS代理服务访问本地磁盘或DNS权威服务器的时间,以及若IP地址可以无需存储在本地磁盘时,节约本地磁盘的存储空间。
[0013]可选的,所述保存所述待解析域名和所述IP地址至本地磁盘,具体包含:
[0014]反转所述待解析域名的字符,得到存储目录;在本地磁盘的文件系统中创建所述存储目录,保存所述IP地址至所述存储目录下。
[0015]根据上述方法对IP地址进行存储,可便于后续对IP地址的查询,提升获取IP地址的高效性。
[0016]可选的,所述查询本地磁盘的方法具体包括:
[0017]对所述待解析域名的字符进行翻转,基于翻转后的字符得到对应的查询目录,并基于所述查询目录与所述文件系统的存储目录进行匹配,若匹配成功,则在获取匹配到存储目录下保存的所述IP地址,确定为所述待解析域名对应的IP地址;若没有,则确定所述本地磁盘中没有相应记录。
[0018]上述方法中,根据翻转后的待解析域名匹配存储目录,获取待解析域名匹配的文件名,进一步在该文件中获取IP地址。如此,增加获取IP地址的高效性。
[0019]可选的,所述方法更包含:所述DNS代理服务基于所述IP地址和所述流量控制策略生成IP流量控制策略,发送至流量控制服务,使得所述流量控制服务在接收到所述客户端发往所述IP地址的流量时,基于所述IP流量控制策略对所述流量进行代理。
[0020]可选的,当所述DNS代理服务接收到配置平台下发的域名流量控制策略更新指令时,获取所述更新指令中包含的各待更新域名及对应的更新后的流量控制策略,从所述本地磁盘中查询各所述待更新域名对应的IP地址,并基于所述待更新域名对应的IP地址及所述更新后的流量控制策略生成新的IP流量控制策略,发送至所述流量控制服务,并指示所述流量控制服务基于所述新的IP流量控制策略对本地保存的IP流量控制策略进行更新。
[0021]上述方法中,流量控制服务基于DNS代理服务发送的IP流量控制策略,可对客户端发往该IP地址的流量进行代理。如此,可以实现不同IP地址对应不同流量控制策略,增加流量控制的灵活度。
[0022]第二方面,本专利技术实施例提供一种计算机可读存储介质,所述计算机可读存储介质存储有程序,当所述程序在计算机上运行时,使得计算机实现执行第一方面的各种可能的设计中所述的方法。
[0023]第三方面,本专利技术实施例提供一种DNS代理服务器,该DNS代理服务器包括:
[0024]存储器,用于存储计算机程序;
[0025]处理器,用于调用所述存储器中存储的计算机程序,按照获得的程序执行第一方面的各种可能的设计中所述的方法。
[0026]第四方面,本专利技术实施例提供一种流量代理系统,该系统包括:
[0027]配置平台,用于配置域名流量控制策略,并将所述域名流量控制策略发送给DNS代理服务;DNS代理服务与所述配置平台通信连接,接收所述域名流量控制策略,通过执行如
第一方面所述的基于DNS的流量代理方法,对客户端发送的DNS解析请求进行处理。
[0028]进一步的,所述系统还包括:与所述DNS代理服务通信连接的流量控制服务,所述DNS代理服务在获取到所述DNS解析请求中待解析域名对应的IP地址后,将所述IP地址和对应的流量控制策略发送至所述流量控制服务;所述流量控制服务,用于接收所述客户端针对所述IP地址发出的流量,并根据所述DNS代理服务发送的所述IP地址和所述流量控制策略,对所述流量进行加速控制。
[0029]本专利技术的这些实现方式或其他实现方式在以下实施例的描述中会更加简明易懂。
附图说明
[0030]为了更清楚地说明本专利技术实施例中的技术方案,下面将对实施例描述中所需要使用的附图作本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于DNS的流量代理方法,其特征在于,所述方法包括:域名DNS代理服务接收客户端发送的DNS解析请求,所述DNS解析请求包含待解析域名;所述DNS代理服务从DNS权威服务器获取所述待解析域名对应的IP地址;若所述DNS代理服务记录有针对所述待解析域名的流量控制策略,则保存所述待解析域名和所述IP地址至本地磁盘,并基于所述IP地址对所述DNS解析请求进行响应。2.如权利要求1所述的方法,其特征在于,在所述DNS代理服务从DNS权威服务器获取所述待解析域名对应的I P地址步骤前,所述方法还包含:所述DNS代理服务查询本地缓存,以获取所述待解析域名对应的IP地址;若未查询到记录,则查询本地磁盘,以获取所述待解析域名对应的IP地址;若所述本地磁盘中没有相应记录,再执行所述从DNS权威服务器获取所述待解析域名对应的IP地址的步骤以及后续步骤;若所述本地缓存或者所述本地磁盘中有相应记录,则基于从所述本地缓存或所述本地磁盘中获取到的所述待解析域名对应的IP地址,对所述DNS解析请求进行响应。3.如权利要求1所述的方法,其特征在于,所述方法包含:将所述待解析域名和所述IP地址保存至本地缓存。4.如权利要求1或2所述的方法,其特征在于,所述保存所述待解析域名和所述IP地址至本地磁盘,具体包含:反转所述待解析域名的字符,得到存储目录;在本地磁盘的文件系统中创建所述存储目录,保存所述IP地址至所述存储目录下。5.如权利要求4所述的方法,其特征在于,所述查询本地磁盘的方法具体包括:对所述待解析域名的字符进行翻转,基于翻转后的字符得到对应的查询目录,并基于所述查询目录与所述文件系统的存储目录进行匹配,若匹配成功,则在获取匹配到存储目录下保存的所述IP地址,确定为所述待解析域名对应的IP地址;若没有,则确定所述本地磁盘中没有相应记录。6.如权...

【专利技术属性】
技术研发人员:谢文伟
申请(专利权)人:网宿科技股份有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1