自托管动态 dns 服务?

Naf*_*Kay 4 dns dynamic-dns bind

有没有办法自托管动态 DNS 服务?我真的很喜欢 DynDNS 等人的灵活性,但我想托管我自己的动态 DNS 服务,这样我就可以更好地控制并能够将我拥有的域发送到名称服务器而无需支付费用。动态 DNS 的 FOSS 实现是否可用,或者有没有办法在 BIND 中做到这一点?

use*_*686 6

bind v9 支持动态更新:

zone "example.net" {
    type master;
    file "zones/example.net.db";

    update-policy local;

    auto-dnssec allow;
    key-directory "keys/example.net";
};
Run Code Online (Sandbox Code Playgroud)
  • 您可以使用nsupdate本地管理区域,

  • nsupdate 从 CGI 脚本调用(由客户端 PC 访问,如 DynDNS 更新程序),

  • 或使用TSIGnsupdate远程使用

    zone "example.net" {
        update-policy {
            grant <keyname> name <hostname> A AAAA TXT;
            //grant * self * A AAAA TXT;
        };
    };
    
    key <keyname> {
        algorithm HMAC-MD5;
        secret "<keydata>";
    };
    
    Run Code Online (Sandbox Code Playgroud)

    (文档:update-policy

  • Windows 具有使用GSS-TSIG 的本机支持 DDNS ,这需要有效的 Kerberos 设置(不一定是 Active Directory)。

  • 在本地网络中,更新可以由 DHCP 客户端 (ISC dhclient) 或服务器 (ISC dhcpd) 执行。这也在安全动态 DNS页面中进行了描述。

  • bind可以自动签署动态区域