One of the common problems with Indian Internet users face is problem with DNS. The issue is kind of worst on BSNL’s DNS servers.
What exactly is DNS?
DNS stands for Domain Name System. It is responsible for converting for domain names like google.com into IP address – 74.125.235.49.
So you can visit the website on url http://google.com then using a hard to remember IP address like http://74.125.235.49
How exactly DNS works?
For working, DNS relies on the core part – the root DNS servers also known as gTLD (Generic Top Level Domain) servers which hold the data for all popular extensions like .com/.net/.org etc, apart from that, there are root servers for ccTLD’s for Country Code Top Level Domains like .in, .us, .co.uk etc.
These DNS servers just hold the data about the responsible DNS servers for perticular domain. E.g in case of “google.com” the root servers which hold data of all .com domain names, know that DNS servers responsible for google.com are ns1.google.com, ns2.google.com, ns3.google.com and ns4.google.com with their IP addresses. These servers actually hold the name to IP mapping of google.com.
That is, there exists an A record (stands for address record) for google.com to the respective IP addresses.
How do you reach these root DNS servers?
This is where ISP comes in. To make things super simple – most of ISP’s use so called DHCP – Dynamic Host Control Protocol – which is used for allocating certain things like IP address, subnet mask, default gateway and the DNS resolver addresses automatically whenever you connect to ISP. So, you actually use DNS via ISP’s DNS resolvers.
What exactly are DNS resolvers?
DNS resolvers are simply the part of Domain Name System which are responsible for resolving a perticular domain name. E.g take an example – you want to open http://mail.google.com on your BSNL broadband connection. Here, your system will ask DNS resolver of ISP i.e BSNL – for the IP address of mail.google.com – next it will wait for reply.
DNS resolver – upon reciving a “DNS query” will try to look into it’s cache to see if it knows IP address for mail.google.com – assuming you opened for the first time – it will not find IP in cache. Next, it will look into the right most part to find what is the first level domain associated with that hostname – which is .com in case of mail.google.com
Now, BSNL DNS resolver holds the IP address of all gTLD root servers, and it will go to the nearest one and will ask for the next part – “google.com”. Here root server will pass a non-authoritative reply telling it ns1,ns2,ns3 and ns4.google.com are responsible for the DNS zone of “google.com”.
So next, DNS resolver of BSNL will go any one of those (depending on nearest and efficient route) and will ask for “mail.google.com” IP address, which will be provided by the authoritative DNS servers of Google along with a TTL. Next, DNS resolver of BSNL will pass you the IP address of mail.google.com.
What exactly TTL and DNS caching means?
TTL means Time To Live. It make system more efficient by caching off the DNS records. When you ask for IP address of mail.google.com to BSNL’s DNS resolver, once it resolves the hostname by querying root DNS servers, and further the Google’s DNS server – it caches that record. DNS resolver keep the record in cache based on the time mentioned in TTL (in seconds).
So if mail.google.com has a TTL value of 3600 – it means DNS resolver can keep this hostname to IP maping for 1hr period. Based on the standard, DNS resolver is permitted to discard these packets before completition of TTL, but under no condition they are permitted to keep these records for more time then mentioned in TTL.
So what exactly is problem with DNS for Indian users?
Problem is with DNS resolvers. Most of ISP’s DNS resolvers are not really optimised and perform poor during peek load. They are not optimised to keep all records in cache and thus, they keep on dropping cache data well beyond the expiry of TTL, apart from that – most of DNS resolver become non-responsive during peak load which gives – “name not found” error, even when you are connected to Internet.
So, what’s the way out?
Way out to this problem is – using other available DNS servers. Google recently started offering Free Public DNS resolvers to users across the world, which perform lot better then compared to ISP’s DNS resolvers. The other popular option is OpenDNS. Based on my tests, I found OpenDNS is not very good way to issue since they don’t have any server located in India, and they route all traffic via London or Singapore location – which increases latency significantly.
So which one is best DNS resolver for me?
I highly recommend using open source tool called Namebench which checks all available DNS resolvers to you, and find which is best in terms of performance by sending them over few thousand queries.
I personally prefer using Google DNS over OpenDNS because Google DNS replies in less time, apart from no crazy DNS redirection for non-existant domain names as what OpenDNS does – making situation little frustrating.
After you choose which DNS resolver to choose, you can change DNS servers in Windows as:
1. Click on the connection link near the bottom of screen.
2. Click on “Properties”
3. Under “General Properties” tab – select Internet Protocol (IPv4) and click “Properties”.
4. Next, in the lower part of screen select the radio button – “Use following DNS server addresses:”
5. Next Enter the two DNS resolvers. Incase you use namebench, it will provide you with IP address of prefered servers, else you can use 8.8.4.4 & 8.8.8.8 for Google Public DNS, while 208.67.222.222 & 208.67.220.220 for openDNS.
Hope this will help you to fix DNS resolver issues and eventually a better experience on Internet!
Anurag is a Student and a part time network admin at dito.
He is all around network related technologies like DNS, Internet routing, servers, connectivity etc. He is also one of Power Posters at Official Google Apps forum and is involved in deployment of Google Apps.
Anurag is doing bachelors in Information & Technology from a State college in Haryana.


RAHULB February 6, 2012 at 5:02 pm
@anurag u should not left dnsaadvantage,in my experience dnsadvantage is better than google.dns advantage have sever in india
Anurag Bhatia February 7, 2011 at 12:55 pm
@ashR
Yup, I am studying at JMIT. Just completed semester 3.
Anurag Bhatia February 7, 2011 at 12:54 pm
@Minerva
Hi Minervra
1.Go to speedtest.net – and paste your results.
2.Open DOS and give command – tracert google.com – and paste your results.
ashR February 6, 2011 at 7:03 pm
@ Anurag
oh u r from JMIT….which semester?????
Minerva February 6, 2011 at 4:53 pm
Dear Anurag
I got high speed while downloading but browsing takes too time even i use google DNS & Open DNS. Pls tell me the reason. Browsing comes from bottle neck.
ravi February 6, 2011 at 2:31 pm
thank u very mush i like u r articles so please them coming for us appreciate u r work for us..
Vaibhav Kale February 5, 2011 at 5:58 pm
@Anurag Bhatia
Thanks
Anurag Bhatia February 5, 2011 at 5:33 pm
@Tarun Anand
Thanks Tarun
btw it will be great if you can post the DNS resolver’s IP addresses of MTNL. I just want to see if it was really an intentional block!
Tarun Anand February 5, 2011 at 4:26 pm
Previously I was not able to access mobango.com and some more site wiith MTNL DNS.
But after I changed the FNS to 8.8.4.4 and 8.8.8.8, I can open all the websites.
Thank you very much for this precious post.
You are a Geenius.
Three cheers for you…
Hip hip hurrey.. Hip hip hurrey.. Hip hip hurrey..
Anurag Bhatia February 5, 2011 at 12:49 pm
@Vaibhav Kale
Hi Vaibhav
Net disconnection is something related to “data link layer” in the TCP/IP model, while DNS operates at network layer. So what I mean to say is – disconnection is related to Physical network, availability of towers, spectrum, etc. It should not be really related to which DNS resolver you are using.
If you imagine road as network, then traffic routing boards are DNS!
Vaibhav Kale February 5, 2011 at 7:30 am
I’m Airtel, MH-Goa subscriber. When i connect to internet using Mobile Office and DNS is Google, the net works properly but after sometime the net gets disconnected due to non-availability of GPRS. Why this is happening? Pls help.
Anurag Bhatia February 4, 2011 at 6:22 pm
@girish
Hi Girish
BSNL’s DNS is not really good since it times out a lot. Apart from that, here’s a comparison of lookup time – http://goo.gl/RN3YK
Hope that will clarify!
Fahd February 4, 2011 at 4:12 pm
Thanks, wasn’t aware of Google DNS or Namebench. Been using OpenDNS.
girish February 4, 2011 at 4:06 pm
can you explain how you claim BSNL DNS is worst?
Pardeep February 4, 2011 at 10:32 am
Good job
kodandaram Balaji February 3, 2011 at 10:50 pm
gud ones, thanx dear,
plaban February 3, 2011 at 8:38 pm
Really nice info.Thanks a lot.
Santu Sovan Mandal February 3, 2011 at 7:27 pm
@Anurag
Nice job. Keep it up.
sam February 3, 2011 at 7:15 pm
yeah i had been using google dns for a while now. actually it is easier to set the dns in the router itself.
Webly Gomes February 3, 2011 at 4:31 pm
nice one bro……….
Kishor February 3, 2011 at 3:06 pm
@Anurag
Very nice info bro.
Expecting more such information in TT.
Anurag Bhatia February 3, 2011 at 1:43 pm
Hi Swapnil
That file is located on your c:…..of your system. It will good if you upload it online somewhere. You can send it directly to me on me@anuragbhatia.com
Swapnil February 3, 2011 at 1:34 pm
Thanks Anurag for your valuable info. Please find the below link is it ok?
file:///C:/docume~1/admini~1/locals~1/temp/namebench_2011-02-03_1311.html
Agnivo February 3, 2011 at 12:39 pm
Apart from google dns, I use 4.2.2.1/2/3 as secondary ones. They have been set in my router and relayed via DHCP on my PCs.
dayle February 3, 2011 at 12:30 pm
thanks! based on the dns recommendation it made, i noticed a 30% increase in speed
ARJUN CHANDRASHEKAR February 3, 2011 at 12:25 pm
Well If DNS Creates a Major Problem Will Cause Internet Connectivity Failure. As a Result Most of The Cellular Operators Like Aircel are Facing Internet Connectivity Failure or Internet Speed Down This Might Be Caused due to Improper Updating of Software or The Internet Protocol of Cisco Routers Might Run Down due to lack of Technical Knowledge of Network Personnel.
Anurag Bhatia February 3, 2011 at 11:54 am
@Varun
Please do a ping and traceroute (tracert on windows) to vsnl.in and post results here. I would be more then happy to help.
Anurag Bhatia February 3, 2011 at 11:52 am
@A Mohapatra
Happy to hear that
I will be posting more about networking stuff. So stay tuned!
Anurag Bhatia February 3, 2011 at 11:51 am
@merc
Thanks for those DNS servers Merc. Actually ping time is really low to those servers ~80ms from BSNL. But problem is – they are not as fast as Google DNS in new DNS lookups. Have a look at raw test report I posted here – http://goo.gl/T2mjY
Vikas February 3, 2011 at 11:51 am
Thanks, I got HCL Infinet as my fastest DNS server. Previously I was using HFLC Connect’s server advised by customer care.
jslaolin February 3, 2011 at 11:51 am
@merc
Realy very fast. Thanks a lot
jslaolin February 3, 2011 at 10:26 am
Like it. I had been using OpenDNS as well as Google DNS for my DSL as well as Cellphone Net connections for last year or so and having great results. Will try Namebench also. Thanks
Varun February 3, 2011 at 10:08 am
I have a problem with bsnl 3G. When browsing, sometimes browser(firefox & IE) shows waiting for http://www.something…., that never finishes loading. Does anyone have the same problem?
A Mohapatra February 3, 2011 at 10:07 am
Hearty thanks to Anurag and merc. You really solved my problem – was having a headache with BSNL EVDO and BSNL 3G due to DNS problem.
Abhijit February 3, 2011 at 9:21 am
Nice post… from the beginning when I took BSNL broadband there was problem with DNS server..
So since starting I was using Open DNS server then few months back switched to Google DNS as there was DNS redirection problem for non-existent domain names!!
kochikkaran February 3, 2011 at 8:00 am
Bye the way really useful post, Anurag….
kochikkaran February 3, 2011 at 7:57 am
Thank you… i had kproblem with loading websites in bsnl 3g for abt 2 weeks so i thought that bsnl has reduced the 3g speed… but when i checked it by downloading, i really showed that i am now getting more download speed than before…(around 10 % increase in my location and i am abt 20-30 kms away from city) … so i understood that bsnl has increased the signal strength… now i am clear that the issue is with dns…. i have changed to google dns and it is really fast now….
if you are using ubuntu like me, you can follow this link http://nixcraft.com/linux-software/507-set-how-change-dns-setting-ubuntu-linux-network.html
there is no need to use vi, you can use gedit and go to /etc/resolv.conf and open it with gedit and add google dns 8.8.4.4 & 8.8.8.8 for the name server
merc February 3, 2011 at 6:06 am
use below aircel chennai DNS servers if you are on BSNL. very fast, gmail n youtube also work well with these servers
202.148.202.3
202.148.202.4
Anurag Bhatia February 3, 2011 at 12:42 am
@Aaruna – I think BSNL has more problems. If you are on Airtel, probably you have options but on BSNL users certainly need to use some alternate.
@Kanaga – Try pinging the servers which comodo set. If ping time is less then ~150ms then OK, else I won’t really recommend. Sites like facebook do lot of DNS lookups for various apps, and a 200-300ms delay will be considerable when you have 50-60 DNS lookups for modern web 2.0 apps.
Ratish February 3, 2011 at 12:38 am
Excellent read.
Kanaga Deepan N February 3, 2011 at 12:37 am
My comodo antivirus cum firewall has set its own DNS server address, instead of getting one automatically.. Then I didn’t get much issues like earlier in BSNL…
Aaruna February 3, 2011 at 12:28 am
I agree to this issue. But usually the ISPs DNS servers can be reached in the shortest time (i am talkin abt the turn arnd time lookin at ping) but as u said if their dns server (esp wit bsnl) is not respondin in time, there is no use