Updated February 2021. DNS or Domain Name System look-ups play a huge role in defining how fast your broadband connection really is with ‘real world’ applications such as browsing. In this article, we’ll be show you how to speed up DNS look-ups easily and for free by choosing the best and fastest DNS server(s) for your particular broadband connection. For more tips and guides in improving your broadband, visit our Increase Broadband Speed Guide.
What is the Domain Name System (DNS)?
The Domain Name System is the mechanism by which meaningful website domain names (such as google.com or facebook.com) are translated into the IP addresses (for example, 220.127.116.11 and 18.104.22.168) of the servers providing these websites. All web servers are assigned an IP address, which is a numerical label that is used to identify them and which enables them to be found on the Internet.
While the IP addressing system is a very useful identification mechanism for computer devices, it is not a particularly human-friendly means of identification. A domain name (for example, www.google.com) is essentially a human-friendly version of an IP address.
Not only is a domain name easier for people to remember, but a domain name provides flexibility in terms of how websites are accessed on the Internet. For example, Facebook could decide to change the server providing its web pages (and, therefore, its IP address) without needing to change the domain name.
DNS look-ups create a delay
When you enter a domain name into your browser or you click a particular link, it is necessary to first translate the name into a numerical IP address so that the contents of the website can be retrieved. This process inevitably causes a delay in the web page being rendered although, through optimisation, this delay can be minimised.
A distributed database architecture is used with the Domain Name System, with many DNS servers located across the world to allow domain names to be translated to IP addresses for all devices is existence, despite many changes in IP addresses being made every single day.
It would be impractical to have a single DNS server providing the translation of domain names to IP addresses for all Internet users in the world since a single server would soon get congested by all the DNS look-ups being undertaken. Also, broadband users located a significant distance from the server would suffer from large time delays.
Many ISPs run their own DNS servers to provide domain name to IP address translation for their broadband users. In addition, a number of third parties (such as Google, Cloudflare and OpenDNS) provide independent, so-called “Public” DNS servers.
In general, most routers supplied by ISPs are set up to use the DNS servers operated by the ISP. This means that your browsing experience is determined in part by the performance, reliability and location of your ISP’s DNS servers.
If your ISP’s DNS servers are unreliable or slow (for example at peak times), your web browsing experience may be significantly affected. Furthermore, if your ISP’s DNS servers are located a considerable distance away from you, there may be significant DNS look-up delays.
There may be nothing wrong with your ISP DNS servers in terms of performance; it just may be that they are located much further away than a Public DNS server.
You can view the DNS server settings for the most popular ISPs by clicking on the following link:
According to Google, with the increasing complexity of web pages that reference resources (e.g. images) from numerous domains, DNS look-ups can become a “significant bottleneck” in the browsing experience.
Three ways to identify the best DNS servers
Since many broadband users use the router supplied by their ISP (using default settings), they will be using the ISP’s default DNS servers by default.
The good news is that you are generally able to choose whatever DNS servers you want and the best Public DNS servers may deliver improved DNS look-up performance compared to the DNS servers operated by your ISP. This is often a great performance tweak that will not cost you anything.
In increasing order of time and complexity, here are three ways to identify the best DNS server settings for your connection:
- just pick some from our ‘Top Three’ Public DNS services
- measure the ping to/from several DNS servers and pick the ones with the smallest ping
- download and run software (e.g. DNS Benchmark or Namebench) that thoroughly tests available DNS servers to identify the best for your location.
Let’s take each approach in turn.
Method 1: Just pick some DNS servers from our ‘Top Three’
Public DNS servers across the world have been extensively tested by different organisations and we have undertaken our own testing. We have found three Public DNS services consistently deliver excellent results: Google, Cloudflare and OpenDNS. You cannot go too far wrong by simply randomly picking one or more of these!
Here are some more options for Public DNS services:
|Level3||22.214.171.124 126.96.36.199 188.8.131.52 184.108.40.206 220.127.116.11 18.104.22.168|
|Comodo Secure||22.214.171.124 126.96.36.199|
Table 1: Public DNS Servers
Method 2: Measure the ping and pick the smallest
Ideally, you want to use a DNS server that is geographically close to you because this will minimise the distance that the DNS look-ups will travel to the DNS server and the response travels back to your device.
We recommend that you measure the ping (e.g. using a computer or mobile phone application) for a broad range of Public DNS servers (for example, using our list above). Here are the results we got:
|IP address of DNS server||Average ping (ms)||Minimum ping (ms)||Maximum ping (ms)|
Table 2: Ping measurements for DNS servers
Bear in mind that you may get very different results. In our case, there was a substantial difference (about 10.5 ms) between the best and worst average ping time. We were also interested to find out that the ping to Google’s DNS servers (which are used by many broadband users to maximise performance) could be improved upon at our particular location. This shows the importance of determining the best DNS servers to use at your specific location as there is not one best setting for everyone.
Method 3: Identify the best DNS servers using DNS Benchmark or Namebench
If you are a perfectionist and want to test a large number of DNS servers, then two software programs can potentially help:
- DNS Benchmark (for Windows and Linux)
- Namebench (for Mac, Windows and Unix).
DNS Benchmark, which works with Windows (including Windows 10) can be downloaded from the following site:
After several minutes of processing, the DNS Benchmark program provides an ordered list of DNS servers.
Namebench runs on Mac OS-X, Windows and UNIX and can be downloaded from the link below:
Namebench has been the only option if you use a Mac. Sadly, the software has not been developed since 2010 and does not work with macOS Catalina.
As with DNS Benchmark, Namebench thoroughly tests the performance of your current DNS servers against a range of alternatives, to help identify the best DNS settings to use.
After its testing, the software will provide recommendations on DNS settings and will indicate the speed enhancement that you would obtain by changing your DNS settings to the recommended ones.
When Namebench is first run, it can take many minutes to gauge performance of all DNS servers tested. Please ensure that, while testing is being performed, your broadband connection is not being used, to ensure accurate results.
The screenshot below (click to view in full size) shows the output produced by the Namebench utility:
Namebench outputs a great deal of information. Don’t worry about messages such as “appears incorrect” or “is hijacked” as these are erroneous and point to the use of load balancing services sometimes used by large web providers.
The key metric to look at in the table is the average look-up time in ms (“Avg (ms)”). Minimum and maximum values are also provided to give an indication of the spread in look-up times. The DNS servers are listed in terms of performance, with the best performing DNS server at the top.
Namebench also provides several graphs, as shown below (click for full size), which are useful in comparing look-up times.
If we’re being honest, after running DNS Benchmark and Namebench many times, well-regarded Public DNS services such as Google’s DNS service (188.8.131.52 and 184.108.40.206) generally perform very well. Once you are using excellent DNS servers, there’s a law of diminishing returns on extracting more performance.
Modify your router and device DNS settings
Once you have identified the best possible DNS servers, you will need to ensure that your devices are set up to use these DNS servers rather than the default ones.
The quickest way to change the DNS settings used by your devices is usually by changing DNS settings in your router, although annoyingly some routers (for example, the BT Home Hub) do not allow DNS server settings to be modified. As described below, it is still possible to change DNS settings in such cases on a device-by-device basis.
On your router, you will probably find the DNS settings in the settings associated with DHCP. As all routers are different, you may need to look at documentation for your particular router to understand how to change the DNS settings.
As an example, a screen shot for the Billion 8800AXL is shown below. For the Billion 8800AXL, the set-up menu can be found by selecting ‘Configuration’ and ‘LAN’. You simply enter the IP addresses of the top two DNS servers you have picked. Generally, we advise you to enter two DNS addresses. In the case that a DNS look-up fails with the first DNS server, a look-up using the second (backup) server on the list will be attempted.
While changing the DNS settings in the router is usually the most convenient way of propagating DNS settings across all your devices, you can manually change the DNS settings on each individual device (which can be more time consuming). This is usually very easy to do, although you may need to refer to your device instructions if you are unsure.
As an example with macOS, DNS settings can be found by going to ‘Open Network Preferences’ and then selecting your Internet connection followed by ‘Advanced’, and then the ‘DNS’ tab. The DNS addresses can then be entered.
Other pages you may be interested in: