CN102055818B - 分布式智能dns库系统 - Google Patents

分布式智能dns库系统 Download PDF

Info

Publication number
CN102055818B
CN102055818B CN 201010616460 CN201010616460A CN102055818B CN 102055818 B CN102055818 B CN 102055818B CN 201010616460 CN201010616460 CN 201010616460 CN 201010616460 A CN201010616460 A CN 201010616460A CN 102055818 B CN102055818 B CN 102055818B
Authority
CN
China
Prior art keywords
dns
unit
pool
node
domain name
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
Application number
CN 201010616460
Other languages
English (en)
Other versions
CN102055818A (zh
Inventor
姚福源
于洪方
井卫军
蒋建平
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shanghai blue cloud Network Technology Co.,Ltd.
Original Assignee
BEIJING CENTURY BROADBAND INTERNET DATA CENTER Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by BEIJING CENTURY BROADBAND INTERNET DATA CENTER Co Ltd filed Critical BEIJING CENTURY BROADBAND INTERNET DATA CENTER Co Ltd
Priority to CN 201010616460 priority Critical patent/CN102055818B/zh
Publication of CN102055818A publication Critical patent/CN102055818A/zh
Application granted granted Critical
Publication of CN102055818B publication Critical patent/CN102055818B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本申请公开了一种分布式智能DNS库系统,包括:DNS配置模块、域名逻辑运算模块、探测模块、通信模块和若干智能DNS节点。本申请实施例提供的分布式智能DNS库系统,通过以上各个模块相互之间的协作,当用户的DNS通过本地DNS服务器请求至智能DNS节点时,所述智能DNS节点返回用户DNS的请求结果,使用户能够就近访问到性能最好的CDN节点。

Description

分布式智能DNS库系统
技术领域
本申请涉及网络应用领域,特别是涉及一种分布式智能DNS库系统。
背景技术
目前智能DNS的主要功能为,当一个本地DNS服务器向智能DNS请求某个域名时,智能DNS根据本地DNS所在地理位置及互联网接入运营商,按照一定的DNS策略,返回请求域名的DNS记录。
发明人经过研究发现,目前的所谓实现智能DNS库功能的系统,除了具备一般的基本DNS解析功能外,还不能很好的解决用户就近访问性能最好的CDN节点的问题。
发明内容
本申请实施例提供一种分布式智能DNS库系统,有效的解决了用户就近访问到性能最好的CDN节点的问题。
技术方案如下:
一种分布式智能DNS库系统,包括:DNS配置模块、域名逻辑运算模块、探测模块、通信模块和若干智能DNS节点;
其中:所述DNS配置模块用于对域名的DNS策略进行管理;
所述探测模块用于从所述DNS配置模块获取探测对象CDN节点和与所述节点对应的指标阈值;对所述CDN节点进行探测,获取探测结果,对所述探测结果进行分析后与所述阈值进行比较,判断所述CDN节点的存活和负载,对其中异常的CDN节点进行控制;
所述域名逻辑运算模块用于获取所述DNS配置模块管理的域名DNS策略和所述探测模块对异常CDN节点的控制数据;依据所述域名DNS策略和控制数据计算所述智能DNS节点所需的智能DNS服务器数据;并将所述智能DNS服务器数据通过所述通信模块同步至所述智能DNS节点;
当用户修改IP库时,所述域名逻辑运算模块通过所述通信模块将所述IP库中的数据同步至所述智能DNS节点;
所述智能DNS节点将所述接收的智能DNS服务器数据转换为智能DNS服务器域名配置文件,并将所述域名配置文件更新至内存;将所述IP库中的数据转换为IP库文件,加载至内存中,对IP库进行更新;
当用户的DNS通过本地DNS服务器请求至智能DNS节点时,所述智能DNS节点读取内存中的IP库文件和智能DNS服务器域名配置文件,返回用户DNS的请求结果。
上述的系统,优选的,还包括:日志模块;
所述日志模块用于接收所述智能DNS节点通过所述通信模块发送的用户DNS请求结果和本地DNS服务器的IP地址,将所述请求结果和IP地址转换为日志文件,通过所述日志文件,分析得出本地DNS服务器在固定时间段内查询域名的次数,及平均查询响应时间;确定其中为黑客的本地DNS服务器,将该本地DNS服务器记录至所述DNS配置模块。
上述的系统,优选的,还包括:防护模块;
所述防护模块用于接收所述日志模块的发送的黑客名单,将所述黑客名单与所述DNS配置模块中的黑白名单进行比对,最终确定黑客的IP地址,将所述黑客的IP地址上传至所述智能DNS节点。
上述的系统,优选的,还包括:警报模块;
所述警报模块用于捕捉所述探测模块和所述防护模块发布的警报信息,分析警报级别,依据所述警报级别配置警报方式。
上述的系统,优选的,所述DNS配置模块包括:
CDN节点管理单元、pool管理单元、IP库管理单元、地域管理单元、客户管理单元、域名管理单元、Topology制定单元、模板管理单元、黑白名单管理单元、探测阈值管理单元、用户权限管理单元、探测状态单元、DNS查询日志单元、SDNS工作状态单元和配置警报单元;以上各个单元用于具体实现所述DNS配置模块的配置功能。
由以上本申请实施例提供的技术方案可见,本申请实施例提供的分布式智能DNS库系统,通过探测模块从DNS配置模块获取探测对象CDN节点和与所述节点对应的指标阈值;对所述CDN节点进行探测,获取探测结果,对探测结果进行分析后与所述阈值进行比较,判断所述CDN节点的存活和负载,对其中异常的CDN节点进行控制,从而保证了异常的CDN节点不会被添加到智能DNS节点中;同时智能DNS节点实时对IP库进行更新,当用户的DNS通过本地DNS服务器请求至智能DNS节点时,所述智能DNS节点读取内存中的IP库文件和智能DNS服务器域名配置文件,返回用户的DNS请求结果,使用户能够就近访问到性能最好的CDN节点。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的分布式智能DNS库系统的结构示意图;
图2为本申请实施例提供的设置有日志模块的分布式智能DNS库系统的结构示意图;
图3为本申请实施例提供的设置有防护模块的分布式智能DNS库系统的结构示意图;
图4为本申请实施例提供的设置有警报模块的分布式智能DNS库系统的结构示意图;
图5为本申请实施例提供的分布式智能DNS库系统的一详细结构示意图;
图6为本申请实施例提供的DNS配置模块的详细结构示意图;
图7为本申请实施例提供的DNS配置模块的配置流程图;
图8为本申请实施例提供的数据库同步示意图;
图9为本申请实施例提供的IP库或SDNS数据处理流程图;
图10为本申请实施例提供的SDNS内部的关系示意图;
图11为本申请实施例提供的DNS配置模块进行配置的一实例图;
图12为本申请实施例提供的DNS配置模块进行配置的又一实例图;
图13为本申请实施例提供的SDNS内部一模块关系示意图;
图14为本申请实施例提供的SDNS节点的处理流程图;
图15为本申请实施例提供的防护模块的处理流程图;
图16为本申请实施例提供的警报模块的处理流程图。
具体实施方式
为了使本技术领域的人员更好地理解本申请方案。下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本申请保护的范围。
首先对本申请实施例说明过程中用到的技术术语进行说明:
DNS策略:智能DNS对应用请求所在的地理信息,在某个域名对应的多个IP查找的规则。
DNS:域名管理系统,域名是由圆点分开一串单词或缩写组成的,每一个域名都对应一个唯一的IP地址,这一命名的方法或这一管理域名的系统叫做域名管理系统。
CDN:内容分发网络,其目的是通过在现有的Internet中增加一层新的网络架构,将网站的内容发布到最接近用户的网络“边缘”,使用户可以就近取得所需的内容,解决Internet网络拥挤的状况,提高用户访问网站的响应速度。从技术上全面解决由于网络带宽小、用户访问量大、网点分布不均等原因造成的用户访问网站响应速度慢的问题。
本申请实施例说明书中用到的简写:服务器池:pool;智能DNS节点:SDNS;本地DNS服务器:LDNS;服务器池和地域的关联关系:Topology。
本申请实施例提供的分布式智能DNS库系统的结构示意图如图1所示,包括:DNS配置模块101、域名逻辑运算模块103、探测模块102、通信模块104和若干智能DNS节点105;
其中:DNS配置模块101用于对域名的DNS策略进行管理;
探测模块102用于从所述DNS配置模块101获取探测对象CDN节点和与所述节点对应的指标阈值;对所述CDN节点进行探测,获取探测结果,对所述探测结果进行分析后与所述阈值进行比较,判断所述CDN节点的存活和负载,对其中异常的CDN节点进行控制;
域名逻辑运算模块103用于获取所述DNS配置模块101管理的域名DNS策略和所述探测模块102对异常CDN节点的控制数据;依据所述域名DNS策略和控制数据计算所述智能DNS节点105所需的智能DNS服务器数据;并将所述智能DNS服务器数据通过所述通信模块104同步至所述智能DNS节点105;
当用户修改IP库时,所述域名逻辑运算模块103通过所述通信模块104将所述IP库中的数据同步至所述智能DNS节点105;
智能DNS节点105将所述接收的智能DNS服务器数据转换为智能DNS服务器域名配置文件,并将所述域名配置文件更新至内存;将所述IP库中的数据转换为IP库文件,加载至内存中,对IP库进行更新;
当用户的DNS通过本地DNS服务器请求至智能DNS节点105时,所述智能DNS节点105读取内存中的IP库文件和智能DNS服务器域名配置文件,返回用户DNS的请求结果。
本申请实施例提供的设置有日志模块的分布式智能DNS库系统的结构示意图如图2所示;
日志模块106用于接收所述智能DNS节点105通过所述通信模块104发送的用户DNS请求结果和本地DNS服务器的IP地址,将所述请求结果和IP地址转换为日志文件,通过所述日志文件,分析得出本地DNS服务器在固定时间段内查询域名的次数,及平均查询响应时间;确定其中为黑客的本地DNS服务器,将该本地DNS服务器记录至所述DNS配置模块101。
本申请实施例提供的设置有防护模块的分布式智能DNS库系统的结构示意图如图3所示;
防护模块107用于接收所述日志模块106的发送的黑客名单,将所述黑客名单与所述DNS配置模块101中的黑白名单进行比对,最终确定黑客的IP地址,将所述黑客的IP地址上传至所述智能DNS节点105。
本申请实施例提供的设置有警报模块的分布式智能DNS库系统的结构示意图如图4所示;
警报模块108用于捕捉所述探测模块102和所述防护模块107发布的警报信息,分析警报级别,依据所述警报级别配置警报方式。
为了更加清晰的对本申请分布式智能DNS库系统进行描述,本申请实施例提供了分布式智能DNS库系统的一详细结构示意图,如图5所示,管理员在DNS配置模块管理各个域名的DNS策略;配置完毕后,域名逻辑运算模块把经过变动的域名的DNS策略,综合探测模块的控制数据(某个CDN节点的开关或者权重变化)计算得出智能DNS节点所需要的智能DNS服务器数据;
当用户修改IP库时,域名逻辑运算模块控制通信模块把IP库数据同步到各个智能DNS节点上;
域名逻辑运算模块控制通信模块把智能DNS服务器数据同步到各个智能DNS节点上,逻辑运算模块保证死亡的CDN节点不会被添加到智能DNS服务器数据,通过在同一个地域里指定多个pool和不同的权重实现,一个pool有多个后备pool,当某个pool下的CDN节点全部死亡,可以自动启用后备pool中权重最大的pool顶替当前pool;
各个智能DNS节点接收到智能DNS服务器数据后,将智能DNS服务器数据转换为智能DNS服务器域名配置文件,并更新到内存里(当内存中存在对应的内存块时进行更新),各个智能DNS节点收到IP库数据后,将所述IP库数据转换为IP库文件,并加载到内存里,完成IP库的更新;
当用户的DNS请求通过本地DNS服务器请求到智能DNS服务器上时,智能DNS服务器会读取内存里的IP库和智能DNS服务器域名配置文件(如果没有对应的内存块就加载到内存里,一般是第一次查询该域名时,加载一次,以后执行时,不需要再次加载),查询后返回结果;
智能DNS节点在为本地DNS服务器返回查询结果后,会把查询结果和本地DNS服务器的IP以日志消息的方式通过通信模块传到日志模块,生成日志文件;
日志模块把日志文件导入到数据库,分析出各个本地DNS服务器各个时间段查询各个域名的次数,平均查询响应时间,从中分析出哪些本地DNS服务器是黑客(通过判断查询了很多无效的域名),并分别传输到防护模块和DNS配置模块中;
防护模块收到日志模块的黑客名单后,和从DNS配置模块获得的黑白名单比对,把最终的黑客IP传到各个智能DNS节点上,加入防火墙;
探测模块从DNS配置模块中获取到探测对象和相应指标的阈值,利用各种途径对CDN节点进行探测,获取探测结果后,进行分析和阈值比较,判断各个CDN节点的死活和负载,把对异常的CDN节点的控制(开关、升高或降低权重)发送到域名逻辑运算模块,域名逻辑运算模块在计算过程中综合以上控制因素;
警报模块捕捉警报信息,分析警报级别,决定是否发出警报,通过配置好警报方式发送给收件人。
本申请实施例提供的DNS配置模块的详细结构示意图如图6所示,DNS配置模块的配置流程图如图7所示,结合图6和图7,DNS配置模块包括:
CDN节点管理单元,该单元用于实现CDN节点的增加、删除、修改、查询开关操作,当某个CDN节点被关闭后表示该节点不能提供服务,DNS解析就不会解析该CDN节点的IP;
Pool管理单元,pool是CDN节点的集合,主要是为了方便批量管理,当pool被关闭或者探测到死亡的时候,相关的topology均不可用,pool被关闭后,pool下面的CDN节点也不能进行服务,pool中设置有负载均衡策略:
Figure BDA0000041943120000071
Ratio:比例,当DNS请求落到该pool时,会按照pool里包含的CDN节点(被关掉的除外)的比例进行随机选取一个CDN节点,一个pool里的比例和应该为1,若是某个CDN节点1的比例为20%,那就是说在100次DNS请求落到该pool时,返回CDN节点1的IP的次数会是19或者20或者21。
Figure BDA0000041943120000072
Round Robin:随机,表示当DNS请求落到该pool时,会随机抽取一个CDN节点(被关掉的除外)
Figure BDA0000041943120000073
Global Availability:取权重(比例)大的,表示当DNS请求落到该pool时,总是取权重最大的那个CDN节点(被关掉的除外);
IP库管理单元,IP库是DNS库系统的基础,IP库中定义了IP地理位置的字典表:国家、ISP(互联网接入运营商)、省、市,国家包含ISP,ISP包含省,省包含城市,IP库中存储的是CIDR和国家、ISP、省、市的对应关系;
地域管理单元,地域是IP地址位置的字典表的元素集合,能够任意抽取国家、ISP、省、市构成一个集合,实际体现的是CIDR的集合;
Topology制定单元,Topology是pool和地域关联关系的集合,表示某个pool服务于某一个区域,或者是某个地域的DNS请求会落到该pool上,DNS查询结果会从该pool里选取。每个pool和地域关联关系都有一个权重,当同时有两个pool和一个地域关联时,权重大的pool有效;
模板管理单元,模板是Topology的集合,主要是为了方便配置产生的一个概念;
客户管理单元,客户是指需要CDN加速的网站或者公司,主要有增加、删除、修改、查询每个客户有多个要加速的客户域名;
域名管理单元,域名是DNS库系统为客户要加速的客户域名产生的一个加速域名,该加速域名是动态解析的,客户域名可以直接CNAME(别名)到加速域名,这样对加速域名动态解析就是对客户域名进行动态解析。管理功能包括静态解析和动态解析,静态解析就直接添加RR记录即可(一般是NS授权记录);
模板应用单元,应用模板的步骤是选取一个域名和一个模板,就会把模板中的topology提取出来,和域名id一起插到表里。应用完成之后通知域名逻辑运算来获取对应的数据,进行下发;
黑白名单管理单元,黑名单是指要用防护墙屏蔽那非法请求的IP列表,这些IP经常查询一些不存在的域名,或者不断攻击智能DNS服务节点;
白名单是指要运行一些正常的LDNS的IP列表,主要是为了防止黑客检测功能出错;
Figure BDA0000041943120000081
在黑名单里的IP不允许请求到智能DNS服务器上;
不在白名单上但被黑客检测功能检测出的IP也不允许请求到
智能DNS服务器上;
在白名单上的IP无论黑客检测功能检测出的IP中有没有,都允许访问;
探测阈值单元,该单元可让管理员定义各种阈值,例如CDN节点死活的阈值,pool死活的阈值,CDN节点负载对权重的影响;
状态探测单元,用于展示CDN节点、pool的死活和CDN节点的负载曲线;
DNS日志查询单元,用于展示各个智能CDN节点的请求数、成功数、失败数,每个LDNS的请求数、成功数、失败数,每个域名的请求数、成功数、失败数,落到某个POOL的请求数、成功数、失败数、IP地理位置;
SDNS工作状态单元,用于展示每次修改配置是否下发到各个SDNS上,下发进度条;
用户权限管理单元,本单元用于实现把权限授予角色,然后给予某用户某角色,这样某用户就有了对于某功能模块的增删改查功能;
警报配置单元,本单元实现添加警报方式(短信、邮件)的联系人(姓名、邮箱、手机号),编辑报警联系人的关注点(黑客IP、CDN节点死亡、CDN节点恢复、CDN节点负载重),管理警报级别。下表为本申请实施例提供的一警报示意表:
Figure BDA0000041943120000091
本申请实施例提供的域名逻辑运算过程产生IP数据,只需要把IP库里的字符串类型的IP转换为整数形式即可。域名逻辑运算过程主要是产生SDNS数据。
本申请实施例提供的数据库的同步示意图及IP库或SDNS数据处理流程图分别如图8和图9所示,结合图8与图9对通信系统的工作过程进行说明:
如图8所示,关键数据是指IP库和SDNS数据
当逻辑运算往关键数据表(SDNS数据表和IP库数据表)里写入数据(第1步)时,关键数据会同时被同步到各个SDNS里(第3步);
当第1步完成后,马上往事件列表插入一条记录表示关键数据插入完毕可以进行生成SDNS所需要的数据了(第2步),之后,事件列表也会被同步到节点上(第4步),节点就收到通知了,可以进行下一步操作。
中心和节点之间的同步都是使用主从复制同步,属于增量同步,只要中心数据库有数据写入,就会马上同步到节点上,这样在写入大量数据时,复制基本上同时完成,这样节省了时间。加入事件列表机制,可以控制节点不会读到其中的一部分数据,利用数据库同步解决消息通信的可靠性问题。
本申请实施例为进一步对智能DNS节点的工作过程进行说明,提供一具体实例,结合图10、图11、图12、图13和图14;
智能DNS节点的功能为,当以个本地DNS服务器向智能DNS请求某个域名时,智能DNS根据LDNS所在地理和ISP,按照一定的DNS策略,返回请求域名的DNS记录,对于某个域名可以指定不同地区返回不同记录,同一地区对应的pool里的DNS记录之间按照权重大小、比例、随机三种方式进行分流。
如图11所示的SDNS模块配置文件163.cdn.21vianet.com.conf的实例:
1)当一个LDNS请求一个163.cdn.21vianet.com到SDNS时,进入ip地理信息查询模块,获得该ip所属的国家地址(在策略文件里的偏移量),运营商地址,省地址,城市地址;
2)策略匹配模块获得该ip所属的国家地址(在策略文件里的偏移量),运营商地址,省地址,城市地址后,首先在策略文件163.cdn.21vianet.com.conf里的根据城市地址找到第一层策略(城市级)对应的记录,这条记录包括了pool地址,若是地址不为0,直接返回记录里对应的pool,若是为0则找根据省地址找第二层策略省级;
3)根据省地址可以在策略文件163.cdn.21vianet.com.conf里的第二层策略(省级)找到对应的记录,这条记录包括了pool地址,若是地址不为0,直接返回记录里对应的pool,若是为0,则找根据ISP地址找第三层策略ISP级;
4)根据ISP地址可以在策略文件163.cdn.21vianet.com.conf里的第三层策略(ISP级)找到对应的记录,这条记录包括了pool地址,若是地址不为0,直接返回记录里对应的pool,若是为0则找根据国家地址找第四层策略国家级;
5)根据国家地址可以在策略文件163.cdn.21vianet.com.conf里的第四层策略(国家级)找到对应的记录,这条记录包括了pool地址,若是地址不为0,直接返回记录里对应的pool,若是为0则返回默认的pool;
6)在pool里包含DNS记录(ip或者域名)、节点权重(用百分比表示)、DNS记录类型(A,AAAA,CNAME),按照pool里的策略(GA/RR/Ratio),直接取第一个记录;
7)获取第一个IP后,根据pool的要求返回的IP个数,返回n个DNS记录;
8)通过udp包把日志发到日志服务器上。
上面的步骤说明当一个请求过来,根据它所在的地理位置的详尽程度,会落到最精确的策略上
如图12,例如某个DNS请求是来自中国电信广东广州的一个LDNS,SDNS首先判断配置文件里是否有对应的记录,有就返回;若是没有就往上一级,判断中国电信广东有没有对应的记录,有则返回;没有则再往上,一直到DEFAULT级。
SDNS的流量控制功能,每个pool里含有多个DNS记录,当某个DNS请求落到该pool时,根据pool的策略(权重大、比例、随机三种方式)选取一条记录返回给LDNS,按照权重大返回的结果是,流量就会全部流向权重大的CDN节点。按照比例选取的话,在多次请求的情况下,流量按照各个CDN节点的比例分配到各个CDN节点上。按照随机选取的话,在多次请求的情况下,流量等比例分配到各个CDN节点上。
本申请实施例提供的日志模块包括日志记录和日志分析两个子模块。
日志记录模块利用开源软件rsyslog把日志消息(自定义的格式)从SDNS传输到远端日志服务器上,不影响SDNS的工作,即使SDNS宕机了,日志也不会丢失。这样需要在SDNS安装一个rsyslog作为发送客户端,这个rsyslog首先接收到SDNS进程发送的日志消息后,转发到日志服务器上rsyslog,日志服务器的rsyslog把消息写到日志文件里。
日志分析模块每隔5分钟在各个日志服务器上把日志文件导入到数据库里,进行从域名,LDNS,SDNS,IP地理位置各个方面的统计,统计完成的结果再汇总到日志分析服务器上进行1小时和一天的统计,期间可判断出那些IP是黑客(判断依据5分钟内请求同一个域名次数超过10次,或者请求不存在的域名次数超过1000次,请求总数超过10000次)。
本申请实施例提供的探测模块从DNS配置系统中读取到CDN节点的IP和端口,得到探测对象,然后利用各种方式进行探测,获得探测数据后,从DNS配置模块中得到探测阈值。对探测数据进行分析和统计在和阈值进行比较,若是达到死亡的阈值,就把该CDN节点的状态置为死亡,若是未达到的阈值,则判断负载的轻重,根据负载阈值调整CDN节点的权重,以调整该CDN的流量。
本申请实施例提供的防护模块的处理流程图如图15所示,防护模块在获得DNS配置模块传过来的黑白名单和日志模块传过来的黑客IP列表之后,从黑客IP列表里把在白名单的IP去掉,在把黑名单里的IP加到黑客IP列表里,然后发送到各个SDNS里,SDNS收到黑客IP列表后,把黑客IP加到防火墙(iptable)的拒绝名单里,这样这些IP就无法访问SDNS了,同时把白名单里的IP从防火墙拒绝名单里删除。
本申请实施例提供的警报模块的处理流程图如图16所示,警报模块,把各个警报触发装置嵌入到各个关键模块中,当各个模块中的某一个指标达到警报线,就触发警报,把消息传到警报中心记录,入库,警报衡量模块会判断这个警报的级别,决定是否发送警报,还得判断之前同样的警报是否发过,发过几次,若是发送过很多次就不发了。若是警报衡量模块决定要发送警报就把警报信息传给发警报模块,警报模块获取各个发送人的定制的发送方式进行发送。
综合以上描述,本申请实施例提供的分布式智能DNS库系统相对于现有普通关系数据库,具有以下优点:使用分布式内存数据库,查询并发量高,在1G内存,单核1.8G的CPU的服务器上达到5179qps(query per second),而在GTM和WinMyDNS上只有2000qps
同时支持TCP和UDP查询,而GTM和WinMyDNS只支持UDP
支持优先策略替换,优先级分为DEFAULT,国家、ISP、省、市四级。当检测到市级中定义的CDN节点死亡,则会采用同一城市的其它CDN节点,若是该市对应的CDN节点全部死亡,则会采用省一级的CDN节点。依次类推,一直到DEFAULT级;
具有后备DNS记录,由于一个地域可关联多个pool,对应一个地域选择关联关系权重最大的pool,当该pool下的CDN节点全部死亡时,会选取关联关系权重第二大的pool;
具有防范黑客攻击的功能,具有日志分析统计展示功能,能够展示各个SDNS服务状态,具有自动检测警报功能。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。以上所述仅是本申请的具体实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本申请的保护范围。

Claims (4)

1.一种分布式智能DNS库系统,其特征在于,包括:DNS配置模块、域名逻辑运算模块、探测模块、通信模块和若干智能DNS节点;
其中:所述DNS配置模块包括:CDN节点管理单元、pool管理单元、IP库管理单元、地域管理单元、客户管理单元、域名管理单元、Topology制定单元、模板管理单元、黑白名单管理单元、探测阈值单元、用户权限管理单元、状态探测单元、DNS日志查询单元、智能DNS节点工作状态单元和警报配置单元;
所述DNS配置模块用于对域名的DNS策略进行管理;
所述CDN节点管理单元、所述Pool管理单元和所述Topology制定单元依次相连接;所述IP库管理单元、所述地域管理单元和所述Topology制定单元依次相连接;
所述CDN节点管理单元用于实现CDN节点的增加、删除、修改、查询开关操作;所述Pool管理单元中的pool是CDN节点的集合;所述Topology制定单元中的Topology是pool和地域关联关系的集合;
所述Pool管理单元用于当pool被关闭或者探测到死亡的时候,相关的topology均不可用,pool被关闭后,pool下面的CDN节点也不能进行服务,pool中设置有负载均衡策略:
所述IP库管理单元用于存储CIDR和国家、ISP、省、市的对应关系;
所述地域管理单元用于体现所述CIDR的集合;
所述Topology制定单元用于表示某个pool服务于某一个区域,或者是某个地域的DNS请求会落到该pool上,DNS查询结果会从该pool里选取,每个pool和地域关联关系都有一个权重,当同时有两个pool和一个地域关联时,权重大的pool有效;
所述模板管理单元与所述Topology制定单元相连接,且所述模版管理单元中的模版是Topology的集合;
所述客户管理单元主要用于增加、删除、修改、查询每个客户有多个要加速的客户域名;
所述域名管理单元的一端与所述客户管理单元相连接,另一端与所述模板管理单元相连接,用于静态解析和动态解析;
所述黑白名单管理单元用于屏蔽非法请求的IP列表和/或防止黑客检测功能出错;
所述探测阈值单元用于定义各种阈值;
所述用户权限管理单元用于实现把权限授予角色,然后给予某用户某角色;
所述状态探测单元用于展示CDN节点、pool的死活和CDN节点的负载曲线;
所述DNS日志查询单元,用于展示各个智能CDN节点的请求数、成功数、失败数,且每个LDNS的请求数、成功数、失败数,每个域名的请求数、成功数、失败数,落到某个POOL的请求数、成功数、失败数、IP地理位置;
所述智能DNS节点工作状态单元,用于展示每次修改配置是否下发到各个智能DNS节点上,下发进度条;
所述警报配置单元,用于实现添加警报方式的联系人,编辑报警联系人的关注点和/或管理警报级别;
所述探测模块用于从所述DNS配置模块获取探测对象CDN节点和与所述CDN节点对应的指标阈值;对所述CDN节点进行探测,获取探测结果,对所述探测结果进行分析后与所述阈值进行比较,判断所述CDN节点的存活和负载,对其中异常的CDN节点进行控制;
所述域名逻辑运算模块用于获取所述DNS配置模块管理的域名DNS策略和所述探测模块对异常CDN节点的控制数据;依据所述域名DNS策略和控制数据计算所述智能DNS节点所需的智能DNS服务器数据;并将所述智能DNS服务器数据通过所述通信模块同步至所述智能DNS节点;
当用户修改IP库时,所述域名逻辑运算模块通过所述通信模块将所述IP库中的数据同步至所述智能DNS节点;
所述智能DNS节点将所述接收的智能DNS服务器数据转换为智能DNS服务器域名配置文件,并将所述域名配置文件更新至内存;将所述IP库中的数据转换为IP库文件,加载至内存中,对IP库进行更新;
当用户的DNS通过本地DNS服务器请求至智能DNS节点时,所述智能DNS节点读取内存中的IP库文件和智能DNS服务器域名配置文件,返回用户DNS的请求结果。
2.根据权利要求1所述的系统,其特征在于,还包括:日志模块;
所述日志模块用于接收所述智能DNS节点通过所述通信模块发送的用户DNS请求结果和本地DNS服务器的IP地址,将所述请求结果和IP地址转换为日志文件,通过所述日志文件,分析得出本地DNS服务器在固定时间段内查询域名的次数,及平均查询响应时间;确定其中为黑客的IP地址,将该IP地址记录至所述DNS配置模块。
3.根据权利要求2所述的系统,其特征在于,还包括:防护模块;
所述防护模块用于接收所述日志模块的发送的黑客名单,将所述黑客名单与所述DNS配置模块中的黑白名单进行比对,最终确定黑客的IP地址,将所述黑客的IP地址上传至所述智能DNS节点。
4.根据权利要求3所述的系统,其特征在于,还包括:警报模块;
所述警报模块用于捕捉所述探测模块和所述防护模块发布的警报信息,分析警报级别,依据所述警报级别配置警报方式。
CN 201010616460 2010-12-30 2010-12-30 分布式智能dns库系统 Active CN102055818B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN 201010616460 CN102055818B (zh) 2010-12-30 2010-12-30 分布式智能dns库系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN 201010616460 CN102055818B (zh) 2010-12-30 2010-12-30 分布式智能dns库系统

Publications (2)

Publication Number Publication Date
CN102055818A CN102055818A (zh) 2011-05-11
CN102055818B true CN102055818B (zh) 2013-09-18

Family

ID=43959736

Family Applications (1)

Application Number Title Priority Date Filing Date
CN 201010616460 Active CN102055818B (zh) 2010-12-30 2010-12-30 分布式智能dns库系统

Country Status (1)

Country Link
CN (1) CN102055818B (zh)

Families Citing this family (40)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102291268B (zh) * 2011-09-23 2014-11-26 杜跃进 一种基于安全域名服务器系统的恶意域名监控方法
CN102404323A (zh) * 2011-11-18 2012-04-04 深圳中兴网信科技有限公司 一种网络攻击ip自动拒绝方法
CN102780791A (zh) * 2012-07-18 2012-11-14 广东睿江科技有限公司 一种自适应ip的方法、装置以及系统
CN102932451B (zh) * 2012-10-31 2015-11-18 北龙中网(北京)科技有限责任公司 一种针对内容分发网络的解决系统
CN103067361A (zh) * 2012-12-18 2013-04-24 蓝盾信息安全技术股份有限公司 一种智能收集Web应用防火墙白名单的方法
CN103051743B (zh) * 2012-12-27 2015-11-11 茂名市群英网络有限公司 一种基于分布式层级化的dns防御系统和方法
CN103051727B (zh) * 2013-01-05 2015-07-01 国都兴业信息审计系统技术(北京)有限公司 一种远程审计分流系统
CN104580542A (zh) * 2013-10-12 2015-04-29 无锡云捷科技有限公司 Dns系统的智能解析方法
CN104580541A (zh) * 2013-10-12 2015-04-29 无锡云捷科技有限公司 一种智能dns系统
CN103701948A (zh) * 2013-12-25 2014-04-02 乐视网信息技术(北京)股份有限公司 域名解析系统配置信息的采集方法及装置
CN105530272B (zh) * 2014-09-29 2019-06-04 阿里巴巴集团控股有限公司 一种应用数据的同步方法和装置
WO2016074150A1 (en) * 2014-11-11 2016-05-19 21Vianet Group, Inc. Streamlining location-dependent dns configuration
CN104486415B (zh) * 2014-12-15 2018-06-15 新浪网技术(中国)有限公司 监控对象工作状态的判定方法及装置
CN104537120A (zh) * 2015-01-26 2015-04-22 浪潮通信信息系统有限公司 一种基于用户行为分析的dns数据挖掘系统及方法
CN104853004B (zh) * 2015-05-26 2019-08-13 湖南安数网络有限公司 一种域名的分布式智能解析方法
CN106470163B (zh) * 2015-08-17 2020-07-07 腾讯科技(北京)有限公司 一种信息处理方法、装置和系统
CN105245952A (zh) * 2015-08-25 2016-01-13 四川长虹电器股份有限公司 改善Android智能电视网速的方法及系统
CN105376342B (zh) * 2015-10-12 2018-11-23 北京京东尚科信息技术有限公司 用于在互联网中确定用户分区的装置和方法以及采用所述装置的服务器
CN105610930A (zh) * 2015-12-25 2016-05-25 互联网域名系统北京市工程研究中心有限公司 一种基于dns的数据优选方法
CN105721626A (zh) * 2016-02-23 2016-06-29 浪潮通信信息系统有限公司 一种dns节点集中管控方法
CN106067905A (zh) * 2016-02-24 2016-11-02 北京肇煜宏泰信息科技有限公司 一种虚拟网用户访问的方法及系统
CN105763386A (zh) * 2016-05-13 2016-07-13 中国工商银行股份有限公司 业务处理系统及方法
CN106250776A (zh) * 2016-07-25 2016-12-21 北京集奥聚合科技有限公司 一种多维度的hadoop权限控制方法和系统
CN106549932A (zh) * 2016-08-31 2017-03-29 北京安天电子设备有限公司 一种基于日志分析的主机安全防护方法及系统
CN110798469A (zh) * 2016-09-19 2020-02-14 贵州白山云科技股份有限公司 一种dns服务器的安全防护方法以及装置
CN106878254B (zh) * 2016-11-16 2020-09-25 国家数字交换系统工程技术研究中心 提高dns系统安全性的方法及装置
CN108243266A (zh) * 2016-12-27 2018-07-03 阿里巴巴集团控股有限公司 别名记录处理方法、配置方法及装置
CN106790768B (zh) * 2017-02-27 2019-05-17 维沃移动通信有限公司 一种dns服务器设置方法及移动终端
CN107707682B (zh) * 2017-04-19 2018-07-06 贵州白山云科技有限公司 一种bind配置加载优化方法及装置
CN106992938B (zh) 2017-05-15 2020-03-31 网宿科技股份有限公司 一种网络流量动态调度分配方法及系统
CN107592291A (zh) * 2017-07-25 2018-01-16 北京奇艺世纪科技有限公司 一种ip地址检测方法、系统、装置及电子设备
CN107438115A (zh) * 2017-09-11 2017-12-05 深圳市茁壮网络股份有限公司 一种域名解析方法、装置及系统
CN108509323B (zh) * 2018-01-30 2021-10-08 深圳壹账通智能科技有限公司 基于日志分析的业务处理方法、装置及计算机设备
CN108737591B (zh) * 2018-05-22 2021-09-14 华为技术有限公司 一种服务配置的方法及装置
CN109347766B (zh) * 2018-12-07 2022-03-08 网宿科技股份有限公司 一种资源调度的方法及装置
CN110650069B (zh) * 2019-10-17 2021-12-14 北京知道创宇信息技术股份有限公司 一种cdn节点控制方法、装置及系统
CN111858274B (zh) * 2020-07-02 2021-06-01 北京睿知图远科技有限公司 一种大数据评分系统稳定性监控方法
CN113014573B (zh) * 2021-02-23 2023-04-07 杭州安恒信息技术股份有限公司 Dns服务器的监控方法、系统、电子装置和存储介质
CN116137624A (zh) * 2021-11-18 2023-05-19 中兴通讯股份有限公司 负载均衡方法、设备及计算机可读存储介质
CN114244590A (zh) * 2021-12-07 2022-03-25 上海观安信息技术股份有限公司 Dns劫持监测方法及装置

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1870750A (zh) * 2006-04-29 2006-11-29 北京北大方正电子有限公司 一种报警处理系统及方法
CN101902505A (zh) * 2009-05-31 2010-12-01 中国科学院计算机网络信息中心 一种分布式dns查询日志的实时统计装置及方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7657622B1 (en) * 2003-12-23 2010-02-02 At&T Intellectual Property Ii, L.P. Unified web hosting and content distribution system and method for assuring predetermined performance levels

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1870750A (zh) * 2006-04-29 2006-11-29 北京北大方正电子有限公司 一种报警处理系统及方法
CN101902505A (zh) * 2009-05-31 2010-12-01 中国科学院计算机网络信息中心 一种分布式dns查询日志的实时统计装置及方法

Non-Patent Citations (6)

* Cited by examiner, † Cited by third party
Title
&gt *
&lt *
.2010,(第10期),全文. *
中国优秀硕士学位论文全文数据库 信息科技辑&gt *
田杰.一类DNS开源实现的研究与改进.&lt *
田杰.一类DNS开源实现的研究与改进.<<中国优秀硕士学位论文全文数据库 信息科技辑>>.2010,(第10期),全文.

Also Published As

Publication number Publication date
CN102055818A (zh) 2011-05-11

Similar Documents

Publication Publication Date Title
CN102055818B (zh) 分布式智能dns库系统
US20230421590A1 (en) Rule-Based Network-Threat Detection
CN109246211B (zh) 一种区块链中的资源上传和资源请求方法
CN103812849B (zh) 一种本地缓存更新方法、系统、客户端及服务器
CN101442558B (zh) 一种为p2sp网络提供索引服务的方法和系统
CN106302434A (zh) 服务器适配方法、装置和系统
CN109067579A (zh) 面向底层节点失效的5g网络切片拓扑设计及可靠映射方法
CN106612301A (zh) 更新数据的推送方法和装置
CN102971732A (zh) 键/值存储器的集成分级查询处理的系统结构
CN108040136B (zh) 一种ip资源管理方法及系统
CN101771723A (zh) 数据同步方法
CN103957282B (zh) 一种域内终端用户域名解析加速系统及其方法
CN110113188A (zh) 跨子域通信运维方法、总运维服务器和介质
CN101227311B (zh) 互联网信息发布系统和发布方法
CN104539681A (zh) 分布式gis加速系统和gis服务的处理方法
CN102238202B (zh) 索引信息的存储、查找方法及装置
CN104021205A (zh) 一种建立微博索引的方法及装置
CN103414608A (zh) 快速的web流量采集统计系统和方法
CN106790422A (zh) 一种用于web应用的数据缓存集群和数据检索方法
CN112600868A (zh) 域名解析方法、域名解析装置及电子设备
CN110365810A (zh) 基于网络爬虫的域名缓存方法、装置、设备及存储介质
CN112333299B (zh) 一种域名解析方法、配置方法及设备
CN112016030A (zh) 消息推送的方法、装置、服务器和计算机存储介质
CN101702020A (zh) 基于网格的遥感数据的获取方法与装置
CN107943423A (zh) 云系统中存储资源的管理方法和计算机可读存储介质

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
ASS Succession or assignment of patent right

Owner name: BEIJING CENTURY BROADBAND INTERNET DATA CENTER CO.

Free format text: FORMER OWNER: BEIJING BANYANO DATA CENTER SOLUTIONS LTD.

Effective date: 20120920

Free format text: FORMER OWNER: BEIJING CLOUDEX SOFTWARE SERVICES CO., LTD.

Effective date: 20120920

C41 Transfer of patent application or patent right or utility model
TA01 Transfer of patent application right

Effective date of registration: 20120920

Address after: 100015, No. 5, building 1, 3 East Road, Jiuxianqiao Road, Beijing, Chaoyang District

Applicant after: Beijing Century Broadband Internet Data Center Co., Ltd.

Address before: 100015 No. 3, building 5, building 1, Jiuxianqiao East Road, Chaoyang District, Beijing

Applicant before: Beijing BANYANO Data Center Solutions Ltd.

Applicant before: Beijing CloudEx Software Service Co., Ltd.

C14 Grant of patent or utility model
GR01 Patent grant
TR01 Transfer of patent right

Effective date of registration: 20201109

Address after: 201203 601-057, i.e. 657, building 3, building 2, No. 88, Keyuan Road, Pudong New Area, Shanghai

Patentee after: Shanghai blue cloud Network Technology Co.,Ltd.

Address before: 100015, No. 5, building 1, 3 East Road, Jiuxianqiao Road, Beijing, Chaoyang District

Patentee before: 21VIANET Group Inc.

TR01 Transfer of patent right