What is a DNS server?
How do DNS servers resolve a DNS query?
In a typical DNS query without any caching, there are four servers that work together to deliver an IP address to the client: recursive resolvers, root nameservers, TLD nameservers, and authoritative nameservers.
The DNS recursor (also referred to as the DNS resolver) is a server that receives the query from the DNS client, and then interacts with other DNS servers to hunt down the correct IP. Once the resolver receives the request from the client, the resolver then actually behaves as a client itself, querying the other three types of DNS servers in search of the right IP.
First the resolver queries the root nameserver. The root server is the first step in translating (resolving) human-readable domain names into IP addresses. The root server then responds to the resolver with the address of a top-level domain (TLD) DNS server (such as .com or .net) that stores the information for its domains.
Next the resolver queries the TLD server. The TLD server responds with the IP address of the domain’s authoritative nameserver. The recursor then queries the authoritative nameserver, which will respond with the IP address of the origin server.
The resolver will finally pass the origin server IP address back to the client. Using this IP address, the client can then initiate a query directly to the origin server, and the origin server will respond by sending website data that can be interpreted and displayed by the web browser.
What is the purpose of a DNS server?
The purpose of a DNS server is to translate what a user types into their browser into something a computer can understand and use to locate a website. In other words, its purpose is to convert a domain name such as www.example.com into an IP address such as 184.108.40.206.
Thanks to DNS servers, people don’t have to memorize complex IP addresses like 220.127.116.11, which is Google’s IP address. They just have to memorize www.google.com.
This translation process — formally known as DNS resolution — requires multiple hardware components. The most important is known as the primary DNS server.
What is a primary DNS server?
A primary DNS server is the first touchpoint for a browser asking where to find a site. The server contains what’s called the controlling zone file. This file contains the DNS information for the request domain, including its IP address as well as administrator contact information and components like Time to Live. Time to Live — or TTL — specifies a period of time (in seconds) in which the DNS record for a site remains valid in a local cache.
Once the primary DNS server returns the IP address of the requested domain to the browser, the query is resolved.
If the server is unavailable — due to a power outage, cyberattack, hardware malfunction, or other reason — then the browser asks a secondary DNS server. This server will contain a recent copy of the same DNS record.
While secondary DNS servers are not mandatory for a DNS system to work, they are recommended — and even required by some domain registrars — for this reason.
DNS Server Isn’t Responding
Sometimes when you type in a domain name into your browser’s address bar, you’ll be met with an error message that says something like “DNS server isn’t responding.” That means that the DNS server failed to respond.
There are a variety of reasons a DNS server may be unable to properly complete the resolution process. It could be a problem with your internet connection, or your DNS settings. It could be that your browser is outdated. Or it might be a problem on the server’s side — like a temporary power outage.
The good news is there are several ways to try to resolve this error. Let’s take a look at a few.
1. Try another web browser.
Your first step should be ruling out that your browser is causing the error. If you first attempted to visit the site on Google Chrome, try Safari or Firefox.
If you’re able to resolve the error by switching browsers, then check that you’re using the latest version of your preferred application. As an example, Chrome will show you whether an update is available in the top right corner of the browser window.
2. Deactivate your firewall temporarily.
If you can’t resolve the DNS server error message by switching or updating your browser, then the next step should be ruling out your firewall as the cause.
While firewalls are important for keeping your computer or device safe, they can interfere with your network connection and cause issues, including the “DNS server isn’t responding” error.
Temporarily deactivating them is easy, too. If your device runs on Windows, then navigate to your control panel and click Update & Security > Windows Security > Virus & Threat Protection > Manage Settings. On this settings page, you can deactivate your firewall. If your device runs on Mac OS, then simply navigate to System Preferences > Security & Privacy > Firewall to deactivate it.
Once you’ve deactivated your firewall, try visiting the same website from your browser. If the web page loads successfully, then you’ve identified the firewall as the problem. In that case, you can either reconfigure the settings of your existing antivirus program or switch to a new one.
Whether or not the error is resolved, don’t forget to reactivate your firewall before moving onto the next step.
3. Restart your router.
If you can’t resolve the DNS server error message by turning off your firewall, then the next step is ruling out your browser.
To start, simply try restarting your router by clicking the power button twice. This will flush your router’s cache, which can resolve the “DNS server isn’t responding” error. Once you’ve turned the router back on and re-established an internet connection, try visiting the same website from your browser. If the web page loads successfully, then you’re all done! If not, a reboot is in order. Simply pull out the power plug and wait around 30 seconds before plugging it back in. Then wait until your device has re-established an internet connection and try to visit the site again.
4. Flush your DNS cache and Reset Your IP
If the problem isn’t your browser, firewall, or router, then it could be your DNS settings. Specifically, it could be your DNS cache, which stores IP addresses and other DNS records of frequently visited domains in order to fulfill DNS queries more quickly. Flushing your DNS cache can help resolve the DNS error message.
There are several ways to do so, depending on the operating system of your device. If you’re using the latest version of Mac OS, then start by opening Finder. Then click Applications > Utilities > Terminal and type in the following command: sudo killall -HUP mDNSResponder.
Once you enter your password, you should see a message confirming that the DNS cache has been reset. You can then try to visit the website again in your browser.
For a complete guide on flushing DNS for Windows and other operating system, check out our post Flush DNS: What It Is, How to Do It & Why You Should.