How many times have you wanted to pull your hair out because you read, “DNS failed”?
If there was something I could do to prevent it or fix it, I would. In fact, now, I will (after all writing the article and talking to all the developers). When that happens, you won’t be able to access the internet. If it’s happening too often, it can be infuriating. It’s usually quite easy to fix most DNS issues. If your website is having DNS issues, then it may be facing a lot of down-time, which isn’t good for your business and can severely affect your revenue.
If you’re not clear about what DNS (Domain Name System) is, it’s fine. Most people don’t know what it really does and how it works. We do know it’s got something to do with a server. So DNS is basically a database that has all this information, which translates host names, or rather, human-readable, alphabetical codes (http:/www.example.com) to a certain IP address, or rather, numerical form (like 220.127.116.11) for you to actually reach and see the websites you intend to reach. Without DNS, you’d have to type in those numbers whenever you wanted to visit a website. However, what I’ve mentioned above is just the tip of the iceberg. Looking at the bigger picture, whenever multiple hosts (or even two hosts) relay information, a DNS service is involved in one way or another.
This week, we've been looking into all the DNS related issues you could run into, and how we could fix them.
Sometimes, it might simply be a network problem, and not a DNS problem at all. So, before you go around trying to fix the DNS, you need to make sure you get to the bottom of the issue. You can easily do this by navigating to “Network and Sharing Center” and launch the troubleshooter. If there’s any minor connectivity issue, it will be resolved. If it’s not that simple, there are other ways to determine and solve those problems-
- Sometimes, the problem lies in a server that forms part of your network. You could try sending messages to other computers that share your DNS server to see who the troublemaker really is.
- If that works well, the second thing you need to do is check if your domain registration hasn’t expired.
- Thirdly, make sure you’ve got your correct nameservers. This could be erroneous if you’ve recently changed your hosting service.
- If you have made any changes, you can’t expect them to be rectified or appear instantly. It takes 24-48 hours for any changes to take effect.
Issues With Your Browser or Device
A quick way to find out if your device or browser is causing all the issues is using another device, using another browser, changing or re-installing it. If the issue persists, it means your browser and device are innocent.
Problems with the website you're visiting, and not yours
If A quick way to find out if it’s really an issue with your DNS server or if a specific website you’re visiting is down, try visiting the site using mobile data.
High DNS Latency
This just means high loading times. The reasons for this are primarily two: the DNS name servers being physically far away from the location where most of the traffic is coming, or from network congestion.
Solution: Changing the location of DNS servers to those closer to the location of your high-traffic visitors almost always works. If that doesn’t work, another solution is to put on your thinking hat, and try to figure out any changes you made, before the high latency began showing up. This could lead to mis-configuration errors or even a malware that could have come with something you installed recently.
Badly Configured DNS Records
Let’s say, you do manually configure your settings, and you run into even worse issues. That would probably because you messed up the configuration big time, and the right values for your IP addresses and records have been mishandled. Make sure this is on your checklist! It may be easier to figure out which records are the culprit for the server issues popping up. If you’ve got an email delivery issue, for example, you may want to properly configure the MX, SPF or DKIM records.
This stands for “Time To (go) Live” which literally means the time it takes for any change you make, to go live. It works by periodically caching your information. This could be a 24 to 44 hour window. High TTL values means long wait times and down times when there’s high traffic between servers. If your primary IP address becomes unavailable for any reason, and if you have Failover enabled, people trying to visit your site will be directed to the backup IP address, The lower your TTL, the better in this case.
If your website is such that changing the records regularly is vital, then the TTL can be as low as 30 seconds to 5 minutes. The loading speed on the end-user side might increase. It might take a split-second long, but that's only one down side! To balance it out, you could configure high TTL values for non-critical records, like your email address, or simply have a short TTL right before you make any changes.
It could be your ISP’s fault
Sometimes, you have no control over your ISP’s (Internet Service Provider) rotten services. Their servers could be bogged up, having down-time or just inefficient. There are services that could boost your speedCloudfare, as recommended by Haseeb Ilyas, “Provides fast and secure managed DNS as a built-in service on its network. The Cloudflare DNS service leverages a vast global network to deliver the fastest DNS performance recorded on DNSPerf.com." An easier alternative is to simply change your ISP.
Incomplete DNS Propagation
This is the time it takes for your ISP to update all its nodes across the world during activities like site migration, or when you update nameservers or DNS records for your domain. It takes 24-48 or up to 72 hours. Each ISP node might take its own time to update its cache, based on your updated records, and it might take longer in some geographical locations. There are online tools like What's My DNS to see the state of your DNS propagation, but the ultimate solution is to reduce the TTL value
Glitches When Setting Up a New Hosting Account/Migrating To a New Hosting Provider
When the issue is not from your side, you can contact your hosting provider and update your DNS settings. This can happen in a couple of ways:
- Getting your A record updated- this updates your IP address (and find out what your IP address is), and doesn’t change any DNS setting at all.
- Updating the domain’s nameservers- this does change your domain’s DNS settings to default settings, so make sure that everything is configured, or rather re-configured well.
- Waiting for DNS propagation to complete before assuming there's an issue.
- Make sure you have the access and records to all your zone files to ensure nothing is lost. I could talk about editing the zone files but such sensitive work better be left to the experts! Just tell 'em to fix it and know what kinds of information to provide them. It's the zone files- they're the brain of the system. While talking to Sajeel Qureshi, he couldn't stop stressing on this. This is the brains of the DNS. It's the key that dictates what sites name links to what address. You're gone without it."
A screenshot of a zone file
Useful Online Tools To Weasel Out DNS Issues
- IntoDNS scans your DNS records to identify configuration issues and generates detailed reports in a jiffy. This could cut save you a lot of time spent trying to find the errors.
- Network Tools has been around for 20 years, providing high quality service in the following categories:
- Email Checker
- HTTP Headers
- IDN and Punycode Conversion
- NS Lookup
- Online Ping
- Spam Blacklist Checker
- DNS Lookup
- URL Encode and Decode
- WHOIS Search
3.OpenDNS’ Cache Check checks what OpenDNS your site visitors see when they request a domain. The reporting for your site is done using all the OpenDNS servers.
...and you're done with your DNS issues checklist!
We've covered nearly everything that could ever normally come up with your DNS, and how to fix it. If there's anything that hasn't been covered, we've got developers who love to rant about these things all the time, so feel free to leave your comments if you feel that this was helpful, or that I missed out on anything!