一种DNS数据更新方法、系统及设备技术方案

技术编号:21278372 阅读:20 留言:0更新日期:2019-06-06 10:46
本发明专利技术实施例公开了一种DNS数据更新方法、系统及设备,涉及数据通信领域,可以简单高效的保证客户端本地缓存的DNS数据为最新,避免因为域名与IP地址的映射关系改变导致的网络访问故障。该方法包括:DNS服务器获取到本地DNS数据发生改变时,启动定时器,在所述定时器的超时时间到期前接收到任一客户端发送的DNS请求报文时,在发送给所述客户端的DNS响应报文中添加附加标识;所述附加标识用于提示DNS服务器上的DNS数据发生变化;所述客户端接收到所述DNS响应报文后,根据所述附加标识,对本地已缓存的DNS数据重新发起DNS请求,获取最新的DNS数据。

A DNS Data Updating Method, System and Equipment

The embodiment of the present invention discloses a DNS data updating method, system and device, which relates to the field of data communication. It can simply and efficiently ensure that the DNS data cached locally by the client is up-to-date and avoid network access failure caused by the change of mapping relationship between domain name and IP address. The method includes: when the DNS server acquires the local DNS data and changes, it starts the timer, adds an additional identifier to the DNS response message sent to the client when the DNS request message sent by any client is received before the timeout of the timer expires, and the additional identifier is used to prompt the DNS data on the DNS server to change; and when the client receives the DNS request message, the additional identifier is used to prompt the DNS data on the DNS server to change; After the DNS response message is received, according to the additional identifier, the DNS request is re-initiated for the local cached DNS data to obtain the latest DNS data.

【技术实现步骤摘要】
一种DNS数据更新方法、系统及设备
本专利技术属于数据通信领域,尤其涉及一种DNS数据更新方法、系统及设备
技术介绍
域名系统(DomainNameSystem,DNS),因特网上作为域名和IP地址相互映射的一个分布式数据库,能够使用户更方便的访问互联网,而不用去记住能够被机器直接读取的IP数串,而是通过域名在DNS服务器上查询到对应的DNS数据后得到该域名对应的IP地址达到访问的目的,这就是DNS存在的积极意义。由于网络的瞬息万变,保存在DNS服务器上的DNS数据并非恒久不变,在现有的网络访问场景中,域名与IP地址的映射关系改变导致客户端业务中断的情况时有发生。
技术实现思路
本专利技术的实施例提供了一种DNS数据更新方法、系统及设备,可以简单高效的保证客户端本地缓存的DNS数据为最新,避免因为域名与IP地址的映射关系改变导致的网络访问故障。第一方面,提供一种DNS数据更新方法,所述方法包括:DNS服务器获取到本地DNS数据发生改变时,启动定时器,在所述定时器的超时时间到期前接收到任一客户端发送的DNS请求报文时,在发送给所述客户端的DNS响应报文中添加附加标识;所述附加标识用于提示DNS服务器上的DNS数据发生变化;所述客户端接收到所述DNS响应报文后,根据所述附加标识,对本地已缓存的DNS数据重新发起DNS请求,获取最新的DNS数据。第二方面,提供一种DNS服务器,所述DNS服务器包括定时器模块、报文发送模块和报文接收模块,所述定时器模块,用于获取到本地DNS数据发生改变时,启动定时器;所述报文接收模块,用于接收到任一客户端发送的DNS请求报文后,触发报文发送模块发送DNS响应报文;所述报文发送模块,用于向所述任一客户端发送DNS响应报文,在所述DNS响应报文中添加附加标识;所述附加标识用于提示DNS服务器上的DNS数据发生变化。第三方面,提供一种客户端,所述客户端包括报文发送模块和报文接收模块,所述报文发送模块,用于向DNS服务器发送DNS请求,以接收所述DNS服务器发送的DNS响应报文;所述报文接收模块,用于接收所述DNS服务器发送的DNS响应报文,并获取DNS数据;所述报文发送模块,还用于根据所述DNS响应报文携带的附加标识,对本地已缓存的DNS数据重新发起DNS请求。第四方面,提供一种DNS数据更新系统,所述系统至少包括第二方面所述的DNS服务器和第三方面所述的客户端。上述方案中,客户端向DNS服务器发起DNS请求后,DNS服务器通过在DNS响应报文中携带附加标识的方式告知客户端DNS服务器上存在域名与IP地址映射关系更新,客户端接收到携带所述附加标识的DNS响应报文后,对本地已缓存的DNS数据重新发起DNS请求,获取最新的DNS数据,得到最新的域名与IP地址的映射关系。实现对客户端本地缓存DNS数据的更新。可以简单高效的保证客户端本地缓存DNS数据为最新,避免因为域名与IP地址的映射关系改变导致的网络访问故障。同时,本专利技术还能有效减少维护DNS数据的人力成本。附图说明为了更清楚地说明本专利技术实施例的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1为本专利技术实施例的一种DNS数据更新方法的方法流程图;图2为本专利技术实施例的一种DNS服务器的结构示意图;图3为本专利技术实施例的一种客户端的结构示意图;图4为本专利技术实施例的一种DNS数据更新系统的结构示意图。具体实施方式下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。本专利技术实施例描述的系统架构以及业务场景是为了更加清楚的说明本专利技术实施例的技术方案,并不构成对于本专利技术实施例提供的技术方案的限定,本领域普通技术人员可知,随着系统架构的演变和新业务场景的出现,本专利技术实施例提供的技术方案对于类似的技术问题,同样适用。域名系统(DomainNameSystem,DNS)一般采用服务器/客户端(Client/Server,简称C/S)架构,DNS服务器中维护主机域名与IP地址映射关系的DNS数据。客户端向DNS服务器发送DNS请求(DNS查询报文),DNS服务器收到该请求后,向该客户端发送包含请求的域名及域名对应的IP地址的DNS响应报文,客户端收到该DNS响应报文后将域名和域名对应的IP地址存入到本地缓存的DNS数据中,实现用户在客户端上直接输入域名,就可以在客户端保存的DNS数据中查找到该域名对应的IP地址,实现访问对应的网页的目的。本专利技术实施例提供一种DNS数据更新方法,以解决DNS服务器上DNS数据发生改变时,对客户端本地缓存中的DNS数据的快速更新问题。下面结合附图对本专利技术实施例的方法进行详细说明,如图1所示,本专利技术实施例一提供一种DNS数据更新方法,所述方法包括:步骤101、DNS服务器获取到本地DNS数据发生改变时,启动定时器,在所述定时器的超时时间到期前接收到任一客户端发送的DNS请求报文时,在发送给所述客户端的DNS响应报文中添加附加标识;所述附加标识用于提示DNS服务器上的DNS数据发生变化;当DNS服务器获取到本地DNS数据发生改变,这种改变为域名与IP地址的映射关系改变,可先启动一个定时器,所述定时器的超时时间大于所述DNS服务器设置的本地DNS数据的默认生存时间。客户端在获取到DNS数据后,会根据DNS服务器针对该条DNS数据的DNS响应报文中的生存时间TTL起定时器进行本地该条DNS数据老化,而DNS服务器发送的DNS响应报文中的TTL默认为3600秒,即客户端本地保存的该条DNS数据的老化时间就为3600秒,因此,定时器超时时间应当大于3600秒,以便于没来得及接收变更的客户端都有足够的时间去更新本地DNS缓存,保证在DNS服务器上DNS数据发生改变后,所有客户端至少进行了一次DNS数据老化,实现客户端的本地缓存的DNS数据均是最新的域名与IP地址的映射关系数据,避免因为域名与IP地址的映射关系改变导致的网络访问故障。在定时器超时时间到期前,任一客户端向DNS服务器发起DNS请求,此时如果该DNS服务器上DNS数据发生改变,这种改变通常为域名与IP地址的映射关系改变,则该DNS服务器在发送的DNS响应报文中添加附加标识以通知该客户端其本地DNS数据可能过期,该客户端接收到携带附加标志的DNS响应报文后,对本地已缓存的DNS数据重新发起DNS请求,达到快速刷新(同步)本地缓存DNS数据的目的。在本专利技术实施例中,定时器只起一个,循环更新,当所述定时器启动后,所述DNS服务器获取到本地DNS数据再次发生改变时,重置所述定时器,如:第一时刻,DNS服务器获取到本地的某一DNS数据有改变,启动一个定时器,定时器的超时时间设置大于DNS服务器本地DNS数据的默认生存时间,如可设置为TTL+1秒,之后的第二时刻,另一DNS数据也发生改变,则此时重置定时器时间,即此时定时器本文档来自技高网...

【技术保护点】
1.一种DNS数据更新方法,其特征在于,所述方法包括:DNS服务器获取到本地DNS数据发生改变时,启动定时器,在所述定时器的超时时间到期前接收到任一客户端发送的DNS请求报文时,在发送给所述客户端的DNS响应报文中添加附加标识;所述附加标识用于提示DNS服务器上的DNS数据发生变化;所述客户端接收到所述DNS响应报文后,根据所述附加标识,对本地已缓存的DNS数据重新发起DNS请求,获取最新的DNS数据。

【技术特征摘要】
1.一种DNS数据更新方法,其特征在于,所述方法包括:DNS服务器获取到本地DNS数据发生改变时,启动定时器,在所述定时器的超时时间到期前接收到任一客户端发送的DNS请求报文时,在发送给所述客户端的DNS响应报文中添加附加标识;所述附加标识用于提示DNS服务器上的DNS数据发生变化;所述客户端接收到所述DNS响应报文后,根据所述附加标识,对本地已缓存的DNS数据重新发起DNS请求,获取最新的DNS数据。2.根据权利要求1所述的方法,其特征在于,所述定时器的超时时间大于所述DNS服务器设置的本地DNS数据的默认生存时间。3.根据权利要求2所述的方法,其特征在于,所述附加标识添加在所述DNS响应报文头部标志字段的OptionCode中。4.根据权利要求1-3任一项所述的方法,其特征在于,所述方法还包括:当所述定时器启动后,所述DNS服务器获取到本地DNS数据再次发生改变时,重置所述定时器。5.一种DNS服务器,其特征在于,所述DNS服务器包括定时器模块、报文发送模块和报文接收模块,所述定时器模块,用于获取到本地DNS数据发生改变时,启动定时器;所述报文接收模块,用于接收到任一客户端发送的DNS请求报文后,触发报文发送模块发送DN...

【专利技术属性】
技术研发人员:祝存涛
申请(专利权)人:迈普通信技术股份有限公司
类型:发明
国别省市:四川,51

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1