On Thursday Google announced a project they have been working on called Google Public DNS . The Domain Name System, or DNS for short, is something that we use hundreds of times each day but hardly ever think about. DNS is used to translate easy-to-remember hostnames, such as http://www.google.com, into the actual IP address for the server handling the requests. It is absolutely essential to the way today’s internet works. By default, most of the DNS servers that we use are hosted by our ISP. The ISP has a set of DNS servers and each website request we make goes to these servers which sort everything out and find the server that we’re requesting. Google’s Public DNS will join existing services such as OpenDNS to provide an alternative to the DNS servers hosted by ISPs all over the world.

When I first saw the announcement flow into my Twitter stream, I was pretty confused. DNS isn’t really something I think about on a daily basis and it seemed like an unusual project for Google to be working on. I was eager to dig into the documentation and see what Google’s motivation was. They must have expected this type of reaction because the first section on the Introduction page is “Why Google Public DNS?”. Google explains that webpages are getting more complex and the sheer magnitude of DNS lookups each day is starting to put major pressure on the existing DNS infrastructure. Since they already crawl most of these sites on a regular basis for their search indexing, it makes sense to cache the information and use the knowledge to help speed up DNS lookups. They claim that they just want to make the web a faster and more secure place. While I believe this is a valid motivation, I think that there’s more to it. How does this really fit into Google’s business plan?

It’s all about the data. The more valuable data that Google is able to gather the better they are able to target their advertising. By routing all of your DNS lookups through Google instead of your ISP, Google is able to “see” all of the internet traffic that’s coming from your PC. For example, if you visit 100 websites today and are using Google’s DNS servers, Google would be able to see each of the 100 websites you requested, what time you requested those sites, and the ‘geolocation’ you are requesting those sites from. Whoa, whoa, whoa… sounds like a privacy nightmare!?  Not exactly, the Privacy Policy for Google Public DNS is actually pretty reasonable. They store two types of logs for the DNS requests: temporary and permanent logs. Temporary logs are kept for 24-48 hours and store all of the information about the request, including your full IP address and region information. Google said these temporary logs are useful for detecting and debugging problems with the service. The permanent logs do not store your IP address. These logs store information such as the domain name requested, user’s geolocation (like zipcode, region, etc… not very detailed), cache hit-rates, and other technical details. Furthermore, Google says:

“We don’t correlate or combine your information from these logs with any other log data that Google might have about your use of other services, such as data from Web Search and data from advertising on the Google content network.”

Good news. Google is not gathering any of this DNS data in an attempt to “know” more about us. At least not on an individual basis…and as long as you trust them to adhere to this privacy policy.

Even though Google will not be using this data to build up their knowledge about you and me, I don’t see any reason why they can’t use this data to increase their knowledge about all of us collectively. If enough people use this service, Google will be able to gather billions and billions of webpage requests. Requests which didn’t come from search. This data will include geolocation information which could allow Google to know the “top website requests for Raleigh, NC”, for example. Are you starting to see how this knowledge would be invaluable for advertisers trying to decide where to spend their money? I assume that Google is also able to get this type of information from the millions(?) of websites using their Google Analytics tool. This is useful, but tapping into the DNS requests is going straight to the source. It’s extremely useful data about web usage and something that I think Google would be wise to take advantage of.

Assuming you’ve got to this point and I’ve calmed your privacy fears, you might be wondering how you can start using Google’s DNS service. Google has put together a useful doc explaining how to configure your computer for Google DNS. I’ve been using their DNS servers for a few days now and it seems pretty nice. Webpages seem to load quickly and I’ve noticed MUCH nicer “DNS error page” than the one my ISP (Time Warner Cable.. blahh) shows me. Give it a try and see if you notice a difference.

I’m curious to hear your thoughts about this post. Feel free to let me know what you think in the comments below!