用于动态域名系统(ddns)的方法和系统的制作方法
【技术领域】
[0001]本发明大体上涉及计算机网络的领域。更确切地说,本发明涉及用于为包括多个网络接口的网络节点提供动态域名系统(DDNS)服务的方法和系统。
【背景技术】
[0002]动态DNS(DDNS)是实时更新域名系统(DNS)以指向因特网上的不断改变的IP地址的方法。所述方法用于为可能在网络上改变位置的资源提供持久域名。网络装置已经结合了 DDNS技术以允许网络装置用持久域名与其它主机进行通信。动态更新域名服务器记录的标准化方法由因特网工程任务组(IETF)请求注释(RFC) 2136规定,通常被称为动态DNS更新。由RFC 2136描述的方法是与所管理的DNS服务器一起使用的网络协议,并且所述方法包含安全机制。RFC 2136支持所有的DNS记录类型,但是通常其仅作为DHCP系统的扩展来使用,并且其中经授权的DHCP服务器在DNS中登记客户端记录。对RFC 2136的此形式的支持由许多客户端以及服务器软件提供,所述软件包含是大部分当前操作系统的组件的那些软件。对RFC 2136的支持还是许多目录服务的组成部分,所述目录服务包含LDAP以及Windows的活动目录域。
[0003]最先进水平的网络装置的共同特征是通过使用如dyn.com或no_ip.com等现有DDNS服务或使用由制造商自身代管的定制服务来部署DDNS。大部分基于网络的DDNS服务使用标准的用户名以及密码安全架构。这要求用户首先在DDNS服务器网站处创建帐户并且随后配置他们的装置以便每当检测到IP地址改变时向DDNS服务器发送更新。这是被几乎所有基于网络的DDNS服务使用的方法。
[0004]一些装置制造商仅允许他们的DDNS服务由他们制造的装置使用,并且还一起消除了对用户名以及密码的需要。这通过使用在DDNS服务器上以及在装置的固件内保密的加密算法对装置的MAC地址进行加密来实现。所得的解密或解密失败对应地用以确认或拒绝更新。
[0005]然而,为网络装置选择以及分配域名的过程需要时间。另外,当网络装置具有多个待分配域名的网络接口时,最先进水平的DDNS不能够为网络装置的特定网络接口选择以及分配域名。
【发明内容】
[0006]根据本发明的实施例中的一者,当网络节点能够通过特定网络接口连接到第一服务器上或在特定网络接口处发生预定义事件时,网络节点向第一服务器发送更新消息。更新消息含有对应于网络节点的唯一标识符。唯一标识符不能被用户更改。唯一标识符是对第一服务器唯一的,使得没有两个网络节点能用相同的唯一标识符向第一服务器发送更新消息。唯一标识符遵循域名的规范。导致网络节点发送更新消息的预定义事件包含在网络节点的至少一个网络接口处的IP地址的改变、在网络节点的网络接口中的一者处IP地址的分配、在网络节点的网络接口中的一者处检测到的接入链路连接、在网络节点的网络接口中的一者处的接入链路断开、DNS资源记录的更新、以及引起在网络节点的事件记录处的新条目的任何事件。在一个变体中,更新消息被加密。在一个变体中,更新消息还含有对发送更新消息的网络接口的标识。在一个变体中,对于网络节点能够连接到第一服务器上的每一网络接口,网络节点通过所述网络接口中的每一者发送更新消息。在一个变体中,网络节点通过多个网络接口向第一服务器发送多个相同的更新消息。在一个变体中,更新消息通过网络节点定期发送。在一个变体中,所发送的更新消息用以通过第一服务器确定网络节点的状态。
[0007]根据本发明的实施例中的一者,当第一服务器接收含有网络节点的唯一标识符的DNS请求时,第一服务器从其计算机可读存储媒体中检索对应于所述唯一标识符的DNS资源记录并且随后用所述DNS资源记录回复DNS请求。在一个变体中,DNS请求含有唯一标识符以及网络接口标识符,并且第一服务器从其计算机可读存储媒体中检索对应于所述唯一标识符以及所述网络接口标识符的DNS资源记录并且随后用所述DNS资源记录回复DNS请求。
[0008]第一服务器可以实施为动态域名系统(DDNS)服务器。替代地,第一服务器实施为能够接收更新消息并且根据更新消息改变其DNS资源记录的域名系统(DNS)服务器。替代地,第一服务器是能够接收更新消息、处理更新消息、根据更新消息改变其DNS资源记录并且回复DNS请求的计算装置。优选地,通过定制DDNS服务器以处理本文中所描述的更新消息以及DNS请求来实施第一服务器。
【具体实施方式】
[0009]以下说明仅提供优选的示例性实施例并且并不意图限制本发明的范围、实用性或配置。实际上,对优选的示例性实施例的以下描述将为所属领域的技术人员提供用于实施本发明的优选的示例性实施例的使能描述。应理解,在不脱离如在所附权利要求书中阐述的本发明的精神和范围的情况下可以对元件的功能以及布置进行各种改变。
[0010]此外,应注意,实施例可以描述为一个过程,所述过程描绘为流程图、作业图、数据流图、结构图或方块图。尽管流程图可以将操作描述为顺序过程,但是许多操作可以并行或同时执行。此外,操作的次序可以重新布置。当操作完成时,过程终止,但是所述过程可以具有图中不包含的额外步骤。过程可以对应于方法、函数、步骤、子例程、子程序等。当过程对应于函数时,其终止对应于所述函数返回到调用函数或主函数。
[0011]此外,如本文中所披露,术语“二级存储器”以及“主存储器”可以表示用于存储数据的一或多个装置,包含只读存储器(ROM)、随机存取存储器(RAM)、磁性RAM、磁心存储器、磁盘存储媒体、光学存储媒体、快闪存储器装置和/或用于存储信息的其它机器可读媒体。术语“机器可读媒体”包含但不限于便携式或固定存储装置、光学存储装置、无线信道以及能够存储、含有或携带指令和/或数据的各种其它媒体。
[0012]此外,实施例可以由硬件、软件、固件、中间件、微码、硬件描述语言或其任意组合来实施。当用软件、固件、中间件或微码实施时,用以执行必要任务的程序代码或代码段可以存储在存储媒体等机器可读媒体中。处理单元可以执行必要任务。代码段可以表示步骤、函数、子程序、程序、例程、子例程、模块、软件包、类,或指令、数据结构或程序语句的任意组合。一个代码段可以通过传递和/或接收信息、数据、变元、参数或存储器内容耦合到另一代码段或硬件电路上。信息、变元、参数、数据等可以经由包含存储器共享、消息传递、令牌传递、网络传输等的任何合适的方式传递、转发或传输。
[0013]图1图示网络环境,其中网络节点104经由网络接口 104a、104b和/或104c连接到互连网络101上。在实施例中的一者中,每当发生预定义事件时,网络节点104通过互连网络101向第一服务器102发送更新消息。在以下情况下时发生预定义事件:网络接口中的至少一者的IP地址已经改变、IP地址已经分配给网络接口中的至少一者、对应于网络接口中的至少一者的DNS资源记录已经改变、网络接口中的至少一者的可用性已经改变、或在至少一个网络接口处观察到的性能已经改变。例如,如果网络接口 104a的IP地址改变,那么更新消息嵌入有对应于网络节点104的唯一标识符、对应于网络接口 104a的网络接口标识符、以及网络接口 104a的经更新的IP地址或DNS资源记录。主机103通过互连网络101向第一服务器102发送DNS请求。互连网络101可以是因特网或任何其它网络。
[0014]当请求被第一服务器102接收时,第一服务器102检查所述请求以确定主机103请求哪个网络节点的或网络接口的DNS资源记录。当第一服务器102已经确定网络节点或网络接口的标识时,所述第一服务器从计算机可读存储媒体中检索相对应的DNS资源记录,并且经由互连网络101在DNS回复中向主机103发送DNS资源记录。
[0015]根据本发明的实施例中的一者,第一服务器102实施为动态域名系统(DDNS)服务器。替代地,第一服务器102实施为能够接收更新消息并且根据更新消息改变其DNS资源记录的域名系统(DNS)服务器。替代地,第一服务器102是能够接收更新消息、处理更新消息、根据更新消息改变其DNS资源记录并且回复DNS请求的计算装置。
[0016]当第一服务器实施为DDNS服务器时,所述DDNS服务器遵循在IETF RFC 2136中描述的机制。
[0017]请求包含DNS查询,出于本发明的可读性的目的,DNS查询被视为请求。
[0018]系统:
[0019]图6A是根据本发明的实施例中的一者的网络节点(例如,网络节点104)的方块图。网络节点104包括处理单元602、主存储器603、系统总线604、二级存储器605以及网络接口 104a、104b以及104c。处理单元602以及主存储器603直接连接到彼此上。系统总线604将处理单元602直接或间接地连接到二级存储器605以及网络接口 104a、104b以及104c上。使用系统总线604