In the last couple of years, I made my home server reachable in the internet via a dynamic DNS provider (no-ip.org). While this worked pretty painless for a number of years, it has one big drawback: My host is in a foreign domain. DNS CNAMEs can reduce this problem, but I want my hosts to be in my own DNS domain.
So, I decided to use dynamic DNS updates with my BIND DNS server and TSIG (Transaction Signatures). Here’s a short howto:
dnssec-keygen
.allow-update { key "mykey"; };
/etc/network/if-up.d/
.nsupdate
, which is included with bind. I issue the commandsserver A.B.C.D
zone bock.nu.
update delete my.host.name.
update add my.host.name. 5 A $4
send
/etc/bind
group-writable with SGID bit, in order to allow BIND to create journal files and update zone files. Otherwise, it would return SERVFAIL and log “journal creation failed”.The howto by Dag Wieers helped me a lot. Go there for more details.
— Jul 15, 2009