Dynamic DNS

Dynamic DNS is a method to update a DNS server from a remote host, often a DHCP client host.

NANOG
Some notes from NANOG

>You want a concrete suggestion? Make configuring DDNS on > BIND _vastly_ simpler, scalable to tens or hundreds of thousands of > clients, and manageable by your average NOC staff.

For the reverse namespace we have tcp-self and 6to4-self we could trivially add a 56-self for ISP's that want to      deploy on the /56 boundary rather than the /48 boundary that 6to4-self uses. TCP is used as the authenticator for these updates.

zone "23.2.1.in-addr.arpa" { type master; ...              update-policy { grant * tcp-self * PTR; };      };

TSIG or SIG(0) can be used in the forward direction.

zone "example.net" { type master; ...              update-policy { grant * self *; };      };

It doesn't get much simpler than that.

dhclient.conf
Text from 'man dhclient.conf' for DHCP v3.1.1.

DYNAMIC DNS The client  now has some very limited support for doing DNS updates when a lease is acquired. This is proto‐ typical, and probably doesn’t do what you want. It also only works if you happen to have control  over  your DNS server, which isn’t very likely. To make  it  work,  you  have to declare a key and zone as in the DHCP server (see dhcpd.conf(5) for details). You also need to configure the fqdn option on the client, as follows: send fqdn.fqdn "grosse.fugue.com."; send fqdn.encoded on; send fqdn.server-update off; The fqdn.fqdn option MUST be a fully-qualified domain name. You MUST define a zone statement for the zone to       be  updated. The fqdn.encoded  option may need to be set to on or off, depending on the DHCP server you are using. The do-forward-updates statement do-forward-updates [ flag ] ; If you want to do DNS updates in the DHCP client script (see dhclient-script(8)) rather than having  the  DHCP client do  the  update directly (for example, if you want to use SIG(0) authentication, which is not supported       directly by the DHCP client, you can instruct the client not to do  the  update  using  the  do-forward-updates       statement.    Flag should be true if you want the DHCP client to do the update, and false if you don’t want the       DHCP client to do the update.   By default, the DHCP client will do the DNS update.

RFC

 * RFC 2136 – Dynamic Updates in the Domain Name System (DNS UPDATE)
 * RFC 3007 – Secure Domain Name System (DNS) Dynamic Update