Dynamic DNS

The Dynamic Host Configuration Protocol (DHCP) allowed enterprises and Internet service providers (ISPs) to assign addresses to computers automatically as they powered up.

This, however, broke the end-to-end principle of Internet architecture and methods were required to allow private networks, with frequently changing external IP addresses, to discover their public address and insert it into the Domain Name System in order to participate in Internet communications properly.

As the system grew this task became difficult for any one site to handle, and a new management structure was introduced to spread out the updates among many domain name registrars.

Servers being run on certain types of Internet service provider, cable modems in particular, are likely to change their IP address over very short periods of time, on the order of days or hours.

The first is standards-based DDNS, which uses an extension of the DNS protocol to ask for an update; this is often used for company laptops to register their address.

The second is proprietary DDNS, usually a web-based protocol, normally a single HTTP fetch with username and password which then updates some DNS records (by some unspecified method); this is commonly used for a domestic computer to register itself by a publicly known name in order to be found by a wider group, for example as a games server or webcam.

As the IP address may change frequently, corresponding domain names must be quickly re-mapped in the DNS, to maintain accessibility using a well-known URL.

The automatic reconfiguration is generally implemented in the user's router or computer, which runs software to update the DDNS service.

The method described by RFC 2136 is a network protocol for use with managed DNS servers, and it includes a security mechanism.

This form of support for RFC 2136 is provided by a plethora of client and server software, including those that are components of most current operating systems.

Standards-based methods within the DNSSEC protocol suite, such as TSIG, have been developed to secure DNS updates, but are not widely in use.

Dynamic DNS is an expected feature or even requirement for IP-based security appliances like DVRs and IP cameras.

In almost all cases, a simple HTTP based update API is used as it allows for easy integration of a DDNS client into a device's firmware.

There are several pre-made tools that can help ease the burden of server and client development, like MintDNS,[3] cURL and Inadyn.