基于API的分布式DNS系统

基于API的分布式DNS系统,dns,distributed,Dns,Distributed,当客户注册我的服务时,我想为他们创建一个aDNS条目: 用户名.mydomain.tld指向承载其页面的服务器的IPv4地址 此DNS系统理想情况下: 相当轻 分发。主/从模式可以,可能有主故障切换或在主设备脱机时变为只读 支持通过nice API进行更改(主要是创建/删除条目) 立即应用更改(了解DNS传播需要时间) 在Linux上运行 有什么东西符合这个描述吗 谢谢:-)您只需使用动态DNS更新即可。下面是一个非常基本的应用程序: 生成DNS服务器和更新客户端将使用的共享对称密钥: dn

当客户注册我的服务时,我想为他们创建一个aDNS条目:

用户名.mydomain.tld指向承载其页面的服务器的IPv4地址

此DNS系统理想情况下:

  • 相当轻
  • 分发。主/从模式可以,可能有主故障切换或在主设备脱机时变为只读
  • 支持通过nice API进行更改(主要是创建/删除条目)
  • 立即应用更改(了解DNS传播需要时间)
  • 在Linux上运行
有什么东西符合这个描述吗


谢谢:-)

您只需使用动态DNS更新即可。下面是一个非常基本的应用程序:

  • 生成DNS服务器和更新客户端将使用的共享对称密钥:

    dnssec-keygen -a HMAC-MD5 -b 512 -n HOST key.name.
    
    密钥名是一个域名,但是你可以使用任何你想要的东西:它或多或少只是密钥的一个名称

  • 配置绑定以允许此密钥更改区域mydomain.tld:

  • 使用nsupdate进行更改:

    nsupdate -k <pathname-to-file-generated-by-dnssec-keygen>
    
    <> >不要忘记在<代码>更新< /C>命令之后的空白行。code>nsupdate在看到空行之前不会向服务器发送任何内容


  • 与bind和其他DNS服务器一样,主服务器没有高可用性,但您可以拥有任意数量的从属服务器,如果它们得到增量更新(默认情况下应该如此),则更改将快速传播。您还可以选择使用隐形主服务器,其唯一任务是接收和处理这些DDNS更新,并将结果提供给从属服务器。

    您可以使用动态DNS更新。下面是一个非常基本的应用程序:

  • 生成DNS服务器和更新客户端将使用的共享对称密钥:

    dnssec-keygen -a HMAC-MD5 -b 512 -n HOST key.name.
    
    密钥名是一个域名,但是你可以使用任何你想要的东西:它或多或少只是密钥的一个名称

  • 配置绑定以允许此密钥更改区域mydomain.tld:

  • 使用nsupdate进行更改:

    nsupdate -k <pathname-to-file-generated-by-dnssec-keygen>
    
    <> >不要忘记在<代码>更新< /C>命令之后的空白行。code>nsupdate在看到空行之前不会向服务器发送任何内容


  • 与bind和其他DNS服务器一样,主服务器没有高可用性,但您可以拥有任意数量的从属服务器,如果它们得到增量更新(默认情况下应该如此),则更改将快速传播。您还可以选择使用隐形主服务器,其唯一任务是接收和处理这些DDNS更新,并将结果提供给从属服务器。

    如前所述,这两个服务器都是离题的,不可能的。DNS不会立即传播更改。已编辑。我的意思是说立即应用更改,而不是每小时应用一次或类似的更改。如果这不存在,我会感到惊讶——这似乎是一件相当常见的事情。如前所述,既离题又不可能。DNS不会立即传播更改。已编辑。我的意思是说立即应用更改,而不是每小时应用一次或类似的更改。如果这不存在,我会感到惊讶——这似乎是一件相当常见的事情。如果可以的话,我会给+2。如果你想以编程的方式来做,我只能补充一点,而不是使用nsupdate,你也可以使用一些DNS库,比如PHP的NET_DNS2。我只能补充一点,如果您想以编程的方式进行,您也可以使用一些DNS库,比如PHP的NET_DNS2,而不是nsupdate。