CN100576846C - 多协议域名解析服务的服务代理方法 - Google Patents

多协议域名解析服务的服务代理方法 Download PDF

Info

Publication number
CN100576846C
CN100576846C CN200510070243A CN200510070243A CN100576846C CN 100576846 C CN100576846 C CN 100576846C CN 200510070243 A CN200510070243 A CN 200510070243A CN 200510070243 A CN200510070243 A CN 200510070243A CN 100576846 C CN100576846 C CN 100576846C
Authority
CN
China
Prior art keywords
dns
domain name
network
protocols
service
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
CN200510070243A
Other languages
English (en)
Other versions
CN1863196A (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.)
Institute of Computing Technology of CAS
Inner Mongolia University
Original Assignee
Institute of Computing Technology of CAS
Inner Mongolia 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 Institute of Computing Technology of CAS, Inner Mongolia University filed Critical Institute of Computing Technology of CAS
Priority to CN200510070243A priority Critical patent/CN100576846C/zh
Publication of CN1863196A publication Critical patent/CN1863196A/zh
Application granted granted Critical
Publication of CN100576846C publication Critical patent/CN100576846C/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代理S,使得无论哪种协议,当其需要DNS的时候,都能以任何协议封装所需类型的DNS请求发给S;S根据请求的协议类型,重新封装请求,发向特定的服务器,并将结果返回给节点。对于特例情况,即网络节点未实现任何种协议的DNS封装的情况,将S直接安装在该节点,截获其全部网络连接请求,如果目的地是域名的请求,则将域名解析为网络地址。S中有域名解析缓冲区,以提高解析效率。

Description

多协议域名解析服务的服务代理方法
技术领域
本发明涉及计算机网络互连技术领域,特别是一种在存在多种网络协议的环境中实现DNS服务代理的方法。
背景技术
DNS(Domain Name Service,域名解析服务)是计算机网络互连技术领域非常重要的关键技术,它是将便于记忆、使用和管理的域名转换成计算机等网络节点使用的网络地址(例如IPv4地址或者IPv6地址),或者反之的技术。DNS服务代理技术是DNS请求和应答的中转技术,网络节点群通过使用DNS服务代理技术,可以享受就近服务,提高效率。
计算机网络互连中存在使用多种网络协议的情况(例如IPv4和IPv6共存),网络节点也存在同时兼容多种网络协议的情况,这是网络技术向前发展的必然趋势。如果要实现网络协议和DNS消息的全兼容,就要求网络节点不但兼容某种网络协议,还要支持使用该网络协议封装同类型的DNS消息;对DNS服务器来说,要求不但支持所有网络协议,使自己可以通过各种网络协议可达,而且要提供对全部DNS消息的协议类型的支持。显然,这对网络节点和DNS服务器来说,都并非其主业,而是非常沉重的负担。
在实际情况中,存在这样的网络节点,它们兼容多种协议,但是不能做到全部网络协议都能封装同类型的DNS消息,会使用某种网络协议封装另一种协议类型的DNS消息。例如Windows XP SP2(2005年04月)兼容IPv4/IPv6两种网络协议,但只提供IPv4协议对DNS消息进行封装。另外,也存在这样的DNS服务器,它们虽然支持各种协议类型的DNS消息,但是只支持部分网络协议,使得其上的DNS服务并非是通过各种网络协议都是可达的,或只支持部分网络协议对同类的DNS消息进行分装。例如Windows 2003 Server兼容IPv4/IPv6两种网络协议,但是只支持用IPv4协议来封装DNS消息(2004年12月)。这样做的目的是为了让网络节点和DNS服务器都集中资源做它们的主业,摆脱不必要的负担;或者是因为网络技术发展迅速的原因,使得有些网络节点和DNS服务器没有来得及实现升级以支持新的网络协议。但是,其矛盾也是显而易见的,有些网络节点不能享受到应得的全面的DNS服务,或者某个DNS服务器提供的服务因为网络协议不可达而没有被充分利用。
现存的DNS服务代理绝大部分是属于网络代理装置(或者代理网关装置)的一部分,只有少数是独立的DNS服务代理装置。例如,KerioWinRoute Firewall版本6.0.10,2005年3月22日发布,它们只能做到DNS消息中介的作用,并不能实现多种网络协议的交叉代理。
发明内容
本发明的目的,就是针对以上矛盾,通过一种多协议DNS服务代理的方法,在需要某种类型DNS服务的网络节点和支持该服务DNS服务器之间架设一个连接的桥梁,而无论该网络节点和该DNS服务器是否支持某种相同的网络协议且都能用该网络协议封装DNS消息,最终实现网络节点对DNS服务器的无缝访问。
一种在多种网络协议的环境中实现DNS服务代理的方法,该代理工作在多种协议的网络环境中,对应每种网络协议,具有至少一个<工作地址,工作端口号>对和至少一个保存多个<域名,网络地址>对的域名解析缓存区,通过为网络节点指定多协议DNS代理S,使得网络中的节点无论支持哪种网络协议,当其需要DNS服务的时候,都能以任何网络协议封装其所需类型的DNS请求,并发给S;S根据DNS请求的类型,再次用适当的网络协议重新封装该DNS请求,发向特定的DNS服务器,并将从DNS服务器得到的结果返回给网络节点,实现在多种网络协议中对DNS服务的交叉代理;对于特例情况,即网络节点未实现任何种协议的DNS封装的情况,将S直接安装在该节点,截获其全部网络连接请求,如果目的地是域名的请求,则将域名解析为网络地址;S利用域名解析缓存区,以提高域名解析效率。
多种网络协议的环境中实现DNS服务代理的方法,其中的<工作地址,工作端口号>对具有以下特征:
(1)工作地址属于对应网络协议的网络地址,是多协议DNS服务代理的网络标识之一,用符合对应网络协议要求的格式表示;
(2)工作端口号是DNS服务代理的服务标识,用非负整数表示。
多种网络协议的环境中实现DNS服务代理的方法,其中的保存<域名,网络地址>对的域名解析缓存区具有以下特征:
(1)域名是目标节点的标识之一,其格式符合DNS国际标准的要求;
(2)网络地址也是目标节点的标识之一,其格式符合对应网络协议的地址格式要求;
(3)域名解析缓存区保存含有<域名,网络地址>对的条目,可以根据实际获得的存储空间确定条目的数目和有效期限;
(4)域名解析缓存区保存的条目按照优先级排序,最高优先级的<域名,网络地址>对总是排位在更前。
多种网络协议的环境中实现DNS服务代理的方法,其中为网络节点指定多协议DNS代理S的方式包括:
(1)为网络节点的整个系统指定DNS服务器;
(2)为网络节点中的部分软件指定DNS服务器。
1.适用环境描述
在网络节点和DNS服务器之间架设一个多协议DNS服务代理,其适用的网络环境如图1所示。其中多协议网络1中兼容网络协议p1,p2,……,pn,其中有仅兼容网络协议p1的节点、兼容网络协议p1和网络协议p2的节点,也有兼容网络协议p1,p2,……,pn的全兼容节点,它们都需要DNS服务。多协议网络2中兼容网络协议P1,P2,……,Pn(注:pi和Pi未必相同),其中有仅兼容网络协议P1/P2和DNS消息类型P1/P2的DNS服务器、兼容网络协议P1/P2和DNS消息类型P2/P1的DNS服务器,也有全兼容网络协议P1,P2,……,Pn和DNS消息类型P1,P2,……,Pn的DNS服务器。
2.设置多协议DNS服务代理
为了使网络节点能够使用多协议DNS服务代理,首先应该在网络节点设置指定的多协议DNS服务代理,指定多协议DNS服务代理的方法与指定普通的DNS服务代理的方法相同。可以为网络节点的整个系统指定多协议DNS服务器,也可以为网络节点中的部分软件指定多协议DNS服务器。
●为网络节点的整个系统指定DNS服务器流程如下,
步骤1.在网络节点中直接配置整个系统的DNS服务器的网络地址为多协议DNS代理的网络地址,该网络地址必须是多协议DNS代理的工作地址,并且是网络节点可达的。
步骤2.如果需要,在网络节点中直接配置整个系统的DNS服务器的服务端口号为多协议DNS代理的服务端口号,该端口号必须是多协议DNS代理的工作端口号,并且是该网络节点可达的。
●为网络节点中的部分软件指定DNS服务器流程如下,
步骤1.为网络节点中需要多协议DNS服务的软件指定专用的DNS服务器,将其专用的DNS服务器网络地址设置为多协议DNS代理的网络地址,该网络地址必须是多协议DNS代理的工作地址,并且是该网络节点可达的;
步骤2.如果需要,将需要多协议DNS服务的软件的专用DNS服务器的服务端口号设置为多协议DNS代理的服务端口号,该端口号必须是多协议DNS代理的工作端口号,并且是该网络节点可达的。
3.多协议DNS代理的工作流程
多协议DNS服务代理在需要某种类型DNS服务的网络节点和支持该服务DNS服务器之间假设一个连接的桥梁,而无论该网络节点和该DNS服务器是否支持某种相同的网络协议且都能用该网络协议封装DNS消息,最终实现网络节点对DNS服务器的无缝访问。多协议DNS代理的工作流程如下(参见图3)。
4.嵌入式代理
对于特例情况,即网络节点未实现任何种协议的DNS封装的情况,将多协议DNS服务器代理直接安装在该节点,截获其全部网络连接请求,如果有目的地是域名的请求,则将域名解析为网络地址,其中的域名解析流程与上面所述的流程相同。
5.域名解析缓存区
域名解析缓存区中保存多个<域名N,网络地址A>对,并按照优先级进行排序。缓存区中每个<域名N,网络地址A>对保存在一个条目中,每个条目除了<域名N,网络地址A>对,还有类型P、序号、命中次数、加入时刻、优先级和DNS服务器的信息。即每个条目是这样的:
<序号,域名N,类型P,网络地址A,命中次数,加入时刻,优先级,DNS服务器网络地址D>
其中,
●“序号”用于管理和查找。
●“网络地址A”一定是符合“协议类型”的。
●命中次数表示该条目曾被命中,即符合查找条件<域名N,类型P>,并被引用的次数。
●加入时刻用来记录该条目加入到缓存区的时刻,实际用于保存该条目中的<域名N,协议类型P,网络地址A>三元素是何时从DNS服务器D获得的。
●当发现某个条目的加入时刻超出设定的有效时间,就会向DNS服务器重新发出该条目中的请求<域名N,类型P>以获得最新的网络地址信息,更新本条目。如果更新失败,就将该条目删除。
●缓存区的大小由可获得的系统存储资源决定。
●排序的原则是:
■最近被使用命中过的条目或者是新加入的条目应该具有更高的优先级
■命中次数越多则具有更高的优先级
■优先级较高的条目排在缓存区的前端,提高检索效率。
●当缓存区的所有条目都被使用了,再有新条目需要加入时,就将优先级最低的条目淘汰,空出位置来保存新条目。
多种网络协议的环境中实现DNS服务代理的方法,其中的“网络节点”可以是一个纯粹的DNS客户,也可以是某个中间DNS服务器,或者其它某个需要得到DNS服务的设备、系统、软件;
(1)有访问网络资源的需要;
(2)网络资源的定位使用了域名;
(3)域名的格式符合DNS国际标准的要求。
6.发明效果
通过本发明,多协议DNS服务代理的方法,使得在需要某种类型DNS服务的网络节点和支持该服务DNS服务器之间架设了一个连接的桥梁,无论该网络节点和该DNS服务器是否支持某种相同的网络协议且都能用该网络协议封装DNS消息,最终都能实现网络节点对DNS服务器的无缝访问。
随着网络互连技术的不断发展,只要对多协议DNS服务代理做必要的升级,就能使网络中的各种节点摆脱因网络协议升级带来的对DNS服务的负面影响。这有利于网络技术的发展,更有利于网络资源的有效合理使用。
附图说明
图1是多协议DNS代理的适用环境示意图。
图2是IPv4/IPv6双协议DNS代理的适用环境示意图。
图3是多协议DNS代理的工作流程。
具体实施方式
目前,因特网正处于从IPv4协议向IPv6协议迁移的过渡期,正好符合本发明的适用环境要求,如图2所示,即
1.存在这样的网络节点N,它们兼容IPv4/IPv6两种协议,但是不能做到用这两种网络协议都能封装同类型的DNS消息,其只能使用某一种网络协议封装本类型的DNS消息和另一种协议类型的DNS消息。在图中,网络节点N是一台Windows XP SP2(Release 2005.04)主机,兼容IPv4/IPv6两种网络协议,但只提供IPv4协议对DNS消息进行封装,即用IPv4网络协议封装A、AAAA和A6这三种类型的DNS消息。
2.另外,也存在这样的DNS服务器D,例如某些特定配置Linux服务器,它们虽然支持IPv4网络协议、IPv6网络协议,但是只支持IPv6 inIPv6协议类型的DNS消息,使得其提供的DNS服务仅通过IPv6网络协议是可达的,即该DNS服务器只支持AAAA in IPv6和A6 in IPv6的DNS消息。
那么,其矛盾是显而易见的,网络节点N无法直接享受到D提供的DNS服务,或者说DNS服务器D提供的服务因为网络协议不可达而没有被N充分利用。这时,IPv4/IPv6双协议代理S就可以在需要AAAA和A6类型DNS服务的网络节点N和支持该服务DNS服务器D之间架设一个连接的桥梁,而无论该网络节点N和该DNS服务器D是否支持某种相同的网络协议且都能用该网络协议封装DNS消息,最终实现网络节点N对DNS服务器D的无缝访问。
在图2中,假设节点是Windows XP SP2网络节点,它需要访问web服务器。在该网络节点中直接配置整个系统的DNS服务器的网络地址为多协议DNS代理的IPv4工作地址。因该节点本身的特性,对照图3中的流程,在进行条件判断时,可以跳过协议总的处理流程(如前面第3小节所述)中的一些步骤,因而其处理过程的简要流程如下(忽略不执行的步骤)。
首先,在网络节点N中,设置其整个系统的DNS服务器地址为S的IPv4地址(设置办法参见Windows XP用户手册);因需要访问WEB服务器,N发出A6 in IPv4(IPv6 In IPv4)的DNS请求消息M1.1给S;
然后,S解析该消息后经过分析得知M1.1是个A6 in IPv4(IPv6 InIPv4)的消息;在S检索自己的服务器列表,找到支持IPv6 In IPv6 DNS消息类型的服务器D;S将DNS请求重新封装为A6 in IPv6(IPv6 In IPv6)的DNS请求消息M1.2,然后发给DNS服务器D;
其次D正常处理过后将一个A6 in IPv6(IPv6 In IPv6)的DNS应答消息M1.3返回给S;
接着,S再重新将该DNS应答消息封装为A6 in IPv4(IPv6 In IPv4)的DNS应答消息M1.4返回给N;
再次,N得到其中的WEB服务器的IPv6地址,访问到与WEB服务器上面的资源。
最后N和web服务器之间通过IPv6网络协议进行通信,如消息M2所示。对于N来说,其不知D是仅IPv6 IN IPv6类型DNS服务的,或者根本不知道D的存在,所以无需考虑DNS消息的封装要求;对于D来说,其不知N是仅支持IPv6 IN IPv4类型DNS服务的主机,也根本不用考虑增加DNS封装类型。
图3是多协议DNS代理的工作流程。其步骤如下:
步骤1.多协议DNS代理启动,获得所处的网络环境信息,包括各种网络协议的类型列表和可用的所有DNS服务器的信息;
步骤2.初始化DNS请求队列,初始化域名解析缓存区;
步骤3.启动多协议代理服务,在每种网络协议中启动DNS代理服务,实际是在多个<工作地址,工作端口号>上启动DNS代理服务,工作端口号可以是公知的端口,也可以是一个专为某种软件服务的指定的端口号(包括TCP协议和UDP协议);
步骤4.等待DNS请求,同时定期监视网络环境信息,如有变化,及时更新网络协议列表和可用DNS服务器信息,并根据网络协议列表开/停对应的服务;
步骤5.如果有DNS请求到达,得到封装该DNS请求的网络协议类型P1和请求消息的来源Z,并将其加入到DNS请求队列;
步骤6.分析该DNS请求,得到DNS请求本身的协议类型P2和请求被解析的域名N;
步骤7.在域名解析缓存区中查找域名N对应的协议类型为P2的网络地址;如果找到匹配,则跳到步骤19;
步骤8.查看已知的DNS服务器信息,是否存在支持网络协议P2和DNS请求类型P2的DNS服务器D1,如果存在这样的服务器,则跳到步骤14;
步骤9.查看已知的DNS服务器信息,是否存在支持网络协议P1和DNS请求类型P1的DNS服务器D2,如果存在这样的服务器,则跳到步骤16;
步骤10.查看已知的DNS服务器信息,是否存在支持支持网络协议P和DNS请求类型P2且未记录的DNS服务器,如果未找到这样的服务器,则跳到步骤18;
步骤11.将由N构成的P2类型的DNS请求消息,封装在网络协议P中,发给该DNS服务器;
步骤12.如果DNS服务器返回匹配域名N的P2类型的网络地址A,则跳到步骤19;
步骤13.记录该DNS服务器,跳到步骤10;
步骤14.将由N构成的P2类型的DNS请求消息,封装在网络协议P2中,发给DNS服务器D1;
步骤15.如果DNS服务器D1返回匹配域名N的P2类型的网络地址A,则跳到步骤19;否则跳到步骤9;
步骤16.将由N构成的P2类型的DNS请求消息,封装在网络协议P1中,发给DNS服务器D2;
步骤17.如果DNS服务器D2返回匹配域名N的P2类型的网络地址A,则跳到步骤19;否则跳到步骤10;
步骤18.将由N和错误消息3“未找到NXDOMAIN”构成P2类型的DNS应答消息封装在网络协议P1中,返回给Z;流程结束;
步骤19.更新域名解析缓存区中的<域名N,网络地址A>对,并重新排序,将<域名N,网络地址A>对排位在最前端;
步骤20.将由域名N和网络地址A构成P2类型的DNS应答消息封装在网络协议P1中,返回给Z;流程结束。

Claims (9)

1.一种在多种网络协议的环境中实现域名解析服务DNS服务代理的方法,其特征在于,该代理工作在多种协议的网络环境中,对应每种网络协议,具有至少一个<工作地址,工作端口号>对和至少一个保存多个<域名,网络地址>对的域名解析缓存区,通过为网络节点指定多协议DNS代理,使得网络中的节点无论支持哪种网络协议,当其需要DNS服务的时候,都能以任何网络协议封装其所需类型的DNS请求,并发给多协议DNS代理;多协议DNS代理根据DNS请求的类型,再次用适当的网络协议重新封装该DNS请求,发向特定的DNS服务器,并将从DNS服务器得到的结果返回给网络节点,实现在多种网络协议中对DNS服务的交叉代理;对于网络节点未实现任何种协议的DNS封装的情况,将多协议DNS代理直接安装在该节点,截获其全部网络连接请求,如果目的地是域名的请求,则将域名解析为网络地址;多协议DNS代理利用域名解析缓存区,以提高域名解析效率。
2.根据权利要求1所述的多种网络协议的环境中实现DNS服务代理的方法,其特征在于,其中的<工作地址,工作端口号>对具有以下特征:
(1)工作地址属于对应网络协议的网络地址,是多协议DNS服务代理的网络标识之一,用符合对应网络协议要求的格式表示;
(2)工作端口号是DNS服务代理的服务标识,用非负整数表示。
3.根据权利要求1所述的多种网络协议的环境中实现DNS服务代理的方法,其特征在于,其中的保存<域名,网络地址>对的域名解析缓存区具有以下特征:
(1)域名是目标节点的标识之一,其格式符合DNS国际标准的要求;
(2)网络地址也是目标节点的标识之一,其格式符合对应网络协议的地址格式要求;
(3)域名解析缓存区保存含有<域名,网络地址>对的条目,根据实际获得的存储空间确定条目的数目和有效期限;
(4)域名解析缓存区保存的条目按照优先级排序,最高优先级的<域名,网络地址>对总是排位在更前。
4.根据权利要求1所述的多种网络协议的环境中实现DNS服务代理的方法,其特征在于,其中为网络节点指定多协议DNS代理的方式包括:
(1)为网络节点的整个系统指定DNS服务器;
(2)为网络节点中的部分软件指定DNS服务器。
5.根据权利要求4所述的多种网络协议的环境中实现DNS服务代理的方法,其特征在于,网络节点指定多协议DNS代理,其中为网络节点的整个系统指定DNS服务器流程如下,
步骤1.在网络节点中直接配置整个系统的DNS服务器的网络地址为多协议DNS代理的网络地址,该网络地址必须是多协议DNS代理的工作地址,并且是网络节点可达的;
步骤2.如果需要,在网络节点中直接配置整个系统的DNS服务器的服务端口号为多协议DNS代理的服务端口号,该端口号必须是多协议DNS代理的工作端口号,并且是该网络节点可达的。
6.根据权利要求4所述的多种网络协议的环境中实现DNS服务代理的方法,其特征在于,网络节点指定多协议DNS代理,其中为网络节点中的部分软件指定DNS服务器流程如下:
步骤1.将需要多协议DNS服务的软件的专用DNS服务器网络地址设置为多协议DNS代理的网络地址,该端口号必须是多协议DNS代理的工作地址,并且是该网络节点可达的;
步骤2.如果需要,将需要多协议DNS服务的软件的专用DNS服务器的服务端口号设置为多协议DNS代理的服务端口号,该端口号必须是多协议DNS代理的工作端口号,并且是该网络节点可达的。
7.根据权利要求1所述的多种网络协议的环境中实现DNS服务代理的方法,其特征在于,其中多协议DNS代理的工作流程如下:
步骤1.多协议DNS代理启动,获得所处的网络环境信息,包括各种网络协议的类型列表和可用的所有DNS服务器的信息;
步骤2.初始化DNS请求队列,初始化域名解析缓存区;
步骤3.启动多协议代理服务,在每种网络协议中启动DNS代理服务,实际是在多个<工作地址,工作端口号>上启动DNS代理服务,工作端口号是公知的端口,或者是一个专为某种软件服务的指定的端口号,该指定的端口号包括TCP协议和UDP协议;
步骤4.等待DNS请求,同时定期监视网络环境信息,如有变化,及时更新网络协议列表和可用DNS服务器信息,并根据网络协议列表开/停对应的服务;
步骤5.如果有DNS请求到达,得到封装该DNS请求的网络协议类型和DNS请求消息的来源,并将其加入到DNS请求队列;
步骤6.分析该DNS请求,得到DNS请求本身的协议类型P2和DNS请求被解析的域名N;
步骤7.在域名解析缓存区中查找域名N对应的协议类型为P2的网络地址;如果找到匹配,则跳到步骤19;
步骤8.查看已知的DNS服务器信息,是否存在支持网络协议P2和DNS请求类型P2的DNS服务器D1,如果存在这样的服务器,则跳到步骤14;
步骤9.查看已知的DNS服务器信息,是否存在支持网络协议P1和DNS请求类型P1的DNS服务器D2,如果存在这样的服务器,则跳到步骤16;
步骤10.查看已知的DNS服务器信息,是否存在支持某种网络协议P和P2类型DNS请求且未记录的DNS服务器,如果未找到这样的服务器,则跳到步骤18;
步骤11.将由DNS请求被解析的域名构成的P2类型的DNS请求消息,封装在网络协议P中,发给该DNS服务器;
步骤12.如果DNS服务器返回匹配域名N的P2类型的网络地址A,则跳到步骤19;
步骤13.记录该DNS服务器,跳到步骤10;
步骤14.将由DNS请求被解析的域名构成的P2类型的DNS请求消息,封装在网络协议P2中,发给DNS服务器D1;
步骤15.如果DNS服务器D1返回匹配域名N的P2类型的网络地址A,则跳到步骤19;否则跳到步骤9;
步骤16.将由DNS请求被解析的域名构成的P2类型的DNS请求消息,封装在网络协议P1中,发给DNS服务器D2;
步骤17.如果DNS服务器D2返回匹配域名N的P2类型的网络地址A,则跳到步骤19;否则跳到步骤10;
步骤18.将由DNS请求被解析的域名和错误消息3“未找到NXDOMAIN”构成P2类型的DNS应答消息封装在网络协议P1中,返回给DNS请求消息的来源;流程结束;
步骤19.更新域名解析缓存区中的含有<域名N,网络地址A>对的条目,并重新排序;
步骤20.将由域名N和网络地址A构成P2类型的DNS应答消息封装在网络协议P1中,返回给DNS请求消息的来源;流程结束。
8.根据权利要求1所述的多种网络协议的环境中实现DNS服务代理的方法,其特征在于,对于网络节点未实现任何种协议的DNS封装的情况,将多协议DNS服务器代理直接安装在该节点,截获其全部网络连接请求,如果目的地是域名的请求,则将域名解析为网络地址,其中的域名解析流程与权利要求7所述的流程相同。
9.根据权利要求3所述的多种网络协议的环境中实现DNS服务代理的方法,其特征在于,域名解析缓存区中保存多个<域名N,网络地址A>对,并按照优先级进行排序,其中的缓存区中每个<域名N,网络地址A>对保存在一个条目中,每个条目除了<域名N,网络地址A>对,还有类型P、序号、命中次数、加入时刻、优先级和DNS服务器的信息,即每个条目是这样的:
<序号,域名N,类型P,网络地址A,命中次数,加入时刻,优先级,DNS服务器网络地址D>
其中,
(1)“序号”用于管理和查找;
(2)“网络地址A”一定是符合“类型P”的;
(3)命中次数表示该条目曾被命中,即符合查找条件<域名N,类型P>,并被引用的次数;
(4)加入时刻用来记录该条目加入到缓存区的时刻,实际用于保存该条目中的<域名N,类型P,网络地址A>三元素是何时从DNS服务器D获得的;
(5)当发现某个条目的加入时刻超出设定的有效时间,就会向DNS服务器重新发出该条目中的请求<域名N,类型P>以获得最新的网络地址信息,更新本条目,如果更新失败,就将该条目删除;
(6)缓存区的大小由可获得的系统存储资源决定;
(7)排序的原则是:
■最近被命中和使用过的条目或者是新加入的条目应该具有更高的优先级;
■命中次数越多则具有更高的优先级;
■优先级较高的条目排在缓存区的前端,以提高检索效率;
(8)当缓存区的所有条目都被使用了,再有新条目需要加入时,就将优先级最低的条目淘汰,空出位置来保存新条目。
CN200510070243A 2005-05-11 2005-05-11 多协议域名解析服务的服务代理方法 Active CN100576846C (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN200510070243A CN100576846C (zh) 2005-05-11 2005-05-11 多协议域名解析服务的服务代理方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN200510070243A CN100576846C (zh) 2005-05-11 2005-05-11 多协议域名解析服务的服务代理方法

Publications (2)

Publication Number Publication Date
CN1863196A CN1863196A (zh) 2006-11-15
CN100576846C true CN100576846C (zh) 2009-12-30

Family

ID=37390524

Family Applications (1)

Application Number Title Priority Date Filing Date
CN200510070243A Active CN100576846C (zh) 2005-05-11 2005-05-11 多协议域名解析服务的服务代理方法

Country Status (1)

Country Link
CN (1) CN100576846C (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111641733A (zh) * 2020-06-07 2020-09-08 深圳市乙辰科技股份有限公司 一种网桥设备管理方法、装置和可读存储介质

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101272407B (zh) * 2008-04-28 2010-07-21 杭州华三通信技术有限公司 域名系统的缓存探测方法、缓存探测装置和探测响应装置
WO2012053162A1 (ja) 2010-10-18 2012-04-26 日本電気株式会社 ネームデータベースサーバ、名前解決システム、エントリ検索方法およびエントリ検索プログラム
CN104935680B (zh) * 2015-06-18 2018-11-06 中国互联网络信息中心 一种多层级共享缓存的递归域名服务系统和方法
CN106790746B (zh) * 2016-12-09 2020-09-01 互联网域名系统北京市工程研究中心有限公司 一种分布式域名存储和解析方法及系统
CN107318127B (zh) * 2017-05-19 2020-08-18 中国神华能源股份有限公司 数据传输方法、装置以及系统
US10911460B2 (en) * 2018-07-02 2021-02-02 Juniper Networks, Inc. Methods and devices for blocking, detecting, and/or preventing malicious traffic
CN109587275A (zh) * 2019-01-08 2019-04-05 网宿科技股份有限公司 一种通信连接的建立方法及代理服务器
CN111343299B (zh) * 2020-03-12 2022-07-05 宋磊 一种多协议主动探测型智能dns及其方法
CN111414208B (zh) * 2020-03-13 2023-08-01 百度在线网络技术(北京)有限公司 应用程序的启动方法、装置及设备
CN112769832A (zh) * 2021-01-12 2021-05-07 中国科学院上海高等研究院 多协议兼容的数据发送、数据接收方法及装置

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1435783A (zh) * 2002-10-22 2003-08-13 交大铭泰(北京)软件有限公司 反向域名解析方法
US6681191B1 (en) * 1999-12-21 2004-01-20 Tektronix, Inc. Frequency domain analysis system for a time domain measurement instrument
US20050007599A1 (en) * 2003-07-10 2005-01-13 Degroot Peter J. Stroboscopic interferometry with frequency domain analysis
CN1581114A (zh) * 2003-08-14 2005-02-16 华为技术有限公司 一种对用户请求的解析方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6681191B1 (en) * 1999-12-21 2004-01-20 Tektronix, Inc. Frequency domain analysis system for a time domain measurement instrument
CN1435783A (zh) * 2002-10-22 2003-08-13 交大铭泰(北京)软件有限公司 反向域名解析方法
US20050007599A1 (en) * 2003-07-10 2005-01-13 Degroot Peter J. Stroboscopic interferometry with frequency domain analysis
CN1581114A (zh) * 2003-08-14 2005-02-16 华为技术有限公司 一种对用户请求的解析方法

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111641733A (zh) * 2020-06-07 2020-09-08 深圳市乙辰科技股份有限公司 一种网桥设备管理方法、装置和可读存储介质
CN111641733B (zh) * 2020-06-07 2021-04-02 深圳市乙辰科技股份有限公司 一种网桥设备管理方法、装置和可读存储介质

Also Published As

Publication number Publication date
CN1863196A (zh) 2006-11-15

Similar Documents

Publication Publication Date Title
CN100576846C (zh) 多协议域名解析服务的服务代理方法
CN101986666B (zh) 基于虚拟网络接口和反向地址转换的网络数据传输方法
KR101987784B1 (ko) 소프트웨어 정의 네트워크를 기반으로 내용 배포 네트워크를 구현하는 방법 및 시스템
JP5167225B2 (ja) 1つのファイラー上の複数の仮想ファイラーが重複するネットワークアドレスを有する複数のアドレス空間に参加することを可能にする技術
US7437479B2 (en) Position identifier management apparatus and method, mobile computer, and position identifier processing method
US7840699B2 (en) Name resolution server and packet transfer device
JP4503225B2 (ja) 適応ディスパッチャを有する仮想ネットワーク
US8706799B2 (en) Method and apparatus to exchange information with a local storage device
CN110149397A (zh) 一种微服务整合方法和装置
JP2008283670A (ja) 機器およびサービスのアクセス、接続性および相互運用性
JP2008521305A (ja) IPv6パケットをトンネリングする方法、システム、及びコンピュータ・プログラム
JP2005244408A (ja) ネットワーク・セグメントが互いに異なる複数のネットワークに接続されたゲートウェイ装置、およびipパケットを転送するためのプログラムおよび方法
CN110209719B (zh) 一种基于微服务架构的多种数据库统一访问系统及方法
CN110445886A (zh) 一种实现域名访问加速的方法和系统
CN102739809A (zh) DNS64数据库、服务器、系统和IPv4/IPv6通信方法
US9021013B2 (en) Ubiquitous web service gateway and method
CN113556413B (zh) 一种报文处理方法及装置
CN113973129A (zh) 一种支持多种注册中心微服务的网关
CN104717639A (zh) 一种移动客户端访问互联网的方法和接入网关服务器
KR20160103110A (ko) 네트워크 요소 데이터 액세스 방법, 액세스 장치, 및 네트워크 관리 시스템
CN111367685B (zh) 接口调用的方法及装置、计算机设备、存储介质
JP4874938B2 (ja) 終端装置
CN113285894A (zh) 基于可编程交换机的身份标识网络移动性控制方法及系统
JP5597872B2 (ja) 分散情報処理システム、分散情報処理方法及びデータ転送装置
CN112637037A (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
C14 Grant of patent or utility model
GR01 Patent grant