OS X Server: Forcing DNS Propagation

Here I sat, tapping my fingers on the desk, waiting for a DNS change to propagate through a number of secondaries (note to self, I have too many secondary DNS servers at home). While sitting, tapping my fingers I dozed off and dreamt of fishing on the river I grew up on, of the sweet looks my daughter gives me and of retiring into a luddite colony of burning men and women in the desert. When I awoke and wiped the drool from my face, I realized I was wasting my life waiting for DNS to propagate. Then I flushed the cache one more time, just to see if it’s propagated: dscacheutil -flushcache Then fire up my friend Apple Remote Desktop, click on all of my secondaries and run rndc.┬áThe rndc command manages name server operations. It can be used for specific zones. A basic use of the command is to simply refresh a zone. Commands are run from the secondaries. To see statistics on queries, views and other operations, use rndc, followed by the -p option, which specifies the port DNS is running on (54) and then the stats command: rndc -p 54 stats You can then cat /var/named/named.stats to see information. Running other commands and looking back at the counters should show when operations are actually running and when they aren’t. Despite the stats, a stale record is stale so to refresh a zone use the refresh command (here we’re going to look at home.krypted.com): rndc -p 54 refresh krypted.com This queues up a refresh, which can still take some time. And after using Twitter for a little while, I no longer have any patience. So, I’m going to do a full retransfer, specifying the view to transfer from (this should be com.apple.ServerAdmin.DNS.public in OS X): rndc -p 54 retransfer krypted.com IN com.apple.ServerAdmin.DNS.public Now I’m going to reload my configuration, using the aptly named reload verb: rndc -p 54 reload And then flush the cache one last time and use dig to check my records. Viola. Now I can go home and have a life writing blog posts, books and articles. Ah, I love technology again. Amazing what not having to wait for things will do for ya’. Hmmm. I guess Captain Ludd can kiss my keester!