Almost every single time you visit a website you are using DNS. DNS takes the domain name you type into your browser (such as www.google.com) and finds the associated IP address, which is where the site really lives. Thanks to DNS, we don’t need to memorize a long list of IP addresses when browsing the web. Instead, we get the convenience of the human readable addresses we’re used to using. Imagine having to identify everyone you know by their social security number rather than their name, and you can see why DNS is so critical to the modern web. In most cases, our ISP provides a DNS server, but ISP provided DNS, which most people use, is rarely ever the fastest, or even most ethical option. Simply put, the grimy suits running the ISPs have figured out yet another way to chew up the very bandwidth we’re paying them for by tastelessly inserting ads and unsolicited redirects into DNS, a previously non-commercialized service.
Over the last few years, in response to this unregulated ISP abuse of a fundamental element of the Internet, many alternative public DNS servers such as OpenDNS or Google DNS have been created. Regardless of who you’re using for your DNS needs, it is still nice to scout out what other, more responsive public DNS servers may be best given your geographic location. Today I’ll shine the Spotlight on a small, intuitive utility that helps in this noble step toward network optimization.
Thanks to the forward-thinking management team at Google, and their fabled and effective Innovation Time Off 20% time program, a Google employee from Belgium named Thomas Stromberg has created just the utility for this task, and it’s called namebench.
namebench is a tiny utility that has a lot going for it. It’s open source software, and it runs on Linux, Mac OS X, and even Windows (see what I did there?). namebench is a utility that does one thing and does it well. It will scan your browser history to see what websites you visit the most, taking these domain names into account while conducting its scan. After completing a benchmark, namebench will generate a report of the data it has gleaned in the form of a local webpage on your machine with a lot of useful information regarding which public DNS servers are the most responsive for you (including pretty, but informative graphs). For all of my fellow command line junkies out there, namebench will also run as a command-line utility, forgoing the web-based output for a more traditional and consolidated character-based output directly to your shell.
Thomas Stromberg’s contribution of a utility that fills a niche need, and his clear mindfulness of the rules of the Unix philosophy in designing said utility put namebench right in the Spotlight.
For more information from Thomas himself, you can check out his blog entry (http://sprocket.io/blog/2009/10/benchmarking-dns-servers/) detailing namebench.
Download namebench for your platform @ http://code.google.com/p/namebench/