本发明专利技术公开了一种实现DNS主与辅服务器的区数据自动同步的方法。本方法为:1)当主服务器增加区、删除区或修改区记录时,均向每一辅服务器发出包含有区名的Notify消息;2)当辅服务器收到某一区的消息后,向该主服务器请求该区的SOA记录,查询该主服务器是否存在该区:如果主服务器返回不存在该区,则辅服务器自动在本地删除该区;如果主服务器返回存在该区,则辅服务器查询本地是否存在该区;如果辅服务器本地没有该区,则辅服务器首先在本地创建一个空区,然后向主服务器请求区传送;如果辅服务器拥有该区,则按照XFR协议向主服务器请求区传送。本发明专利技术能够做到主辅服务器新增区、删除区自动同步,无需借助于第三方的工具。
【技术实现步骤摘要】
一种实现DNS主与辅服务器的区数据自动同步的方法
本专利技术涉及一种数据同步方法,尤其涉及一种实现DNS主与辅服务器的区数据自动同步的方法,属于网络
技术介绍
域名系统(DomainNameSystem,DNS)是互联网的重要基础设施,主要负责域名和IP地址之间的转换,DNS系统的正常运行,是web服务、电子邮件服务等几乎所有网络服务正常运行的基础。整个DNS系统的数据呈现树形结构,每个节点可视为一个区。负责解析某个区的DNS服务器称为该区的权威服务器。一台权威服务器可以管理多个区。每个区可由一台或多台权威服务器提供解析,即由一台主服务器或一台主服务器加多台辅服务器提供解析。当一个区的数据有变化时,负责解析该区的主服务器将会遵照NOTIFY(RFC1996)协议,发送“Notify消息”通知所有解析该区的辅服务器,辅服务器按照XFR(RFC1035与RFC1995)协议,向主服务器请求最新的区数据,以更新本地的区数据。NOTIFY与XFR协议为标准的RFC协议,但这些协议只规定了已知区的同步方式,假设的前提是主与辅服务器都已提前配置好待同步的区,因此NOTIFY与XFR协议对于新增、删除的区无法做到数据同步。即当主服务器新增或删除区时,辅服务器无法自动增加或删除相应的区。但现有的DNS系统用户,特别是域名注册商等用户,经常存在着大量的增加、删除区的操作。为了实现动态增删区,这些用户不得不采用第三方工具,来动态修改权威服务器的区配置信息,来实现主与辅的数据同步。
技术实现思路
针对现有技术存在的技术问题,本专利技术的目的在于提供一种实现DNS主与辅服务器的区数据自动同步的方法。为了实现主与辅服务器自动同步增删区,本专利技术在现有的Notify协议的基础之上,对Notify消息进行了“语义”扩展,当主服务器增加区、删除区、修改区记录时,均向辅服务器发出Notify消息,用于通知辅服务器从主服务器处获取最新的区数据信息;当辅服务器收到某一区的NOTIFY消息后,向主服务器请求该区的SOA记录,如果主服务器告知没有请求的区,辅服务器自动在本地删除该区。如果得到SOA回复,而辅服务器本地没有该区,辅服务器首先在本地创建一个空区,然后向主服务器请求区传送。如果辅服务器拥有该区,则按照现有的XFR协议向主服务器请求区传送。通过此方法无需再借助于第三方工具来新增、删除辅服务器的区数据。本专利技术的技术方案为:一种实现DNS主与辅服务器的区数据自动同步的方法,其中,一个区数据对应一解析该区的主服务器和至少一解析该区的辅助服务器,其步骤为:1)当主服务器增加区、删除区或修改区记录时,均向每一辅服务器发出包含有区名的Notify消息,用于通知辅服务器从主服务器处获取最新的区数据信息;2)当辅服务器收到某一区的Notify消息后,查询该主服务器是否存在该区:a)如果主服务器返回不存在该区,则辅服务器自动在本地删除该区;b)如果主服务器返回存在该区,则辅服务器查询本地是否存在该区;如果辅服务器本地没有该区,则辅服务器首先在本地创建一个空区,然后向主服务器请求区传送;如果辅服务器拥有该区,则按照XFR协议向主服务器请求区传送。进一步的,所述查询该主服务器是否存在该区的方法为:辅服务器向该主服务器请求该区的SOA记录,如果主服务器返回该区的SOA记录,则主服务器存在该区,否则主服务器不存在该区。进一步的,所述辅服务器收到主服务器发出的所述Notify消息后,首先验证该Notify消息的合法性,验证通过后查询该主服务器是否存在该区。进一步的,所述辅服务器向主服务器请求区传送的方法为:辅服务器向主服务器发起区的增量区传送,以获取该区最新的数据。进一步的,所述辅服务器向主服务器请求区传送的方法为:辅服务器向主服务器发起区的全量区传送,以获取该区最新的数据。与现有技术相比,本专利技术的优点:本专利技术能够做到DNS主与辅服务器区数据完全自动同步,包括新增区、删除区、区记录修改等,无需再借助于第三方的工具。大大减少了DNS的部署与维护成本,提高了DNS系统部署的灵活性。具体实施方式下面详细描述本专利技术针对不同情况的具体实施方法;自动增加区辅服务器自动增加区的步骤如下:1)当主服务器增加一个区时,向已配置好的所有辅服务器发送含有新增区名的Notify消息;2)辅服务器收到Notify消息后,首先验证Notify消息的合法性,验证NOTIFY消息是否来自可信的权威服务器。验证通过后进入下一步,否则结束处理;3)验证通过后,辅服务器向主服务器查询该区的SOA记录(StartofAuthority,“起始授权记录”),以决定是否启动区传送;SOA记录是区文件中的第一条记录,一个区中只能有一条SOA记录,用于描述区的版本号,维护人员邮箱等信息。4)辅服务器收到主服务器的SOA回复后,首先检查本地的区数据,如果没有管理该区,则首先为其创建一个空区,然后向主服务器发起区的全量或增量区传送,以获取该区最新的数据;5)更新本地的区数据,然后该更新后的辅服务器发送该区的Notify消息通知其他辅服务器;自动删除区辅服务器自动删除区的步骤如下:1)当主服务器删除一个区后,向已配置好的所有辅服务器发送含有该区区名的Notify消息;2)辅服务器收到Notify消息后,首先验证Notify消息的合法性。验证通过后进入下一步,否则结束处理;3)验证通过后,辅服务器向主服务器查询该区的SOA记录,以决定是否启动区传送;4)辅服务器判断SOA查询回复是否包含REFUSED、NODATA等提示该记录不存在的标志位,如果是,则表示主服务器已删除此区。从辅服务器中删除该区,并发送该区的Notify消息通知其他辅服务器;修改区的同步更新修改区的更新可以采用现有的NOTIFY协议与XFR协议就是解决修改区更新的方法。本文档来自技高网...
【技术保护点】
一种实现DNS主与辅服务器的区数据自动同步的方法,其中,一个区数据对应一解析该区的主服务器和至少一解析该区的辅助服务器,其步骤为:1)当主服务器增加区、删除区或修改区记录时,均向每一辅服务器发出包含有区名的Notify消息,用于通知辅服务器从主服务器处获取最新的区数据信息;2)当辅服务器收到某一区的Notify消息后,查询该主服务器是否存在该区:a)如果主服务器返回不存在该区,则辅服务器自动在本地删除该区;b)如果主服务器返回存在该区,则辅服务器查询本地是否存在该区;如果辅服务器本地没有该区,则辅服务器首先在本地创建一个空区,然后向主服务器请求区传送;如果辅服务器拥有该区,则按照XFR协议向主服务器请求区传送。
【技术特征摘要】
1.一种实现DNS主与辅服务器的区数据自动同步的方法,其中,一个区数据对应一解析该区的主服务器和至少一解析该区的辅服务器,其步骤为:1)当主服务器增加区、删除区或修改区记录时,均向每一辅服务器发出包含有区名的Notify消息,用于通知辅服务器从主服务器处获取最新的区数据信息;2)当辅服务器收到某一区的Notify消息后,查询该主服务器是否存在该区:a)如果主服务器返回不存在该区,则辅服务器自动在本地删除该区;b)如果主服务器返回存在该区,则辅服务器查询本地是否存在该区;如果辅服务器本地没有该区,则辅服务器首先在本地创建一个空区,然后向主服务器请求区传送;如果辅服务器拥有该区,则按照XFR协议向主服务器请求区传送。2.如权利要求1所述的方法...
【专利技术属性】
技术研发人员:张立坤,罗策,王楠,
申请(专利权)人:中国科学院计算机网络信息中心,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。