Friday, November 12, 2010

Beginners' Guide to choosing a DNS server for faster web browsing

I have already written in the previous posts of this series about the concept of DNS and all about DNS prefetching. This article will explain how and why you must switch your DNS servers, which will probably result in effectively faster web browsing.

Note: Though this involves customizing the what is set for you by your ISP, this is in NO WAY illegal... or even unethical. Also, everything perfectly safe and reversible. Remember that your download speed won't magically go up. It's only the time taken to lookup websites that will go down, thus giving a boost to your surfing speed. You'll understand this if you go back and read my previous articles.
Photo by Stuck in Customs (Trey Ratcliff, Flickr)

Oh yes, and before continuing, I strongly urge you to go back and check out the previous articles, as this post may contain things that you are not familiar with. This post is written as a continuation of the previous ones in the series.

Why to switch?
As I have explained previously, there is a lot of time that is potentially wasted when the DNS requests are made back and forth between the ISP, the DNS server(s) and your web browser. Your Internet Service Provider (ISP) assigns a default DNS server to you. In some cases, your provider may have their own DNS server. But you have no idea how these default servers are in terms of performance. Maybe they are really slow and waste more than a second of your page loading every time, without you even realizing.

That's why, to leave behind the days of slow web browsing, you can always switch to a better DNS service. There are several available, including, but not limited to OpenDNS, DNS Advantage and Google Public DNS.

How it works?
When you change the setting to use a specific DNS server, either on your computer or your network (everything explained later), your browser is automatically instructed to use that server instead of the one your ISP has defined in their settings for you.

You get a DNS address for any service, like or something, where the 'x's are numbers, which you can plug into your settings. There may be two or more addresses for the same service, and you can put in both, as primary and secondary. Or you can even use addresses from two different servers.

Because these servers probably have better performance, your website requests will be completed in lesser time, thus gaining you fractions of seconds.

What are my options?
There are a number of public DNS servers available for you, as I have mentioned before. I have not come across any that are not free. In fact it is hard to make them a paid service, as DNS addresses can be circulated freely, by anyone. Here are some of the most popular ones:

Google Public DNS
DNS Advantage

What's the best one then? You ask? Well, there is no single answer. You expected it right? Why would I have such a long article then? The best public DNS server that you can use is all dependent on your geographical location.

What do you do then? Well, either you can try out each one of them, and see which one suits you better, or use this benchmark software, called namebench (yes, it's spelt with a small 'n'). You can run the program for about ten minutes, without using your Internet connection, while it tests and benchmarks your connection. And then, it tells you what DNS server you should use and how much faster it is compared to your current one. The catch? Well, technically there's none. But it crashed on me. Try it out, though. It may work.

How do I set it up?
Here comes the big question. You have run the benchmark, or maybe you have got a recommendation from someone living in your area for a particular service. What do you do now? You have to set up your computer to use the specified DNS server, instead of getting one automatically (from your ISP). Or, if you have a home or corporate network, with lots of people using it, you don't really want to set up every machine in there, do you? You can tell your router to use a specified DNS service.

You need to do this at just one level. For example, you don't need to set up your computer if you are setting up your router.

Set-up for a computer running Windows Vista or higher:
  • Go to the Control Panel.
  • Under Network and Internet, click View network status and tasks. 
  • Here, choose your network, and click View status for it.
  • In the dialog that appears, click Properties. Click Continue if prompted.
  • Select Internet Protocol Version 4 (TCP/IPv4) and click the Properties button here.
  • At the bottom, choose the radio box Use the following DNS server address.
  • Put in the address(es) for the service you have chosen.
This may be slightly different for Windows 7, but all you need to do is to get to the Properties for the network you are using.
    Set-up for a computer running an older version of Windows:
    • Go to the Control Panel. 
    • In Category View, click Network and Internet Settings.
    • Go to Network Settings.
    • On the General tab (for a LAN), or the Networking tab (for all other connections), click Internet Protocol (TCP/IP), and then click Properties.
    • Here, you'll get the same settings as you get for a higher version of Windows. Follow the last two steps of the above walkthrough.
    Set-up for Macintosh:

    Follow the instructions here.

    Set-up for Linux:

    Ubuntu users, see this.
    SUSE Linux users, go here.

    BONUS! Set-up for a Nokia (or probably any other Symbian) phone:

    See my new article.

    Set-up for router:

    All routers are different. You may have to look up online or refer to the documentation of your router to check how you can change your DNS address. I'm sure there is tons of info available on that on the web.

    Because Linksys is so popular, and I happen to be a Linksys user, I'll walk you through changing the setting on a Linksys router.

    • After you are in the browser based configuration screen (type in, or whatever IP you have set, in the address bar and type in your password), scroll down to the bottom of the Basic Setup screen.
    • You'll see the boxes for Static DNS 1, 2 and 3.
    • Plug in your numbers, and don't worry about the WINS thing.
    • Once you hit Save Settings, you're done.
    So, that's all about choosing the perfect DNS server. And remember, there is no best service. Some of the companies claim to have servers all over the globe and you are directed to the nearest one to save time. So, choose wisely. It doesn't cost anything.

    For myself, I go with DNS Advantage, and I live in south Asia. But I have not tried out all of them too, and maybe I will very soon.