The invention discloses a DNS domain name acquisition system and method. Including: DNS request packet sending subsystem, DNS management subsystem and DNS reply packet receiving and analysis subsystem, DNS request packet sending subsystem, DNS management subsystem and DNS reply packet receiving and analysis subsystem multi-threaded parallel work; DNS request packet sending subsystem for DNS request packet sending and retransmitting; DNS reply packet receiving and analysis subsystem for receiving DNS reply packet, and The DNS management subsystem is used to manage the status value of domain name resolution service and to time the DNS request packet after it is sent. The DNS request packet received by the DNS response subsystem is used to determine the DNS request packet to be retransmitted according to the DNS response packet received by the DNS response subsystem. When the time is set, the DNS request packet is triggered to send the subsystem pair. DNS request packets that need to be retransmitted are retransmitted. The DNS domain name acquisition system and method provided by the invention have the characteristics of high efficiency and accuracy.
【技术实现步骤摘要】
一种DNS域名获取系统及方法
本专利技术涉及DNS域名获取领域,特别是涉及一种DNS域名获取系统及方法。
技术介绍
在短时间内获取大量的域名数据信息,最快的方法是去找服务器管理员拷贝,其次,就是通过实时监测域名服务器端口获取域名数据信息,这两种方法无疑会是最快和最简单的方法,但是,由于每天互联网上都有大量的域名解析请求,上述两种方法也很难高效的完成。对于通过实时监测域名服务器端口获取域名数据信息这种方法,在现有方案中大致可分为同步和异步两大类。同步方案,获取数据是准确的,但是效率很慢,一次只能发送一个请求包并且只能等到应答包回来并解析之后才能发送下一条,这无疑会浪费大量的时间,无法在短时间内获取大量的信息。异步方案,能在短时间内获取大量的域名信息,但是,获取数据的正确率无法得到保证。
技术实现思路
本专利技术的目的是提供一种DNS域名获取系统及方法,具有高效、准确的特点。为实现上述目的,本专利技术提供了如下方案:一种DNS域名获取系统,包括:DNS请求包发送子系统、DNS管理子系统和DNS应答包接收与分析子系统,所述DNS请求包发送子系统、DNS管理子系统和DNS应答包接收与分析子系统多线程并行工作;所述DNS请求包发送子系统用于DNS请求数据包的发送与重发;所述DNS应答包接收与分析子系统用于接收DNS应答包,并判断DNS应答包是否为DNS请求包对应的应答包;所述DNS管理子系统用于管理域名解析服务的状态值,以及在DNS请求数据包发送后进行计时,根据所述DNS应答包接收与分析子系统接收到的DNS应答包确定需重发的DNS请求数据包,并当计时到设定时间时,触发所 ...
【技术保护点】
1.一种DNS域名获取系统,其特征在于,包括:DNS请求包发送子系统、DNS管理子系统和DNS应答包接收与分析子系统,所述DNS请求包发送子系统、DNS管理子系统和DNS应答包接收与分析子系统多线程并行工作;所述DNS请求包发送子系统用于DNS请求数据包的发送与重发;所述DNS应答包接收与分析子系统用于接收DNS应答包,并判断DNS应答包是否为DNS请求包对应的应答包;所述DNS管理子系统用于管理域名解析服务的状态值,以及在DNS请求数据包发送后进行计时,根据所述DNS应答包接收与分析子系统接收到的DNS应答包确定需重发的DNS请求数据包,并当计时到设定时间时,触发所述DNS请求包发送子系统对需重发的DNS请求数据包进行重新发送。
【技术特征摘要】
1.一种DNS域名获取系统,其特征在于,包括:DNS请求包发送子系统、DNS管理子系统和DNS应答包接收与分析子系统,所述DNS请求包发送子系统、DNS管理子系统和DNS应答包接收与分析子系统多线程并行工作;所述DNS请求包发送子系统用于DNS请求数据包的发送与重发;所述DNS应答包接收与分析子系统用于接收DNS应答包,并判断DNS应答包是否为DNS请求包对应的应答包;所述DNS管理子系统用于管理域名解析服务的状态值,以及在DNS请求数据包发送后进行计时,根据所述DNS应答包接收与分析子系统接收到的DNS应答包确定需重发的DNS请求数据包,并当计时到设定时间时,触发所述DNS请求包发送子系统对需重发的DNS请求数据包进行重新发送。2.根据权利要求1所述的DNS域名获取系统,其特征在于,所述DNS请求包发送子系统包括:读取模块,用于读取待查询域名的数据列表以及域名解析服务器的数据列表;封装模块,用于将读入的域名数据列表中的各待查域名分别封装到DNS请求包;域名解析服务器选取模块,用于选取域名服务器列表中状态值小于设定值的域名解析服务器,记为目的服务器;发送模块,用于所述目的服务器发送DNS请求包,并当数据发送完毕之后,释放发送端口;请求节点插入模块,用于记录发送时间,把由请求包的ID、目的服务器以及发送时间构成的请求节点插入到请求队列队尾。3.根据权利要求1所述的DNS域名获取系统,其特征在于,所述DNS应答包接收与分析子系统包括:网卡监测模块,用于监测网卡上的数据,捕获DNS数据包;解析模块,用于对捕获的DNS数据包进行解析。4.根据权利要求1所述的DNS域名获取系统,其特征在于,所述DNS管理子系统包括:请求队列管理模块,用于管理DNS请求包发送线程的请求节点插入请求队列队尾,用于管理DNS应答包接收与分析线程对请求队列中与应答包对应ID的请求节点的查找与删除,用于管理DNS管理线程对请求队列的每个节点的超时监控;域名服务器管理模块,用于获取设定时间内没有收到DNS应答包的请求节点的域名信息和解析服务器信息,将所述解析服务器的状态值加1,所述域名的发送请求次数加1;重发模块,用于判断没有收到...
【专利技术属性】
技术研发人员:孙红波,徐宏,金鑫,王志强,张岩,关川江,张健毅,孙建树,张莹,毛明,
申请(专利权)人:中共中央办公厅电子科技学院,
类型:发明
国别省市:北京,11
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。