CN112600868B - 域名解析方法、域名解析装置及电子设备 - Google Patents

域名解析方法、域名解析装置及电子设备 Download PDF

Info

Publication number
CN112600868B
CN112600868B CN202011248394.4A CN202011248394A CN112600868B CN 112600868 B CN112600868 B CN 112600868B CN 202011248394 A CN202011248394 A CN 202011248394A CN 112600868 B CN112600868 B CN 112600868B
Authority
CN
China
Prior art keywords
domain name
dns
resolution
server
name resolution
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
CN202011248394.4A
Other languages
English (en)
Other versions
CN112600868A (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.)
Tsinghua University
Original Assignee
Tsinghua University
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 Tsinghua University filed Critical Tsinghua University
Priority to CN202011248394.4A priority Critical patent/CN112600868B/zh
Publication of CN112600868A publication Critical patent/CN112600868A/zh
Application granted granted Critical
Publication of CN112600868B publication Critical patent/CN112600868B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1036Load balancing of requests to servers for services different from user content provisioning, e.g. load balancing across domain name servers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/45Network directories; Name-to-address mapping
    • H04L61/4505Network directories; Name-to-address mapping using standardised directories; using standardised directory access protocols
    • H04L61/4511Network directories; Name-to-address mapping using standardised directories; using standardised directory access protocols using domain name system [DNS]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1441Countermeasures against malicious traffic
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/14Session management
    • H04L67/141Setup of application sessions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/563Data redirection of data network streams
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/568Storing data temporarily at an intermediate stage, e.g. caching

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明实施例提供一种域名解析方法、域名解析装置及电子设备,方法包括:根据域名解析请求向预设的DNS代理服务器进行本地缓存查询,若本地缓存有网址映射关系,则据其进行域名解析;若本地未缓存网址映射关系,则启动静态冗余查询机制,包括:从DNS解析服务器组中选取一个DNS解析服务器,根据域名解析请求,同时向DNS解析服务器和预设的LDAP服务器进行查询,比对二者的查询结果,若一致,则进行域名解析;若不一致,则启动动态冗余查询机制,包括:从DNS解析服务器组其余的DNS解析服务器中选取多个DNS解析服务器,根据域名解析请求,同时向多个DNS解析服务器进行查询,根据查询结果进行域名解析或风险报警。从而提高域名解析速度并提升域名解析安全性。

Description

域名解析方法、域名解析装置及电子设备
技术领域
本发明涉及域名解析服务技术领域,尤其涉及一种域名解析方法、域名 解析装置及电子设备。
背景技术
为了使用户方便的访问互联网,而不用去记住被机器直接读取的IP地址 数值串,通常采用域名代替IP地址来标识站点地址,当客户端需要访问网络 时,在浏览器中输入域名,经过域名解析之后,客户端便实现了对该IP地址 所对应的服务器的访问。
传统的域名解析方式是:使用DNS(Domain Name System,域名解析系 统)进行从域名到IP地址的正向解析以及从IP地址到域名的反向解析。所 述正向解析流程如图1所示:
①在浏览器中输入域名www.example.com,操作系统会先后检查自己本 机的hosts文件以及本机DNS解析器缓存是否有这个域名相应的网址映射关 系,如果有,则调用此IP地址映射,完成域名解析。
②如果hosts文件与本机DNS解析器缓存中都没有相应的网址映射关系, 则首先会找TCP/IP参数中设置的本地DNS递归服务器,此本地DNS递归服 务器收到查询请求时,如果要查询的域名,包含在其本地配置区域资源或其 缓存中,则返回解析结果给客户机,完成域名解析。
③-④如果本地DNS递归服务器本地配置区域资源与缓存对域名的解析 都无效,则本地DNS递归服务器就把查询请求发至全世界的13台根DNS服 务器,各根DNS服务器根据请求的顶级域名(.com)返回对应的顶级域名服务 器IP地址;⑤-⑥本地DNS递归服务器收到顶级域名服务器IP地址后,会 请求该顶级域名服务器,该顶级域名服务器返回对应的二级域名服务器的地 址(example.com)给本地DNS递归服务器;⑦-⑧当本地DNS递归服务器收到 二级域名服务器的地址后,会请求该二级域名服务器,进行域名查询,找到www.example.com主机,则返回解析结果给客户机,完成域名解析。
而传统的域名解析过程中,通常也会存在安全问题。目前针对DNS服 务器的DNS缓存投毒等恶意攻击频频发生,可是DNS安全拓展协议 (DNSSEC)很难应用于大规模部署的情况。因此,有人提出了用拟态DNS 技术(Mimic-DNS,M-DNS)来保证DNS服务器的安全。拟态DNS技术的 设计架构及服务流程如图2所示,其架构是由选调器和包含多个异构DNS 服务器的服务器池组成的,其工作原理为:首先选调器动态从DNS递归服务 器池随机选取若干服务器并行处理查询请求,然后对各服务器的处理结果采 用投票机制决定最终的有效响应。拟态DNS服务器的服务流程具体为:
(1)用户发出DNS查询请求;
(2)选调器从递归服务器池中随机选取n个缓存服务器发出查询。
若所有缓存服务器的应答均一致,则通过(3)将查询结果返回给用户, 结束;
若不是所有应答均一致,则进一步通过(4)向权威服务器池发出查询;
(5)将递归服务器池的所有结果与权威服务器的所有结果进行统计。
(6)若得票数最高的结果的票数超过半数,则将该结果反馈给用户;否 则,重新进行查询。
综上,传统的域名解析技术存在着诸多隐患或问题:1、长期使用DNS 根域名服务器容易形成对外国技术的依赖,并且一些高级网络信息易被其他 拥有DNS根域名服务器的国家获知,安全性较差;2、DNS作为基础性服务, 但其本身存有一定程度的网络安全缺陷,比如DNS对于请求不做访问的认证 与控制,并且使用“First Answer Wins”原则,使之容易受到不同种类型的攻 击,如DNS劫持攻击,DNS缓存投毒,本地DNS文件欺骗等,可能会造成DNS服务的崩溃;3、传统DNS只能提供精确的域名与ip的映射关系,功 能单一、灵活性差。
而拟态DNS技术(M-DNS),虽然在一定程度上提高了DNS对抗攻击 的能力,但该方案仍然存在缺陷:1、M-DNS的选调器承担了较大的处理量, 容易到达瓶颈和遭受DDoS攻击;2、M-DNS中选取多个递归服务器的过 程,以及判决机制会使得时延增加,并且成本高昂;3、选调器与用户之间仍 为传统的DNS应答方式,导致用户与拟态DNS的选调器交互过程容易成为 攻击对象,易被攻击者攻击成功。
发明内容
针对现有技术存在的问题,本发明实施例提供了一种域名解析方法、 域名解析装置及电子设备。
第一方面,本发明实施例提供了一种域名解析方法,包括:
获取域名解析请求,根据域名解析请求向预设的DNS代理服务器进 行本地缓存查询,若所述DNS代理服务器本地缓存有网址映射关系,则根 据所述网址映射关系进行域名解析;若所述DNS代理服务器本地未缓存网址 映射关系,则启动静态冗余查询机制,包括:从DNS解析服务器组中选取一 个DNS解析服务器,根据域名解析请求,同时向所述DNS解析服务器和预 设的LDAP服务器进行查询,比对二者的查询结果,若一致,则进行域名解 析;
若二者的查询结果不一致,则启动动态冗余查询机制,包括:从DNS解 析服务器组其余的DNS解析服务器中选取多个DNS解析服务器,根据域名 解析请求,同时向所述多个DNS解析服务器进行查询,根据查询结果进行域 名解析或风险报警。
进一步地,所述域名解析方法,在获取域名解析请求之前,还包括:
基于网络个人代理平台预先设立DNS代理服务器,且,所述DNS代理 服务器与所述网络个人代理平台自动建立HTTPS连接。
进一步地,所述DNS代理服务器采用URL参数形式传递目的域名;
和,所述DNS代理服务器采用重定向服务,以对域名解析获得的目的网 址进行重定向访问。
进一步地,所述从DNS解析服务器组其余的DNS解析服务器中选取多 个DNS解析服务器,根据域名解析请求,同时向所述多个DNS解析服务器 进行查询,根据查询结果进行域名解析或风险报警,具体包括:
从DNS解析服务器组其余的DNS解析服务器中选取多个DNS解析服务 器,根据域名解析请求,同时向所述多个DNS解析服务器进行查询;
根据所述多个DNS解析服务器中各自缓存的网址映射关系,分别获得多 个可能目的网址,从所述多个可能目的网址中筛选出众数目的网址,将所述 众数目的网址出现的次数与预设阈值进行比较;
若所述众数目的网址出现的次数大于等于预设阈值,则将所述众数目的 网址作为真实目的网址,根据所述真实目的网址,进行域名解析;
否则,判定域名解析请求中的域名受到了攻击,所述DNS代理服务器发 出DNS风险报警信息。
进一步地,所述LDAP服务器为基于所述DNS代理服务器本地预先设立 的,且所述LDAP服务器的LDAP数据库存储在所述DNS代理服务器本地。
进一步地,所述LDAP数据库按照预设的更新策略,在每次域名解析完 成后自动进行更新;
和,所述更新策略采用基于DNS ZONE关联的GDSF-T缓存更新算法。
进一步地,所述域名解析请求包括直接域名解析请求、对域名模糊查找 请求和自然语言搜索域名请求。
第二方面,本发明实施例提供了一种域名解析装置,包括:
本地查询模块,用于获取域名解析请求,根据域名解析请求向预设的 DNS代理服务器进行本地缓存查询,若所述DNS代理服务器本地缓存有网 址映射关系,则根据所述网址映射关系进行域名解析;
静态冗余查询模块,用于若所述DNS代理服务器本地未缓存网址映射关 系,则启动静态冗余查询机制,包括:从DNS解析服务器组中选取一个DNS 解析服务器,根据域名解析请求,同时向所述DNS解析服务器和预设的LDAP 服务器进行查询,比对二者的查询结果,若一致,则进行域名解析;
动态冗余查询模块,用于若二者的查询结果不一致,则启动动态冗余查 询机制,包括:从DNS解析服务器组其余的DNS解析服务器中选取多个DNS 解析服务器,根据域名解析请求,同时向所述多个DNS解析服务器进行查询, 根据查询结果进行域名解析或风险报警。
第三方面,本发明实施例提供了一种电子设备,包括存储器、处理器及 存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理 器执行所述计算机程序时实现如上所述的域名解析方法。
第四方面,本发明实施例提供了一种非暂态计算机可读存储介质,其上 存储有计算机程序,所述计算机程序被处理器执行时实现如上所述的域名解 析方法。
本发明实施例提供的一种域名解析方法、域名解析装置及电子设备, 所述方法是一种面向网络个人代理平台的、基于URL重定向和LDAP的 域名解析代理服务,利用网络个人代理服务的高处理带宽的能力,给DNS 做静态或动态冗余备份,一方面能够对域名解析过程进行加密处理,提供 冗余容错机制,以提升域名解析的安全性;另一方面还能有效提高对目的 域名的解析速度,同时有效缓解冗余容错带来的延迟代价。此外,还能够 依托个人代理面向用户个人的特性,实现个性化的DNS查询设置。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中 所需要使用的附图作一简单的介绍,显而易见地,下面描述中的附图是本发 明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前 提下,还可以根据这些附图获得其他的附图。
图1为传统的域名解析方式的工作原理示意图;
图2为现有拟态DNS技术的工作原理示意图;
图3为本发明第一实施例提供的一种域名解析方法的流程示意图;
图4为本发明第二实施例提供的一种域名解析方法的流程示意图;
图5为本发明实施例提出的域名解析方法的全过程的工作原理示意图;
图6为本发明实施例提出的域名解析方法的全过程的流程示意图;
图7为本发明实施例中LDAP服务器集群的存储结构示意图;
图8为本发明实施例提供的一种域名解析装置的结构示意图;
图9为本发明实施例提供的一种电子设备的结构示意图。
附图标记:
801:本地查询模块;802:静态冗余查询模块;803:动态冗余查询模块;
901:处理器;902:通信接口;903:存储器;904:通信总线。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发 明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述, 显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于 本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获 得的所有其他实施例,都属于本发明保护的范围。
本发明实施例提供了一种域名解析方法,包括:
获取域名解析请求,根据域名解析请求向预设的DNS代理服务器进 行本地缓存查询,若所述DNS代理服务器本地缓存有网址映射关系,则根 据所述网址映射关系进行域名解析;
若所述DNS代理服务器本地未缓存网址映射关系,则启动静态冗余查询 机制,包括:从DNS解析服务器组中选取一个DNS解析服务器,根据域名 解析请求,同时向所述DNS解析服务器和预设的LDAP服务器进行查询,比 对二者的查询结果,若一致,则进行域名解析;
若二者的查询结果不一致,则启动动态冗余查询机制,包括:从DNS解 析服务器组其余的DNS解析服务器中选取多个DNS解析服务器,根据域名 解析请求,同时向所述多个DNS解析服务器进行查询,根据查询结果进行域 名解析或风险报警。
本发明实施例提供的一种域名解析方法、域名解析装置及电子设备, 所述方法是一种面向网络个人代理平台的、基于URL重定向和LDAP的 域名解析代理服务,利用网络个人代理服务的高处理带宽的能力,给DNS 做静态或动态冗余备份,一方面能够对域名解析过程进行加密处理,提供 冗余容错机制,以提升域名解析的安全性;另一方面还能有效提高对目的 域名的解析速度,同时有效缓解冗余容错带来的延迟代价。此外,还能够 依托个人代理面向用户个人的特性,实现个性化的DNS查询设置。
下面结合附图对本发明实施例提供的域名解析方法作详细说明。
第一方面,本发明实施例提供了一种域名解析方法,图3为本发明第 一实施例提供的一种域名解析方法的流程示意图,如图3所示,所述方法 包括:
S101、获取域名解析请求,根据域名解析请求向预设的DNS代理服务 器进行本地缓存查询,若所述DNS代理服务器本地缓存有网址映射关系, 则根据所述网址映射关系进行域名解析;
用户机(个人代理服务端)试图访问某一域名时,会主动发出域名解析 请求,获取该域名解析请求,根据域名解析请求向预设的DNS代理服务器 进行本地缓存查询,以判断所述DNS代理服务器本地缓存有网址映射关系, 若所述DNS代理服务器本地缓存有网址映射关系,则根据所述网址映射关系 进行域名解析。
根据上述该域名解析请求向预设的DNS代理服务器本地进行查询以判 断DNS代理服务器本地中是否缓存有域名和IP网址的网址映射关系。
若判断出所述DNS代理服务器本地缓存有域名和IP网址的网址映射关 系,且其安全可用,则直接根据改域名和IP网址的映射信息进行域名解析, 再根据解析出来的IP地址使用户机进行连接重定向,从而使用户机安全地成 功访问到该域名对应的真实IP地址。
当然,也可以按照现有技术通常做法,先根据域名解析请求向浏览器本 地进行查询,以判断浏览器本地是否缓存有网址映射关系,在浏览器本地未 缓存域名和IP网址的映射信息时,则向预设的DNS代理服务器发送域名解 析请求。
本实施例优选设置所述DNS代理服务器传递目的域名时采用URL参数 形式进行。并且,所述DNS代理服务器采用重定向服务。
S102、若所述DNS代理服务器本地未缓存网址映射关系,则启动静态冗 余查询机制,包括:从DNS解析服务器组中选取一个DNS解析服务器,根 据域名解析请求,同时向所述DNS解析服务器和预设的LDAP服务器进行查 询,比对二者的查询结果,若一致,则进行域名解析;
若判断出所述DNS代理服务器本地没有缓存域名和IP网址的映射信息, 则启动静态冗余查询机制,包括:从DNS解析服务器组中选取一个DNS解 析服务器,根据域名解析请求,同时向所述DNS解析服务器和预设的LDAP 服务器进行查询,比对二者的查询结果,若二者的查询结果一致,则进行域 名解析,再根据解析出来的IP地址使用户机进行连接重定向,从而使用户机 安全地成功访问到该域名对应的真实IP地址。
其中,所述DNS解析服务器组就是采用多组的现有技术中的传统解析服 务器(DNS递归服务器),可直接使用由各个互联网组织建立的、在互联网 中公开提供服务的公众DNS服务器,如广泛使用的114.114.114.114服务器、 8.8.8.8服务器、腾讯119.29.29.29,百度180.76.76.76,本实施例中将可直接 访问的公众DNS服务器看做DNS解析服务器组,不需自己专门搭建。所述 DNS代理服务器的本地的更新策略为当前广泛使用的基于域名记录生存时间 TTL的缓存方法,即每条域名记录在缓存中的存在时间为预设值TTL。
举例说明:从DNS解析服务器组中选取一个首选DNS解析服务器,根 据域名解析请求,同时向首选DNS解析服务器和预设的LDAP服务器进行查 询,均缓存有网址映射关系,则在DNS解析服务器组中,根据首选DNS解 析服务器中缓存的网址映射关系确定目的域名对应的第一目的网址,记为 IP1。同时,根据LDAP服务器中缓存的网址映射关系确定目的域名对应的第 二目的网址,记为IP0。对比第一目的网址IP1和第二目的网址IP0的一致性。
若比对结果为第一目的网址IP1和第二目的网址IP0相同,则确定域名解 析获得的目的网址为第一目的网址IP1,(此时IP1=IP0),则所述DNS代理服 务器将访问连接请求重定向到所述第一目的网址IP1,从而使用户机安全地成 功访问到目的域名对应的真实IP地址。
S103、若二者的查询结果不一致,则启动动态冗余查询机制,包括:从 DNS解析服务器组其余的DNS解析服务器中选取多个DNS解析服务器,根 据域名解析请求,同时向所述多个DNS解析服务器进行查询,根据查询结果 进行域名解析或风险报警。
若向所述DNS解析服务器和预设的LDAP服务器进行查询的查询结果不 一致,则启动动态冗余查询机制,包括:从DNS解析服务器组其余的DNS 解析服务器中选取多个DNS解析服务器,根据域名解析请求,同时向所述多 个DNS解析服务器进行查询,即,若比对结果为第一目的网址IP1和第二目 的网址IP0相异,比如二者不同或者第二目的网址IP0为空,则启动动态冗余 查询机制,将DNS代理服务器对DNS解析服务器组的查询,由对首选DNS 解析服务器的查询,切换到对其余的多台备选DNS解析服务器进行查询上, 再根据查询结果进行域名解析或风险报警。当进行了风险报警后,用户若忽 略风险报警警告信息,则系统重定向到LDAP服务器的域名解析结果。
本发明实施例提供的一种域名解析方法、域名解析装置及电子设备, 所述方法是一种面向网络个人代理平台的、基于URL重定向和LDAP的 域名解析代理服务,利用网络个人代理服务的高处理带宽的能力,给DNS 做静态或动态冗余备份,一方面能够对域名解析过程进行加密处理,提供 冗余容错机制,以提升域名解析的安全性;另一方面还能有效提高对目的 域名的解析速度,同时有效缓解冗余容错带来的延迟代价。此外,还能够 依托个人代理面向用户个人的特性,实现个性化的DNS查询设置。并且, 本发明实施例的方法是在不改变整体互联网架构框架的前提下解决多种 安全问题,通过使用URL重定向服务的方法,能够在原有的网络协议的 基础上实现对DNS域名解析过程进行加密处理,能够有效抵抗攻击。
在上述实施例的基础上,所述域名解析方法,在获取域名解析请求之 前,还包括:
S100、基于网络个人代理平台预先设立DNS代理服务器,且,所述DNS 代理服务器与所述网络个人代理平台自动建立HTTPS连接。
首先要基于网络个人代理平台预先设立DNS代理服务器,所述DNS代 理服务器基于HTTPS协议工作,在用户需要进行域名解析或者有请求时,所 述DNS代理服务器与用户机之间自动建立HTTPS连接。
在上述实施例的基础上,所述DNS代理服务器采用URL参数形式传递 目的域名。
和,所述DNS代理服务器采用重定向服务,以对域名解析获得的目的网 址进行重定向访问。
所述DNS代理服务器传递目的域名时采用URL参数形式进行。并且, 所述DNS代理服务器采用重定向服务,以对域名解析获得的目的网址进行重 定向访问。并且DNS代理服务器采用URL参数形式传递目域名,本实施例 优选采用URL参数dn,例如以https://[URL重定向服务的地 址]?dn=example.com来传递目的域名。本发明使用HTTPS协议,将请求访问的域名通过URL参数dn发送给DNS代理服务器,并且使用重定向服务的方 式将用户的访问连接跳转到真实的目的IP地址。HTTPS协议作为一种使用 SSL模块的加密通信协议,利用HTTPS协议提供DNS解析,通过传输加密 和身份认证保证了传输过程的安全性,可以运用很多成熟的针对HTTPS服务 的web防护技术,能够避免当前广泛存在的攻击,提升安全性。
图4为本发明第二实施例提供的一种域名解析方法的流程示意图,图 4可以理解为在上述任一实施例的基础上,步骤S103中,所述从DNS解 析服务器组其余的DNS解析服务器中选取多个DNS解析服务器,根据域名 解析请求,同时向所述多个DNS解析服务器进行查询,根据查询结果进行域 名解析或风险报警,具体包括:
S1031、从DNS解析服务器组其余的DNS解析服务器中选取多个DNS 解析服务器,根据域名解析请求,同时向所述多个DNS解析服务器进行查询;
其中,所述DNS解析服务器组就是采用多组的现有技术中的传统解析服 务器(本地DNS递归服务器),是根据实际需求预先设置的,本实施例中优 选设置多组传统解析服务器,每组传统解析服务器中分别包括根DNS服务 器、顶级域名服务器和二级域名服务器,且选定一组传统解析服务器作为首 选DNS服务器,其他组均作为备选DNS服务器,即,从其余所有的备选DNS 服务器中选取多个DNS解析服务器,根据域名解析请求,同时从选择好的多个DNS解析服务器中进行查询。
S1032、根据所述多个DNS解析服务器中各自缓存的网址映射关系,分 别获得多个可能目的网址,从所述多个可能目的网址中筛选出众数目的网址, 将所述众数目的网址出现的次数与预设阈值进行比较;
根据每一台备选DNS解析服务器中缓存的网址映射关系分别获得多个 可能目的网址,并分别记为IP2、IP3……IPn。从所述多个可能目的网址中, 筛选出众数目的网址(出现次数最多的网址),并记录下其出现的次数(也称 票数,此处引入投票机制:将票数/次数与设定阈值作比较再针对性进行处理 的机制),比如,从多个可能目的网址IP2、IP3……IPn组成的网址集合{IP2、 IP3……IPn}中,筛选出出现次数最多的众数目的网址IP,并记录下其出现 的次数,将其出现的次数与预设阈值进行比较。其中预设阈值是根据DNS系 统安全要求等级的设定而预先设定的,且可以随着安全要求等级的变化而进 行调整。
S1033、若所述众数目的网址出现的次数大于等于预设阈值,则将所述众 数目的网址作为真实目的网址,根据所述真实目的网址,进行域名解析;
若所述众数目的网址IP出现的次数大于等于预设阈值,则将所述众数 目的网址作为真实目的网址,所述DNS代理服务器将访问连接请求重定向到 IP这个真实目的网址,从而使用户机安全地成功访问到目的域名对应的真 实IP地址。
S1034、否则,判定域名解析请求中的域名受到了攻击,所述DNS代理 服务器发出DNS风险报警信息。
若所述众数目的网址IP出现的次数小于预设阈值,则判定域名解析请 求中的域名受到了攻击,或者DNS系统某一环节遭受到了攻击,此时利用所 述DNS代理服务器发出DNS风险报警信息,以提醒相关工作人员或者提醒 用户,使其能快速应对攻击。如果用户选择忽略警告,则代理选择保守相信 LDAP中已存在的数据进行重定向。
在上述实施例的基础上,所述LDAP服务器为基于所述DNS代理服务器 本地预先设立的,且所述LDAP服务器的LDAP数据库存储在所述DNS代 理服务器本地。
其中,所述LDAP服务器为基于所述DNS代理服务器本地预先设立的, 且所述LDAP服务器可以是单个的LDAP服务器,也可以是分布式LDAP服 务器集群中的一个或多个服务器。所述LDAP服务器也可以理解为是在所述 DNS代理服务器本地增设的,独立于传统的DNS解析服务器组的LDAP数 据库。所述LDAP服务器用于存储网址映射关系,以对传统DNS解析服务器 组提供静态冗余容错。其采用LDAP数据库,数据存储结构与传统的DNS树 形结构一致,即逐层拆分域名作为LDAP的唯一标识符(Distinguished Name, 简称DN),每层均用ou标识,而IP地址与其他信息存在叶子条目的属性中。 并且所述LDAP服务器的LDAP数据库存储在所述DNS代理服务器本地, 所述LDAP数据库随着每次域名解析完成后进行数据库更新。
在上述实施例的基础上,所述LDAP数据库按照预设的更新策略,在每 次域名解析完成后自动进行更新;
和,所述更新策略采用基于DNS ZONE关联的GDSF-T缓存更新算法。
本地LDAP存储空间有限,为避免浪费存储资源,需对LDAP中的数 据设计更新算法,当LDAP中数据量达到上界时,将存储价值不大的数据更 新为高价值的数据。根据用户的访问统计特性来动态替换缓存内容,保证 LDAP数据的高命中率与低时延性。
所述LDAP数据库的预设的更新策略,所述更新策略采用基于DNS ZONE关联的GDSF-T缓存更新算法,该算法基于一种改进后的GDSF算法 (Greedy Dual Size Frequency算法),简称为GDSF-T算法,并做了针对DNS 缓存特性的优化处理,具体说明如下:
针对用户对于DNS系统的访问,我们同时考虑时间相关性与空间相关 性。时间相关性即为用户对某一条的DNS访问频次;而空间相关性定义为多 条DNS记录之间的关联度,此处将同一个DNS ZONE内的记录看做强相关。 在LDAP树形结构中,DNS ZONE体现为同在一根树枝上的诸多叶子节点。
首先对同一个DNS ZONE下的DNS记录(比如www.tsinghua.edu.cn;info.tsinghua.edu.cn;mails.tsinghua.edu.cn)看做一组记录,后续操作均以组 为单位,组内DNS记录共享价值函数;
定义每一组缓存记录的价值函数,依照GDSF-T算法,有:
Figure BDA0002770807270000121
由于在DNS缓存记录中,每条缓存的缓存大小size(k)相差不大,而缓存 价值上,考虑到解析不同的国内外不同的域名时延相差很大(如测试中,在 国内对中国知网的域名www.cnki.net做DNS域名解析,耗时0.004s,对IEEE 官网ieeexplorer.ieee.org做DNS域名解析,耗时0.061s,时延相差15倍以上), 则value主要考虑时延因素,设定为对该条域名做DNS域名解析的时延t(k) 故本实施例中,价值函数修订为:
Figure BDA0002770807270000131
其中:L为膨胀因子,初值为0,每次有新的记录替换掉旧的记录时,则 L等于被替换出去的记录中最小的V(k);M为该组记录中的记录条数。Fr(k) 为该组记录内所有M条DNS记录访问的次数和,T为该组记录存在的时间, 即缓存替换发生时的系统时间Tsys与该缓存首次被记录时的时间Tstore之差(当 Tsys=Tstore时设T=1)。t为该组记录中任一条记录最近一次被写入时的时延(由 于同一个DNS ZONE中的数据一般由一台服务器或者物理距离很近的多台服 务器管理,则可以认为其中任一条数据延迟均可代表该组数据的整体延迟情况)。
新记录写入缓存时,替换流程如下:
(1)当有新的记录需要写入LDAP时,如果LDAP空间未满,则直接 写入。
(2)若LDAP空间已满,则查询缓存中每一组记录的价值函数V(k), 使用当前记录替代V(k)最小的那一组记录。若只替换一组记录余出的空间不 足,则替换两组,以此类推,直至能够有空间写入。从LDAP树形结构上看, 则为裁剪掉存储价值不大的分枝,生长出高价值的分枝。
当缓存未命中时,使用冗余容错技术提高安全性的代价必然会降低解析 速度。在冗余容错技术上,当前有M-DNS技术是每次解析过程均向多个DNS 服务器发出请求,获取多个数据来源来保证安全性,而请求多源数据势必会 带来较高的处理延迟与较大的服务器开销。本实施例使用LDAP搭建本地数 据库,正常情况下,只比对首选DNS与LDAP的解析结果;若两者不一致, 则再向备选DNS服务器请求多个解析数据,通过一定算法选取信任的结果, 并写入LDAP数据库。这样,相当于LDAP中的本地数据本身就来源余多个 DNS服务器,则可在实现冗余容错的基础上,保证较高的解析速度。
在上述各实施例的基础上,所述域名解析请求包括直接域名解析请求、 对域名模糊查找请求和自然语言搜索域名请求。
也可以理解为,本发明各实施例提出的域名解析方法可以实现至少包括 直接域名解析、对域名模糊查找和自然语言搜索域名的多种域名解析模式。 其中,直接域名解析是基于传统DNS解析的基本功能,直接根据网址映射关 系中的域名和IP地址的映射信息来进行域名解析,而对域名模糊查找和自然 语言搜索域名则是两种依托LDAP服务器集群的高级搜索功能。并且本方法 能够根据实际需求,使用不同的参数来选择三种解析模式中的任一种模式。
三种域名解析模式详细说明如下:
(1)直接域名解析,相当于传统的DNS解析。输入准确的目的域名, 直接重定向到对应服务器IP地址上(是指目的域名实际上直接指向的服务器 的IP地址),从而实现访问。如:对目的域名www.tsinghua.edu.cn做DNS域 名解析,得到IP地址166.111.4.100,则直接重定向到对应服务器IP地址 166.111.4.100上,即可访问该目的域名。
(2)对域名模糊查找,是指记不清具体域名时进行的模糊搜索,比如, 输入与实际域名差不多的www.qinghua.edu.cn进行搜索,就能获对 www.tsinghua.edu.cn实际域名的搜索建议,采用该搜索建议再次进行搜索,则 可以准确访问到该目的域名实际指向的IP地址。
(3)自然语言搜索域名,是指像搜索引擎一样,直接输入人为可识别的 如汉字或英语等自然语言,就能获得相应目的域名以及该目的域名对应的IP 地址。为了便于理解,此处举例说明,比如,输入“清华大学”,直接就能获 得清华大学的域名www.tsinghua.edu.cn及其对应的IP地址166.111.4.100,从 而使得能够准确访问到目的域名指向的IP地址。
具体地,用户机访问DNS代理服务器时,DNS代理服务器以不同的URL 参数来选择具体的域名解析模式,同时用户机发出域名解析请求。本实施例 中DNS-URL范式定义为:
DNS-URL=<scheme>://<hostport>/<pattern>=<content>其中:
·scheme="https"|"http"表示选择https或http协议进行传输,本实施例使用https
·hostport为DNS代理服务器的IP地址与开放端口
·pattern="dn"|"fdn"|"desc"表示选择域名解析模式。dn为直接域名解析;fdn为对域名模糊 查找;desc为自然语言搜索域名。
·content表示与域名解析模式(由pattern参数确定)配套的域名解析内容。
eg:假定该DNS代理服务器的IP地址为166.111.224.13,则各域名解析模式对应的DNS-URL范式分别为:
直接域名解析https://166.111.224.13?dn=www.tsinghua.edu.cn
域名的模糊查找https://166.111.224.13?fdn=www.qinghua.edu.cn
自然语言搜索https://166.111.224.13?desc=清华大学官网
更具体地,域名的模糊查找和自然语言搜索这两种高级搜索模式的实现 流程为:DNS代理服务器收到用户机域名解析请求后,根据参数的不同选择 使用哪一种域名解析模式,如果为直接解析模式,则按照传统DNS解析流程 进行操作。若为两种高级搜索模式中的某一种,则需要先访问LDAP服务器 集群,依赖LDAP服务器集群对条目与其属性的搜索功能,来获取搜索结果。 DNS代理服务器收到LDAP服务器集群的查询结果后,为保证安全性,并不 直接对用户机到目的网址的连接进行重定向,而是按照LDAP服务器集群反 馈的查询结果,同时再向DNS解析服务器组的首选DNS服务器进行查询, 并将二者的查询结果进行比对,若比对结果为一致,则确定该查询结果正是 目的域名真实对应的IP地址,则向用户返回结果,使得用户能够安全成功地 进行访问;若比对结果不一致,则在DNS解析服务器组中切换到多台备选 DNS服务器中进行查询,并从查询结果中选取出现次数最多的众数目的网址, 记录其出现的次数,将其出现的次数与预设阈值进行比较判别,根据判断结 果确定真实目的网址或者发出DNS系统被攻击的报警信息,并在相应时间内 更新LDAP数据库。
并且,DNS代理服务器采用的重定向服务重点在于用户对重定向服务器 的初始访问。具体地,本实施例中可以使用DNS-URL访问重定向服务器。 在上述DNS-URL定义为=<scheme>://<hostport>/<pattern>=<content>的基 础上,其中的hostport为DNS代理服务器的IP地址与开放端口。此处提供两 种使用场景下对于hostport的值如何获取的解决办法:
(1)面向个人代理的初始访问办法:为网络个人代理程序提供DNS代 理技术,可将DNS代理服务器的IP与开放端口写入个人代理程序中,以提 供便捷的访问;
(2)面向用户的初始访问办法:为用户的任意个人终端提供DNS代理 服务。此时,对于PC级,可利用本机hosts文件实现便于记忆的重定向服务 器域名与重定向服务器IP的映射;对于移动终端,则可使用短信业务(特别 是5G短消息)提供登录入口提示。
图5为本发明实施例提出的域名解析方法的全过程的工作原理示意图, 图6为本发明实施例提出的域名解析方法的全过程的流程示意图。如图5和 图6所示,本发明实施例提出的域名解析方法的全过程以实例说明如下:
首先,用户机(个人代理服务端)试图访问某一目的域名,用户通过个 人代理上网,则向个人代理平台上的DNS代理服务器发出域名解析请求。则 首先查询浏览器本地是否缓存有网址映射关系,网址映射关系指域名和IP地 址的映射信息。(当然,对于浏览器本地的查询过程,属于成熟的技术,不 在本申请保护范围内),若浏览器本地缓存有域名与IP地址的对应关系,且 其安全可用,则浏览器请求相应IP地址,域名解析完成,用户可通过相应IP 地址直接访问目的域名指向的服务器,如图5中①→⑥。通常设置此过程发 生在用户机内部。为保证安全性,将浏览器本地hosts文件设置为只读,以避 免本地DNS被欺骗攻击。
若浏览器本地未缓存网址映射关系,则用户机向DNS代理服务器发送域 名解析请求,并向DNS代理服务器本地进行查询,若所述DNS代理服务器 本地缓存有网址映射关系,则根据所述网址映射关系进行域名解析。其中, DNS代理服务器与用户建立HTTPS连接,并以URL参数dn的形式传递目 的域名,如https://[URL重定向服务的地址]?dn=example.com。对应地,在图 6中,DNS代理服务器与用户建立HTTPS连接,根据URL参数来判断选择 域名解析模式,如果是使用dn参数,则选择直接域名解析模式,如果是使用 fdn参数或desc参数,则对应选择两种高级搜索模式的域名解析模式:对域 名模糊查找或者自然语言搜索域名。
选择直接域名解析模式时,结合图5,用户机向DNS代理服务器发出 域名解析请求,根据域名解析请求向DNS代理服务器本地进行查询,判断 是否缓存有网址映射关系。若查询到所述DNS代理服务器本地cache是缓存 有网址映射关系,则调用该网址映射关系,根据该网址映射关系进行域名解 析,并根据解析出来的IP地址对用户机进行连接重定向,从而使用户机安全 地成功访问到该域名对应的真实IP地址,域名解析过程完成,全流程结束, 对应地则如图5中①→⑤的过程。
若查询结果为所述DNS代理服务器本地未缓存网址映射关系,则启动静 态冗余查询机制,包括:从DNS解析服务器组中选取一个DNS解析服务器, 根据域名解析请求,同时向所述DNS解析服务器和预设的LDAP服务器(图 5中所示LDAP服务器集群中的一个或多个LDAP服务器)进行查询,比对 二者的查询结果,若一致,则进行域名解析。
从DNS解析服务器组中随机选取一个DNS解析服务器作为首选DNS解 析服务器,根据域名解析请求,同时向首选DNS解析服务器和LDAP服务器 进行查询,均缓存有网址映射关系,则在DNS解析服务器组中,根据首选 DNS解析服务器中缓存的网址映射关系确定目的域名对应的第一目的网址, 记为IP1。同时,根据LDAP服务器中缓存的网址映射关系确定目的域名对 应的第二目的网址,记为IP0
其中,向DNS解析服务器进行查询以及向LDAP服务器进行查询的操 作在图6中的顺序可以交换,其本质是同时段进行的。然后判断第一目的网 址IP1和第二目的网址IP0是否一致。由此能够避免仅依靠传统DNS解析过 程而存在的安全隐患。
若比对结果为第一目的网址IP1和第二目的网址IP0相同,则确定域名解 析获得的目的网址为第一目的网址IP1,(此时IP1=IP0),则所述DNS代理服 务器将访问连接请求重定向到所述第一目的网址IP1,从而使用户机安全地成 功访问到目的域名对应的真实IP地址,并将其写入到DNS代理服务器本地 cache,域名解析完成,如图5中的①→②→③→⑤。
若比对结果为第一目的网址IP1和第二目的网址IP0相异,比如二者不同 或者第二目的网址IP0为空,比如二者不同或者第二目的网址IP0为空,则启 动动态冗余查询机制,将DNS代理服务器对DNS解析服务器组的查询,由 对首选DNS解析服务器的查询,切换到对其余的多台备选DNS解析服务器 进行查询上。,根据每一台备选DNS解析服务器中缓存的网址映射关系分别 获得多个可能目的网址,并分别记为IP2、IP3……IPn。从所述多个可能目的网址中,筛选出众数目的网址(出现次数最多的网址),并记录下其出现的次 数(也称票数,此处引入投票机制:将票数/次数与设定阈值作比较再针对性 进行处理的机制),比如,从多个可能目的网址IP2、IP3……IPn组成的网址集 合{IP0、IP1、IP2、IP3……IPn}中,筛选出出现次数最多的众数目的网址IP, 并记录下其出现的次数,将其出现的次数与预设阈值进行比较:
若IP的次数≥预设阈值,则判定该众数目的网址IP为真实目的网址, 所述DNS代理服务器将用户机的访问连接请求重定向到IP这个真实目的网 址上,从而使用户机安全地成功访问到目的域名对应的真实IP地址。同时还 需要更新LDAP服务器集群中的数据,以及更新DNS代理服务器的本地cache 的数据。如图5中①→②→③→④→⑤。
若IP的次数<预设阈值,则判定域名解析请求中的目的域名受到了 攻击,或者DNS系统某一环节遭受到了攻击,此时利用所述DNS代理服务 器发出DNS风险报警信息,以提醒相关工作人员或者提醒用户,使其能快速 应对攻击。进而结束流程。
而若使用fdn参数或desc参数,选择两种高级搜索模式中的任一种域 名解析模式,比如选择对域名模糊查找或者自然语言搜索域名时,如图6 所示,需要根据域名解析模式的具体类型生成查询语句,根据查询语句向 LDAP服务器进行查询,依赖LDAP服务器对条目与其属性的搜索功能,来 获取搜索结果。DNS代理服务器收到LDAP服务器的查询结果后对查询结果 进行解析,如果查询结果为无网址映射关系的记录或者出现其他错误,则返回错误信息,结束流程。若查询结果为查询到符合条件的域名与IP网址,则 同样可以记该IP网址为IP0,以切入到同向DNS解析服务器组中的首选服务 器查询获得的第一目的网址IP1进行比较的过程。即,为保证安全性,此时并 不直接对用户机到真实目的网址的连接进行重定向,而是结合与向DNS解析 服务器组查询结果的比较来进行操作,具体按照LDAP服务器反馈的查询结 果,同时再向DNS解析服务器组的首选DNS服务器进行查询,并将二者的查询结果进行比对,若比对结果为一致,则确定该查询结果正是目的域名真 实对应的IP地址,则向用户返回结果,使得用户能够安全成功地进行访问; 若比对结果不一致,则在DNS解析服务器组中切换到多台备选DNS服务器 中进行查询,并从查询结果中选取出现次数最多的众数目的网址,记录其出 现的次数,将其出现的次数与预设阈值进行比较判别,根据判断结果确定真 实目的网址或者发出DNS系统被攻击的报警信息。
本发明实施例提供的一种域名解析方法、域名解析装置及电子设备, 所述方法是一种面向网络个人代理平台的、基于URL重定向和LDAP的 域名解析代理服务,利用网络个人代理服务的高处理带宽的能力,给DNS 做静态或动态冗余备份,一方面能够对域名解析过程进行加密处理,提供 冗余容错机制,以提升域名解析的安全性;另一方面还能有效提高对目的 域名的解析速度,同时有效缓解冗余容错带来的延迟代价。此外,还能够 依托个人代理面向用户个人的特性,实现个性化的DNS查询设置。
此处对DNS代理服务器架构组成和LDAP服务器集群架构组成分别进行 详细说明。
(1)DNS代理服务器架构组成:
DNS代理服务器采用集成了Lua语言与ssl模块的NGINX服务器,lua 语言用于实现灵活的操作,ssl模块用于提供https连接。
此外,由于NGINX服务器本身的模块化结构,使得DNS代理服务器有 很高的可扩展性与灵活性,可按照实际需求配置模块数量,并可方便的升级 更新,具体如下:
①能够提供基于用户地理位置的DNS服务:如果某一域名对应多个IP 地址,则DNS代理服务器可安装IP2location模块解析用户IP与服务器IP, 以获取用户与服务器的地理位置,并选取最近的服务器对用户提供访问。
②增加网站应用级入侵防御系统(Web Application Firewall,WAF):当 今网络技术对于提供http/https服务的web服务器的安全防护措施相对成熟。 而本发明各实施例通过https协议提供DNS解析,则可以运用很多当前已有 的web防护技术。比如ModSecurity模块是一款功能强大的WAF模块,可直 接编译到NGINX中,为服务器提供安全防护。
(2)LDAP服务器集群的架构组成:
图7为本发明实施例中LDAP服务器集群的存储结构示意图,LDAP 服务器集群也用于存储域名与IP的映射信息,以对DNS解析服务器组提供 冗余容错。其采用分布式的LDAP数据库,数据存储结构与传统的DNS树形 结构一致,即逐层拆分域名作为ldap的唯一标识符DN,每层均用ou标识,而 ip地址与其他信息存在叶子条目的属性中,具体的结构参考传统的DNS树形 结构,此处不作赘述。
本发明各实施例中新定义的对象类(objectclass)有:
Figure BDA0002770807270000201
结合图7所示,若使用直接域名解析模式,即使用传统的DNS解析过程, LDAP服务器集群依照属性结构直接定位到叶子节点。如查询www.tsinghua.edu.cn,则按照dn路径:ou=cn,ou=edu,ou=tsinghua,ou=www 获取IP地址166.111.4.100。
若使用高级搜索模式中的任一种,比如使用对域名模糊查找模式,则LDAP 对description属性或者Domain Name属性使用LDAP自带的“~=”的匹配模 式,进行相似搜索。
第二方面,本发明实施例提供了一种域名解析装置,所述装置用于执行 与上述实施例中的域名解析方法,并且其工作原理和工作流程与上述域名解 析方法的工作原理和工作流程均相一致,故此处不再赘述。图8为本发明实 施例提供的一种域名解析装置的结构示意图,如图9所示,所述域名解析装 置包括:本地查询模块801、静态冗余查询模块802和动态冗余查询模块803, 其中:
本地查询模块801,用于获取域名解析请求,根据域名解析请求向预 设的DNS代理服务器进行本地缓存查询,若所述DNS代理服务器本地缓 存有网址映射关系,则根据所述网址映射关系进行域名解析;
静态冗余查询模块802,用于若所述DNS代理服务器本地未缓存网址 映射关系,则启动静态冗余查询机制,包括:从DNS解析服务器组中选取一 个DNS解析服务器,根据域名解析请求,同时向所述DNS解析服务器和预 设的LDAP服务器进行查询,比对二者的查询结果,若一致,则进行域名解 析;
动态冗余查询模块803,用于若二者的查询结果不一致,则启动动态冗 余查询机制,包括:从DNS解析服务器组其余的DNS解析服务器中选取多 个DNS解析服务器,根据域名解析请求,同时向所述多个DNS解析服务器 进行查询,根据查询结果进行域名解析或风险报警。
本发明实施例提供的域名解析装置,各模块依次连接,且相互配合,共 同提供一种面向网络个人代理的、基于URL重定向和与LDAP的域名解 析代理服务,利用网络个人代理服务的高处理带宽的能力,给DNS做静 态或动态冗余备份,一方面能够对域名解析过程进行加密处理,提供冗余 容错机制,以提升域名解析的安全性;另一方面还能有效提高对目的域名 的解析速度,同时有效缓解冗余容错带来的延迟代价。此外,还能够依托 个人代理面向用户个人的特性,实现个性化的DNS查询设置。
第三方面,本发明实施例提供了一种电子设备,图9是本发明实施例 提供的一种电子设备的结构示意图,如图9所示,所述电子设备包括:处 理器(processor)901、通信接口(Communications Interface)902、存储器 (memory)903和通信总线904,其中,处理器901,通信接口902,存储器903 通过通信总线904完成相互间的通信。所述处理器901可以调用存储器903 中的计算机程序或逻辑指令,以实现域名解析方法,所述方法包括:
获取域名解析请求,根据域名解析请求向预设的DNS代理服务器进 行本地缓存查询,若所述DNS代理服务器本地缓存有网址映射关系,则根 据所述网址映射关系进行域名解析;
若所述DNS代理服务器本地未缓存网址映射关系,则启动静态冗余查询 机制,包括:从DNS解析服务器组中选取一个DNS解析服务器,根据域名 解析请求,同时向所述DNS解析服务器和预设的LDAP服务器进行查询,比 对二者的查询结果,若一致,则进行域名解析;
若二者的查询结果不一致,则启动动态冗余查询机制,包括:从DNS解 析服务器组其余的DNS解析服务器中选取多个DNS解析服务器,根据域名 解析请求,同时向所述多个DNS解析服务器进行查询,根据查询结果进行域 名解析或风险报警。
此外,上述的存储器903中的逻辑指令可以通过软件功能单元的形式实现 并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。 基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部 分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产 品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是 个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述域名解 析方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
第四方面,本发明实施例提供了一种非暂态计算机可读存储介质,其 上存储有计算机程序,所述计算机程序被处理器执行时实现如上所述的域名 解析方法,所述方法包括:
获取域名解析请求,根据域名解析请求向预设的DNS代理服务器进 行本地缓存查询,若所述DNS代理服务器本地缓存有网址映射关系,则根 据所述网址映射关系进行域名解析;
若所述DNS代理服务器本地未缓存网址映射关系,则启动静态冗余查询 机制,包括:从DNS解析服务器组中选取一个DNS解析服务器,根据域名 解析请求,同时向所述DNS解析服务器和预设的LDAP服务器进行查询,比 对二者的查询结果,若一致,则进行域名解析;
若二者的查询结果不一致,则启动动态冗余查询机制,包括:从DNS解 析服务器组其余的DNS解析服务器中选取多个DNS解析服务器,根据域名 解析请求,同时向所述多个DNS解析服务器进行查询,根据查询结果进行域 名解析或风险报警。
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明 的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或 者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络 单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例 方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以 理解并实施。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实 施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬 件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部 分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可 读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台 计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施 例或者实施例的某些部分所述的方法。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其 限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术 人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或 者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技 术方案的本质脱离本发明各实施例技术方案的精神和范围。

Claims (10)

1.一种域名解析方法,其特征在于,包括:
获取域名解析请求,根据域名解析请求向预设的DNS代理服务器进行本地缓存查询,若所述DNS代理服务器本地缓存有网址映射关系,则根据所述网址映射关系进行域名解析;
若所述DNS代理服务器本地未缓存网址映射关系,则启动静态冗余查询机制,包括:从DNS解析服务器组中选取一个DNS解析服务器,根据域名解析请求,同时向所述DNS解析服务器和预设的LDAP服务器进行查询,比对二者的查询结果,若一致,则进行域名解析;
若二者的查询结果不一致,则启动动态冗余查询机制,包括:从DNS解析服务器组其余的DNS解析服务器中选取多个DNS解析服务器,根据域名解析请求,同时向所述多个DNS解析服务器进行查询,根据查询结果进行域名解析或风险报警。
2.根据权利要求1所述的域名解析方法,其特征在于,在获取域名解析请求之前,还包括:
基于网络个人代理平台预先设立DNS代理服务器,且,所述DNS代理服务器与所述网络个人代理平台自动建立HTTPS连接。
3.根据权利要求2所述的域名解析方法,其特征在于,所述DNS代理服务器采用URL参数形式传递目的域名;
和,所述DNS代理服务器采用重定向服务,以对域名解析获得的目的网址进行重定向访问。
4.根据权利要求1-3任一所述的域名解析方法,其特征在于,所述从DNS解析服务器组其余的DNS解析服务器中选取多个DNS解析服务器,根据域名解析请求,同时向所述多个DNS解析服务器进行查询,根据查询结果进行域名解析或风险报警,具体包括:
从DNS解析服务器组其余的DNS解析服务器中选取多个DNS解析服务器,根据域名解析请求,同时向所述多个DNS解析服务器进行查询;
根据所述多个DNS解析服务器中各自缓存的网址映射关系,分别获得多个可能目的网址,从所述多个可能目的网址中筛选出众数目的网址,将所述众数目的网址出现的次数与预设阈值进行比较;其中,所述众数目的网址为出现次数最多的网址;
若所述众数目的网址出现的次数大于等于预设阈值,则将所述众数目的网址作为真实目的网址,根据所述真实目的网址,进行域名解析;
否则,判定域名解析请求中的域名受到了攻击,所述DNS代理服务器发出DNS风险报警信息。
5.根据权利要求1所述的域名解析方法,其特征在于,所述LDAP服务器为基于所述DNS代理服务器本地预先设立的,且所述LDAP服务器的LDAP数据库存储在所述DNS代理服务器本地。
6.根据权利要求1所述的域名解析方法,其特征在于,所述LDAP数据库按照预设的更新策略,在每次域名解析完成后自动进行更新;
和,所述更新策略采用基于DNS ZONE关联的GDSF-T缓存更新算法。
7.根据权利要求1所述的域名解析方法,其特征在于,所述域名解析请求包括直接域名解析请求、对域名模糊查找请求和自然语言搜索域名请求。
8.一种域名解析装置,其特征在于,包括:
本地查询模块,用于获取域名解析请求,根据域名解析请求向预设的DNS代理服务器进行本地缓存查询,若所述DNS代理服务器本地缓存有网址映射关系,则根据所述网址映射关系进行域名解析;
静态冗余查询模块,用于若所述DNS代理服务器本地未缓存网址映射关系,则启动静态冗余查询机制,包括:从DNS解析服务器组中选取一个DNS解析服务器,根据域名解析请求,同时向所述DNS解析服务器和预设的LDAP服务器进行查询,比对二者的查询结果,若一致,则进行域名解析;
动态冗余查询模块,用于若二者的查询结果不一致,则启动动态冗余查询机制,包括:从DNS解析服务器组其余的DNS解析服务器中选取多个DNS解析服务器,根据域名解析请求,同时向所述多个DNS解析服务器进行查询,根据查询结果进行域名解析或风险报警。
9.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至7任一项所述的域名解析方法。
10.一种非暂态计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至7任一项所述的域名解析方法。
CN202011248394.4A 2020-11-10 2020-11-10 域名解析方法、域名解析装置及电子设备 Active CN112600868B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011248394.4A CN112600868B (zh) 2020-11-10 2020-11-10 域名解析方法、域名解析装置及电子设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011248394.4A CN112600868B (zh) 2020-11-10 2020-11-10 域名解析方法、域名解析装置及电子设备

Publications (2)

Publication Number Publication Date
CN112600868A CN112600868A (zh) 2021-04-02
CN112600868B true CN112600868B (zh) 2021-11-09

Family

ID=75182779

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011248394.4A Active CN112600868B (zh) 2020-11-10 2020-11-10 域名解析方法、域名解析装置及电子设备

Country Status (1)

Country Link
CN (1) CN112600868B (zh)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113810516B (zh) * 2021-09-14 2023-12-19 杭州安恒信息安全技术有限公司 真实ip的查找方法、系统、可读存储介质及计算机设备
CN114205330B (zh) * 2021-11-09 2024-08-13 北京快乐茄信息技术有限公司 域名解析方法、域名解析装置、服务器以及存储介质
CN114285821B (zh) * 2021-11-17 2024-08-02 奇安信科技集团股份有限公司 一种域名解析方法、装置、电子设备、存储介质及产品
CN114221934B (zh) * 2021-12-13 2024-05-07 牙木科技股份有限公司 域名解析缓存方法、dns服务器及计算机可读存储介质
CN114465928B (zh) * 2022-04-12 2022-06-14 北京智象信息技术有限公司 一种基于dns服务模拟环境下的测试方法
CN115396397B (zh) * 2022-04-13 2023-07-14 中国人民解放军国防科技大学 基于转发关系确定缓存域名系统服务范围的方法和装置
CN117579595B (zh) * 2024-01-19 2024-05-24 上海卫星互联网研究院有限公司 一种域名解析方法、装置及电子设备

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1405495A2 (en) * 2001-07-06 2004-04-07 Telefonaktiebolaget LM Ericsson (publ) Method and apparatus for resolving an entity identifier into an internet address using a domain name system (dns) server
CN103701957A (zh) * 2014-01-14 2014-04-02 互联网域名系统北京市工程研究中心有限公司 Dns递归方法及其系统
CN106302384A (zh) * 2016-07-25 2017-01-04 中国联合网络通信集团有限公司 Dns报文处理方法及装置
CN110572390A (zh) * 2019-09-06 2019-12-13 深圳平安通信科技有限公司 检测域名劫持的方法、装置、计算机设备和存储介质

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080060054A1 (en) * 2006-09-05 2008-03-06 Srivastava Manoj K Method and system for dns-based anti-pharming

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1405495A2 (en) * 2001-07-06 2004-04-07 Telefonaktiebolaget LM Ericsson (publ) Method and apparatus for resolving an entity identifier into an internet address using a domain name system (dns) server
CN103701957A (zh) * 2014-01-14 2014-04-02 互联网域名系统北京市工程研究中心有限公司 Dns递归方法及其系统
CN106302384A (zh) * 2016-07-25 2017-01-04 中国联合网络通信集团有限公司 Dns报文处理方法及装置
CN110572390A (zh) * 2019-09-06 2019-12-13 深圳平安通信科技有限公司 检测域名劫持的方法、装置、计算机设备和存储介质

Also Published As

Publication number Publication date
CN112600868A (zh) 2021-04-02

Similar Documents

Publication Publication Date Title
CN112600868B (zh) 域名解析方法、域名解析装置及电子设备
US9514243B2 (en) Intelligent caching for requests with query strings
US8073972B2 (en) System and method for location discovery based on DNS
CN104917851B (zh) 信息处理方法及dns缓存服务器
US8606926B2 (en) Recursive DNS nameserver
WO2018121331A1 (zh) 攻击请求的确定方法、装置及服务器
US7827280B2 (en) System and method for domain name filtering through the domain name system
CN105162900B (zh) 一种多节点协作的域名解析和缓存方法及系统
CN103812849B (zh) 一种本地缓存更新方法、系统、客户端及服务器
US10735461B2 (en) Method for minimizing the risk and exposure duration of improper or hijacked DNS records
US8434156B2 (en) Method, access node, and system for obtaining data
US20090055929A1 (en) Local Domain Name Service System and Method for Providing Service Using Domain Name Service System
CN108616490A (zh) 一种网络访问控制方法、装置及系统
US20070226371A1 (en) Method and system for class-based management of dynamic content in a networked environment
US20100064047A1 (en) Internet lookup engine
CN102737119B (zh) 统一资源定位符的查找方法、过滤方法和相关设备及系统
US8874708B2 (en) Location discovery based on DNS
CN104951480B (zh) 一种cdn系统中资源存储的索引装置及方法
JP5415390B2 (ja) フィルタリング方法、フィルタリングシステム及びフィルタリングプログラム
JP2002503001A (ja) 最適化されたネットワーク・リソース・ロケーション
CN106603713A (zh) 会话管理方法和系统
KR20050030542A (ko) 클라이언트 기반 웹 크롤링 시스템 및 방법
CN110430188A (zh) 一种快速url过滤方法及装置
US20140052817A1 (en) Method, apparatus, and network system for acquiring content
JP2002525749A (ja) インターネットキャッシングシステム、方法およびそのシステムの構成

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant