Audience: System admins for wireless and ADSL users. Dial-up users may be
System requirements: bind 9, nsupdate and `host'. netdate is recommended if you are not keeping your clock in sync with ntpd
Source license: GPL
You can find the old page for DDDNS here.
Incredibly brief technical detailsDynamic DNS (DDNS) is a well-worn technique for associating a DNS name with a dynamic IP address, usually ADSL, but occasionally dial-up as well. With DDNS, what happens if your machine is not connected for some time? A person visiting your web site may see another site. Mail to your domain may be rejected with a rude message, or, even worse accepted.
DDDNS allows you to run a web site and mail server on a dynamic address with the assurance that if your link is down your name will also be down. Having a reliable DNS name means that you can do all the things you should require a static IP address for:
- Reliably deliver mail directly to your dynamic internet link. You can run your own mail server, and not pay per account or per-MB of storage.
- Run a web server on your cheap and fast ADSL link, avoiding expensive hosting charges.
- Run other services, e.g. intranet, VPNs, other remote control protocols, etc.
- How is a DNS lookup failure handled? Well, DNS servers (according to the RFC) cache that a particular IP address is not a valid DNS server for a domain for 10 minutes. When you NS records time out, your new address is used immediately, provided you have a new dynamic address (there is no such thing as propagation).
- To configure an ETRN mail spool, the dsmtp mailer for sendmail works quite nicely. Configuration of exim, postfix, qmail and MSEXCH is left as an exercise to the reader.
- This technique is quite similar to the approach of registering your domain using a dynamic DNS provider to point to you as the DNS server. This is described by the GnuDIP project. In that approach, you also run a DNS server at your dynamic address. It is a fail-safe arrangement, but mail to you may bounce immediately if your line is down (I think), since your MX records do not even exist if your system is not connected. (This can spoil your day.) (But if you are careful, you can get a DDDNS effect ...)
ScriptsWe have included our failover scripts to handle multiple simultaneous pppoe connections. This was written to overcome the 3GB traffic quota offered in South Africa (this problem is a little dated):
- Initially you use a single account for internet connection
- When the first account is bandlimited, you bring up an additional account.
- You continue to use the limited account for South African traffic, and use the additional account for all other traffic
- If / when you exceed the traffic limit on your second account, then the system will keep switching accounts until it finds an unlimited one. (If someone can add logic to detect that all accounts are bandlimited, please do so).
- Handling inbound connections to two different addresses without having asymmetric routing (Linux advanced routing rules)
- Keeping dddns up to date for multiple interfaces, and also handling the case of two names referring to one interface -- well, it used to, but that's now integrated into the standard dddns.
DownloadLinks to download:
gpg --keyserver subkeys.pgp.net --recv-keys E3572642 gpg --verify *.gz.asc *.gz