一种dns中继方法和装置的制作方法

文档序号:7858694阅读:198来源:国知局
专利名称:一种dns中继方法和装置的制作方法
技术领域
本发明涉及计算机网络通讯技术领域,尤其涉及一种DNS中继方法和装置。
背景技术
域名系统(Domain Name System,DNS)是一种用于TCP/IP应用程序的分布式数据库,提供域名与IPv4/IPv6地址之间的转换。通过域名系统,用户进行某些应用时,可以直接使用便于记忆的、有意义的域名,而由网络中的域名解析服务器解析为正确的IPv4/IPv6地址。一般情况下,用户终端在进行网络配置时需要特别配置使用的DNS服务器,用于域名的解析。配置DNS服务器的同时还需要配置默认网关,对于网络拓扑中存在大规模用户的情况,这样配置任务将非常繁重,工作量很大,大大降低了网络管理的效率。

发明内容
本发明的目的在于提出一种DNS中继方法和装置,使用户端的接入网关设备同时成为DNS服务设备。为达此目的,本发明采用以下技术方案一种DNS中继方法,该方法包括接收用户端的DNS请求;记录所述DNS请求中的域名和用户端信息;将所述DNS请求发送至DNS服务器;接收所述DNS服务器的返回的IP地址;根据记录的域名和用户端信息将所述IP地址返回至所述用户端;其中,所述DNS服务器的IP地址预先设置在本地。一种DNS中继装置,包括第一接收模块,用于接收用户端的DNS请求;记录模块,用于记录所述DNS请求中的域名和用户端信息;请求模块,用于将所述DNS请求发送至DNS服务器;第二接收模块,用于接收所述DNS服务器的返回的IP地址;反馈模块,用于根据记录的域名和用户端信息将所述IP地址返回至所述用户端;其中,所述DNS服务器的IP地址预先设置在本地。本发明的技术方案使用户端的接入网关设备同时成为DNS服务设备,对于大规模终端用户的网络拓扑中,大大减少了配置DNS服务器所需的工作量,提高了网络管理效率,设置的用户和域名缓存机制可有效降低网络开销,缓解网关设备通信压力。


图I是本发明实施例提供的DNS中继方法的流程图。
图2是本发明实施例提供的DNS中继装置的结构示意图。图3是本发明实施例的应用场景示意图。
具体实施例方式下面结合附图并通过具体实施方式
来进一步说明本发明的技术方案。图I是本发明实施例提供的DNS中继方法的流程图,该方法包括S101,接收用户端的DNS请求。网关接收来自用户端的DNS请求,所述用户端的DNS服务器IP地址预设为其上联的网关IP地址。
S102,记录所述DNS请求中的域名和用户端信息。所述DNS请求中包括但不限于域名和用户端信息。所述用户端信息包括但不限于用户端名称、用户端的设备标识号和物理地址。网关接收用户端的DNS请求时还可以缓存所述用户端信息;缓存的用户端信息的个数也有一定的限制,可以手动配置,例如,范围是1-5000个,默认是3000个。缓存的用户端信息有一定的存活时间,如果所述用户端在一定的时间内没有DNS请求,则删除该用户端的信息。用户端信息的存活时间可以手动配置,范围1-100秒,默认5秒,超时后所述用户端信息将被删除。S103,将所述DNS请求发送至DNS服务器。网关将所述DNS请求发送至DNS服务器进行域名解析,所述DNS服务器的IP地址预先设置在网关本地,即由网关向真正的DNS服务器发出域名解析请求,从而使网关设备具备DNS中继功能,对用户端而言,该网关设备同时还是DNS服务设备。S104,接收所述DNS服务器的返回的IP地址。所述DNS服务器经过域名解析,返回所述域名对应的IP地址。所述IP地址包含在DNS解析应答报文中。S105,根据记录的域名和用户端信息将所述IP地址返回至所述用户端。将所述域名对应的IP地址,根据S102中记录的域名和用户端信息返回至发送所述DNS请求的相应用户端。将所述IP地址返回至所述用户端的同时,在网关的域名缓存中记录所述域名与所述IP地址的映射关系。如果网关接收到来自其他用户端的DNS请求,可根据DNS请求中的域名,查询域名缓存中的域名与IP地址的映射关系。如果域名缓存中存在与所述域名对应的IP地址,则将所述IP地址返回至所述用户端;如果域名缓存中不存在与所述域名对应的IP地址,则再将所述DNS请求发送至本地的DNS服务器。所述域名缓存中的域名与IP地址的映射关系有一定的数量限制,根据网关设备的内存可以设定不同的数量,例如,默认512条,如果超过512条,则不再添加到缓存中,下次应用时必须重新进行解析。所述域名缓存中的域名与IP地址的映射关系有一定的存活时间,网关设备中有专门的定时器处理。域名缓存区中的映射关系在一定时间后会被老化删除,以保证能够及时从域名服务器得到最新的内容,老化时间由所述DNS服务器设置,在接收所述DNS服务器的返回的IP地址时从所述DNS解析应答报文中获得。相应的,本发明实施例提供了一种DNS中继装置,如图2所示,该装置包括第一接收模块30,用于接收用户端的DNS请求;记录模块31,与所述第一接收模块30连接,用于记录所述DNS请求中的域名和用
户端信息;请求模块32,与所述第一接收模块30连接,用于将所述DNS请求发送至DNS服务器;第二接收模块33,与所述记录模块31连接,用于接收所述DNS服务器的返回的IP 地址;反馈模块34,与所述记录模块31连接,用于根据记录的域名和用户端信息将所述IP地址返回至所述用户端;其中,所述DNS服务器的IP地址预先设置在本地。进一步地,该装置还包括域名缓存模块35。域名缓存模块35,与所述反馈模块34连接,用于将所述用于在域名缓存中记录所述域名与所述IP地址的映射关系。进一步地,该装置还包括查询模块36。查询模块36,与所述第一接收模块30和域名缓存模块35连接,用于根据DNS请求中的域名,查询域名缓存中的域名与IP地址的映射关系;如果存在与所述域名对应的IP地址,则所述反馈模块34将所述IP地址返回至所述用户端。进一步地,该装置还包括用户缓存模块37。用户缓存模块37,与所述第一接收模块30连接,用于缓存所述用户端信息;如果所述用户端在预设时间内没有DNS请求,则所述用户缓存模块删除所述用户端信息。所述装置接收用户端的DNS请求、将所述DNS请求发送至DNS服务器以及接收所述DNS服务器的返回的IP地址是异步执行的。所述装置中,域名与所述IP地址的映射关系具有存活时间,所述存活时间由所述DNS服务器设置,在接收所述DNS服务器的返回的IP地址时获得。下面以图3为例来说明本发明实施例的一个具体应用场景。以太网交换机A为一台网关接入交换设备,是所有用户的默认网关,该接入交换机下联150个用户端,为了使这种大规模用户群便于配置管理,在这些用户终端上只需配置一个默认网关交换机A,用户终端的DNS服务器不用单独配置,也指向默认网关,由网关执行DNS服务器的功能,在默认网关交换机上配置真正的DNS服务器。交换机A扮演一个DNS中继的角色。假设端口 Ethernetl/Ι的用户端I需要访问新浪门户网站,交换机A收到用户端I的www. sina. com的域名请求后,交换机A首先查询自己维护的域名缓存是否存在该域名,如果存在则直接将域名对应的地址发送给用户端1,如果域名缓存中不存在该域名,则重新构造DNS请求报文向配置的端口 Ethernet 1/3上的真正的DNS服务器发送DNS域名请求,发送完该请求后不同步等待DNS服务器的应答,而是继续监听其它用户端的DNS请求。这样可以充分提高效率,不至于因为一个域名延迟其它用户端的DNS请求。当DNS服务器返回WWW. sina. com的域名应答后,通知网关交换机A,网关交换机A根据先前记录的用户端和请求域名的信息,将该域名的解析地址重新组装应答报文发送给用户端1,同时交换机A将该域名和地址的映射关系保存到缓存中,假如用户端3再访问新浪门户网站,交换机A直接从缓存中取出域名与地址的对应关系回复给用户端3,大大提高了域名的解析效率。同时该域名在缓存中有一定的存活时间,交换机中有专门的定时器管理老化这些域名。域名老化后将从缓存中删除,下次再有用户端请求该域名时需要网关交换机再重新向DNS服务器请求该域名。本发明的技术方案使用户端的接入网关设备同时成为DNS服务设备,对于大规模终端用户的网络拓扑中,大大减少了配置DNS服务器所需的工作量,提高了网络管理效率,设置的用户和域名缓存机制可有效降低网络开销,缓解网关设备通信压力。以上所述,仅为本发明较佳的具体实施方式
,但本发明的保护范围并不局限于此, 任何熟悉该技术的人在本发明所揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求的保护范围为准。
权利要求
1.一种DNS中继方法,其特征在于,该方法包括 接收用户端的DNS请求; 记录所述DNS请求中的域名和用户端信息; 将所述DNS请求发送至DNS服务器; 接收所述DNS服务器的返回的IP地址; 根据记录的域名和用户端信息将所述IP地址返回至所述用户端; 其中,所述DNS服务器的IP地址预先设置在本地。
2.如权利要求I所述的方法,其特征在于,将所述IP地址返回至所述用户端时,该方法 进一步包括 在域名缓存中记录所述域名与所述IP地址的映射关系。
3.如权利要求2所述的方法,其特征在于,收到所述用户端的DNS请求后,该方法进一步包括 根据DNS请求中的域名,查询域名缓存中的域名与IP地址的映射关系; 如果存在与所述域名对应的IP地址,则将所述IP地址返回至所述用户端。
4.如权利要求I所述的方法,其特征在于,所述接收用户端的DNS请求、将所述DNS请求发送至DNS服务器以及接收所述DNS服务器的返回的IP地址是异步执行的。
5.如权利要求I所述的方法,其特征在于,接收用户端的DNS请求时,该方法进一步包括 缓存所述用户端信息; 如果所述用户端在预设时间内没有DNS请求,则删除所述用户端信息。
6.如权利要求2所述的方法,其特征在于,所述域名与所述IP地址的映射关系具有存活时间,所述存活时间由所述DNS服务器设置,在接收所述DNS服务器的返回的IP地址时获得。
7.一种DNS中继装置,其特征在于,包括 第一接收模块,用于接收用户端的DNS请求; 记录模块,用于记录所述DNS请求中的域名和用户端信息; 请求模块,用于将所述DNS请求发送至DNS服务器; 第二接收模块,用于接收所述DNS服务器的返回的IP地址; 反馈模块,用于根据记录的域名和用户端信息将所述IP地址返回至所述用户端; 其中,所述DNS服务器的IP地址预先设置在本地。
8.如权利要求7所述的装置,其特征在于,还包括 域名缓存模块,用于在域名缓存中记录所述域名与所述IP地址的映射关系。
9.如权利要求8所述的装置,其特征在于,还包括 查询模块,用于根据DNS请求中的域名,查询域名缓存中的域名与IP地址的映射关系; 如果存在与所述域名对应的IP地址,则所述反馈模块将所述IP地址返回至所述用户端。
10.如权利要求9所述的装置,其特征 在于,还包括 用户缓存模块,用于缓存所述用户端信息;如果所述用户端在预设时间 内没有DNS请求,则所述用户缓存模块删除所述用户端信肩、ο
全文摘要
本发明公开了一种DNS中继方法和装置,该方法包括,接收用户端的DNS请求;记录所述DNS请求中的域名和用户端信息;将所述DNS请求发送至DNS服务器;接收所述DNS服务器的返回的IP地址;根据记录的域名和用户端信息将所述IP地址返回至所述用户端;其中,所述DNS服务器的IP地址预先设置在本地。本发明使用户端的接入网关设备同时成为DNS服务设备,对于大规模终端用户的网络拓扑中,大大减少了配置DNS服务器所需的工作量,提高了网络管理效率,设置的用户和域名缓存机制可有效降低网络开销,缓解网关设备通信压力。
文档编号H04L29/12GK102801823SQ20121030352
公开日2012年11月28日 申请日期2012年8月23日 优先权日2012年8月23日
发明者张少太 申请人:神州数码网络(北京)有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1