However, today I realize that there's really no point in hosting your own DNS. What it all comes down to is reliability and latency. It might sound like a good idea to throw a couple cheap DNS servers in your closet. But what many people fail to realize is that global latency is a significant factor. It's why content delivery networks exist, and it's something that should not be ignored. If someone in Australia visits your site hosted in the U.S. then the latency for DNS resolution alone could be as much as 1 second long. In addition to that, unless you have ridiculous network and power redundancy, your DNS is unlikely to be as reliable as a professionally hosted DNS service would be.
So what I'd recommend instead is a DNS service with IP AnyCast routing. I've been using DNS Made Easy for the past 3 years. Below is a map showing their network locations.
Essentially, when you sign up you're given 6 DNS addresses (rather than just two that you typically get with GoDaddy). And through their routing techniques, the nearest network location is typically the one that is used for DNS resolution, which in turn keeps latency very low no matter where you are in the world. And with all of this redundancy in place, their uptime is ridiculous and it's something you'd never match with a couple servers in your closet. The icing on the cake, so to speak, is that all of this is very cheap.
So let's be smart about this. The cheapest option with DNS Made Easy as of today is $30/year for 10 domains and 5 million queries per month. The service is obviously better than anything you could do with your own servers under one roof. And at that price, it's going to be a lot cheaper as well. The conclusion I made is that it's absolutely not worth it to host your own DNS anymore.