《通过域名服务提供者进行DNS重定向的方法和装置.pdf》由会员分享,可在线阅读,更多相关《通过域名服务提供者进行DNS重定向的方法和装置.pdf(9页珍藏版)》请在专利查询网上搜索。
1、(10)申请公布号 CN 102821171 A (43)申请公布日 2012.12.12 C N 1 0 2 8 2 1 1 7 1 A *CN102821171A* (21)申请号 201210312684.X (22)申请日 2012.08.29 H04L 29/12(2006.01) (71)申请人网宿科技股份有限公司 地址 200030 上海市徐汇区斜土路2669号 15楼 (72)发明人洪珂 郑明 (74)专利代理机构上海专利商标事务所有限公 司 31100 代理人施浩 (54) 发明名称 通过域名服务提供者进行DNS重定向的方法 和装置 (57) 摘要 本发明公开了通过域名服务提。
2、供者(NSP)进 行DNS重定向的方法和装置,避免了禁用系统原 有NSP而导致的无法上网的问题。其技术方案为: 网络应用程序调用域名解析API;域名解析API内 部调用多个NSP,其中用于DNS重定向的第一NSP 的安装位置位于系统原有的NSP的上方相邻位 置,用于DNS重定向的第二NSP的安装位置位于 系统原有的NSP的下方相邻位置;域名解析API 对各个NSP返回的结果做排序,此时第一NSP返 回的结果或者第二NSP返回的结果在系统原有的 NSP返回的结果之前;网络应用程序得到位于系 统原有的NSP返回的结果之前的第一NSP或者第 二NSP的返回结果。 (51)Int.Cl. 权利要求书1。
3、页 说明书4页 附图3页 (19)中华人民共和国国家知识产权局 (12)发明专利申请 权利要求书 1 页 说明书 4 页 附图 3 页 1/1页 2 1.一种通过域名服务提供者进行DNS重定向的方法,包括: 网络应用程序调用域名解析API; 域名解析API内部调用多个域名服务提供者,其中用于DNS重定向的第一域名服务提 供者的安装位置位于系统原有的域名服务提供者的上方相邻位置,用于DNS重定向的第二 域名服务提供者的安装位置位于系统原有的域名服务提供者的下方相邻位置; 域名解析API对各个域名服务提供者返回的结果做排序,此时第一域名服务提供者返 回的结果或者第二域名服务提供者返回的结果在系统原。
4、有的域名服务提供者返回的结果 之前; 网络应用程序得到位于系统原有的域名服务提供者返回的结果之前的第一域名服务 提供者或者第二域名服务提供者的返回结果。 2.根据权利要求1所述的通过域名服务提供者进行DNS重定向的方法,其特征在于,域 名解析API根据域名服务提供者的安装顺序的升序对各个域名服务提供者返回的结果进 行排序。 3.根据权利要求1所述的通过域名服务提供者进行DNS重定向的方法,其特征在于,域 名解析API根据域名服务提供者的安装顺序的降序对各个域名服务提供者返回的结果进 行排序。 4.根据权利要求1所述的通过域名服务提供者进行DNS重定向的方法,其特征在于,该 方法在支持IPv6的。
5、系统上运行时,域名服务提供者在返回IPv4地址时先将IPv4地址转化 为IPv6地址后再返回。 5.一种通过域名服务提供者进行DNS重定向的装置,包括: API调用模块,由网络应用程序调用域名解析API; 域名服务提供者调用模块,连接API调用模块,域名解析API内部调用多个域名服务提 供者,其中用于DNS重定向的第一域名服务提供者的安装位置位于系统原有的域名服务提 供者的上方相邻位置,用于DNS重定向的第二域名服务提供者的安装位置位于系统原有的 域名服务提供者的下方相邻位置; 排序模块,连接域名服务提供者调用模块,域名解析API对各个域名服务提供者返回 的结果做排序,此时第一域名服务提供者返。
6、回的结果或者第二域名服务提供者返回的结果 在系统原有的域名服务提供者返回的结果之前; 重定向地址返回模块,连接排序模块,网络应用程序得到位于系统原有的域名服务提 供者返回的结果之前的第一域名服务提供者或者第二域名服务提供者的返回结果。 6.根据权利要求5所述的通过域名服务提供者进行DNS重定向的装置,其特征在于,在 排序模块中,域名解析API根据域名服务提供者的安装顺序的升序对各个域名服务提供者 返回的结果进行排序。 7.根据权利要求5所述的通过域名服务提供者进行DNS重定向的装置,其特征在于,在 排序模块中,域名解析API根据域名服务提供者的安装顺序的降序对各个域名服务提供者 返回的结果进行。
7、排序。 8.根据权利要求5所述的通过域名服务提供者进行DNS重定向的装置,其特征在于,该 装置在支持IPv6的系统上运行时,域名服务提供者在返回IPv4地址时先将IPv4地址转化 为IPv6地址后再返回。 权 利 要 求 书CN 102821171 A 1/4页 3 通过域名服务提供者进行 DNS 重定向的方法和装置 技术领域 0001 本发明涉及一种DNS劫持技术,尤其涉及在客户端针对应用程序的DNS重定向技 术。 背景技术 0002 DNS劫持/重定向技术是指介入域名解析过程,在解析某个域名时,可以返回自己 指定的地址,这项技术可以用于网页加速。 0003 最常见的手段是把想重定向的域名和。
8、指定的地址写入hosts文件中,这是一种基 本但是不灵活的方法,也容易被安全软件阻止。 0004 还有一种方法是在本机抓取DNS请求包,然后分析,并伪造回应包。这种方法比较 灵活,但是无法区分是哪个应用程序发出的请求。 0005 可以区分应用程序的已知方案是实现一个NSP(域名服务提供者,Namespace Service Provider),安装后禁用系统原有的NS DNS类型的NSP。这个方案的不足之处是需 要禁用原有NSP,如果新安装的NSP文件丢失或者和其它第三方NSP冲突,很容易导致系统 中没有可用于解析DNS的NSP,最终是用户无法正常上网。 发明内容 0006 本发明的目的在于解。
9、决上述问题,提供了一种通过域名服务提供者进行DNS重定 向的方法,避免了禁用系统原有NSP而导致的无法上网的问题。 0007 本发明的目的在于提供了一种通过域名服务提供者进行DNS重定向的装置,避免 了禁用系统原有NSP而导致的无法上网的问题。 0008 本发明的技术方案为:本发明揭示了一种通过域名服务提供者进行DNS重定向的 方法,包括: 0009 网络应用程序调用域名解析API; 0010 域名解析API内部调用多个域名服务提供者,其中用于DNS重定向的第一域名服 务提供者的安装位置位于系统原有的域名服务提供者的上方相邻位置,用于DNS重定向的 第二域名服务提供者的安装位置位于系统原有的域。
10、名服务提供者的下方相邻位置; 0011 域名解析API对各个域名服务提供者返回的结果做排序,此时第一域名服务提供 者返回的结果或者第二域名服务提供者返回的结果在系统原有的域名服务提供者返回的 结果之前; 0012 网络应用程序得到位于系统原有的域名服务提供者返回的结果之前的第一域名 服务提供者或者第二域名服务提供者的返回结果。 0013 根据本发明的通过域名服务提供者进行DNS重定向的方法的一实施例,域名解析 API根据域名服务提供者的安装顺序的升序对各个域名服务提供者返回的结果进行排序。 0014 根据本发明的通过域名服务提供者进行DNS重定向的方法的一实施例,域名解析 API根据域名服务提。
11、供者的安装顺序的降序对各个域名服务提供者返回的结果进行排序。 说 明 书CN 102821171 A 2/4页 4 0015 根据本发明的通过域名服务提供者进行DNS重定向的方法的一实施例,该方法在 支持IPv6的系统上运行时,域名服务提供者在返回IPv4地址时先将IPv4地址转化为IPv6 地址后再返回。 0016 本发明还揭示了一种通过域名服务提供者进行DNS重定向的装置,包括: 0017 API调用模块,由网络应用程序调用域名解析API; 0018 域名服务提供者调用模块,连接API调用模块,域名解析API内部调用多个域名服 务提供者,其中用于DNS重定向的第一域名服务提供者的安装位置位。
12、于系统原有的域名服 务提供者的上方相邻位置,用于DNS重定向的第二域名服务提供者的安装位置位于系统原 有的域名服务提供者的下方相邻位置; 0019 排序模块,连接域名服务提供者调用模块,域名解析API对各个域名服务提供者 返回的结果做排序,此时第一域名服务提供者返回的结果或者第二域名服务提供者返回的 结果在系统原有的域名服务提供者返回的结果之前; 0020 重定向地址返回模块,连接排序模块,网络应用程序得到位于系统原有的域名服 务提供者返回的结果之前的第一域名服务提供者或者第二域名服务提供者的返回结果。 0021 根据本发明的通过域名服务提供者进行DNS重定向的装置的一实施例,在排序模 块中,。
13、域名解析API根据域名服务提供者的安装顺序的升序对各个域名服务提供者返回的 结果进行排序。 0022 根据本发明的通过域名服务提供者进行DNS重定向的装置的一实施例,在排序模 块中,域名解析API根据域名服务提供者的安装顺序的降序对各个域名服务提供者返回的 结果进行排序。 0023 根据本发明的通过域名服务提供者进行DNS重定向的装置的一实施例,该装置在 支持IPv6的系统上运行时,域名服务提供者在返回IPv4地址时先将IPv4地址转化为IPv6 地址后再返回。 0024 本发明对比现有技术有如下的有益效果:本发明的方案是安装两个NSP,分别位 于原有NS DNS类型的NSP的上方和下方,并且。
14、在支持IPv6的系统运行,如果要返回IPv4 地址则将地址转化为IPv6后返回,这样可以保证无论升序或降序,后安装的两个NSP都可 以排在最前和最后。相较于现有技术,本发明既保留了系统原有的NSP,又能够实现重定向 以用于网络加速,是一种安全有效的DNS重定向方案。 附图说明 0025 图1示出了本发明的通过域名服务提供者进行DNS重定向的方法的较佳实施例的 流程图。 0026 图2示出了本发明的通过域名服务提供者进行DNS重定向的装置的较佳实施例的 结构图。 0027 图3示出了本发明的通过域名服务提供者进行DNS重定向的方法的示例图。 具体实施方式 0028 下面结合附图和实施例对本发明作。
15、进一步的描述。 0029 通过域名服务提供者进行DNS重定向的方法的实施例 说 明 书CN 102821171 A 3/4页 5 0030 图1示出了本发明的通过域名服务提供者进行DNS重定向的方法的较佳实施例的 流程。请参见图1,本实施例的方法的实施步骤详述如下。 0031 步骤S10:网络应用程序调用域名解析API。 0032 Windows网络应用程序解析域名一般调用WinSock API函数,这类函数有多个,都 能获得相同的地址集合,但是顺序可能不一样。 0033 步骤S12:域名解析API内部调用多个域名服务提供者(NSP),其中用于DNS重定 向的第一域名服务提供者的安装位置位于系。
16、统原有的域名服务提供者的上方相邻位置,用 于DNS重定向的第二域名服务提供者的安装位置位于系统原有的域名服务提供者的下方 相邻位置。 0034 步骤S14:域名解析API对各个域名服务提供者返回的结果做排序,此时第一域名 服务提供者返回的结果或者第二域名服务提供者返回的结果在系统原有的域名服务提供 者返回的结果之前。 0035 例如,域名解析API根据域名服务提供者的安装顺序的升序对各个域名服务提供 者返回的结果进行排序,或者域名解析API根据域名服务提供者的安装顺序的降序对各个 域名服务提供者返回的结果进行排序。 0036 解析域名的API内部会调用NS DNS类型的NSP,这种NSP可能有。
17、多个,他们可能 返回不同的结果集,然后API对各个NSP返回的结果集做排序,排序的算法有两个:1、根据 NSP安装顺序升序或降序,即两个API返回的结果顺序可能是相反的。2、支持IPv6的系统 上,IPv6地址会排在IPv4地址之前。 0037 DNS解析后可能有多个地址,但应用程序一般采用集合中的第一个。所以要实现重 定向只需把自己的结果放在最前。但是各个API的排除算法不同,可能刚好相反。应用程 序可能使用不同的解析API,所以如果有多个NSP,可能对某些程序可以重定向,对某些又 不行,所以现有方法干脆禁用其它NS DNS类型的NSP,保证只有自己返回的结果。 0038 本发明的做法是安装。
18、两个NSP,分别位于在原有NS DNS类型的NSP的上方和下方, 并且如果在支持IPv6的系统上如果要返回IPv4地址应该把地址转化为IPv6返回,这样可 以保证无论升序或降序,自设的NSP都可以排在最前和最后。 0039 此外,若本方法在支持IPv6的系统上运行时,域名服务提供者在返回IPv4地址时 先将IPv4地址转化为IPv6地址后再返回。 0040 步骤S16:网络应用程序得到位于系统原有的域名服务提供者返回的结果之前的 第一域名服务提供者或者第二域名服务提供者的返回结果。 0041 通过域名服务提供者进行DNS重定向的装置的实施例 0042 图2示出了本发明的通过域名服务提供者进行D。
19、NS重定向的装置的较佳实施例的 结构图。请参见图2,本实施例的装置包括:依序连接的API调用模块10、域名服务提供者 调用模块12、排序模块14以及重定向地址返回模块16。 0043 API调用模块10由网络应用程序调用域名解析API。 0044 域名服务提供者调用模块12中,域名解析API内部调用多个域名服务提供者,其 中用于DNS重定向的第一域名服务提供者的安装位置位于系统原有的域名服务提供者的 上方相邻位置,用于DNS重定向的第二域名服务提供者的安装位置位于系统原有的域名服 务提供者的下方相邻位置。 说 明 书CN 102821171 A 4/4页 6 0045 排序模块14中,域名解析。
20、API对各个域名服务提供者返回的结果做排序,此时第 一域名服务提供者返回的结果或者第二域名服务提供者返回的结果在系统原有的域名服 务提供者返回的结果之前。在排序模块14中,域名解析API根据域名服务提供者的安装顺 序的升序或降序对各个域名服务提供者返回的结果进行排序。本实施例的装置在支持IPv6 的系统上运行时,域名服务提供者在返回IPv4地址时先将IPv4地址转化为IPv6地址后再 返回。 0046 重定向地址返回模块16中,网络应用程序得到位于系统原有的域名服务提供者 返回的结果之前的第一域名服务提供者或者第二域名服务提供者的返回结果。 0047 通过域名服务提供者进行DNS重定向的方法的。
21、示例 0048 图3示出了本发明的通过域名服务提供者进行DNS重定向的方法的示例。请参见 图3,是使用DNS重定向做针对某浏览器和某网站的加速。 0049 假设要加速的浏览器是IE,要加速的网站是http:/ 还要架设一台加速服务器,上面部署的是CDN的服务程序,假设IP是1.2.3.4。 0050 用于重定向的NSP是一个动态链接库(MyNSP.dll),安装时在系统原来的NSP顶层 和底层各安装一个NSP,都指向MyNSP.dll。 0051 MyNSP.dll里面检查了加载它的进程名,发现不是iexplore.exe就忽略,是的话 继续。 0052 iexplore.exe会调用API查。
22、询域名,过程会经过MyNSP.dll两次(因为本示例中 安装了2个NSP),检查查询的域名是否为,如果不是则忽略,是继 续。 0053 返回加速服务器的地址:1.2.3.4,如果在支持IPv6的系统上,应该返回IPv6形式 的地址,即::ffff:1.2.3.4。 0054 经过API排序,无论正序、反序,返回的结果都是自设的NSP返回的结果都被排在 最前,浏览器会采用自设NSP的结果,如果自设NSP不返回,则浏览器采用默认的结果。 0055 上述实施例是提供给本领域普通技术人员来实现和使用本发明的,本领域普通技 术人员可在不脱离本发明的发明思想的情况下,对上述实施例做出种种修改或变化,因而 本发明的保护范围并不被上述实施例所限,而应该是符合权利要求书所提到的创新性特征 的最大范围。 说 明 书CN 102821171 A 1/3页 7 图1 说 明 书 附 图CN 102821171 A 2/3页 8 图2 说 明 书 附 图CN 102821171 A 3/3页 9 图3 说 明 书 附 图CN 102821171 A 。