WHAT IS DNS?
The Domain Name System is the hierarchical and decentralized naming system used to identify computers reachable through the Internet or other Internet Protocol networks. The resource records contained in the DNS associate domain names with other forms of information.
The Domain Name System (DNS) is the phonebook of the Internet. Humans access information online through domain names, like nytimes.com or espn.com. Web browsers interact through Internet protocol (IP)addresses. DNS translates domain names to IP Address so browsers can load Internet resources.
Each device connected to the Internet has a unique IP address which other machines use to find the device. DNS servers eliminate the need for humans to memorize IP addresses such as 192.168.1.1 (in IPv4), or more complex newer alphanumeric IP addresses such as 2400:cb00:2048:1::c629:d7a2 (in IPv6).
How does DNS work?
The process of DNS resolution involves converting a hostname (such as www.example.com) into a computer-friendly IP address (such as 192.168.1.1). An IP address is given to each device on the Internet, and that address is necessary to find the appropriate Internet device – like a street address is used to find a particular home. When a user wants to load a webpage, a translation must occur between what a user types into their web browser (example.com) and the machine-friendly address necessary to locate the example.com webpage.
In order to understand the process behind the DNS resolution, it’s important to learn about the different hardware components a DNS query must pass between. For the web browser, the DNS lookup occurs “behind the scenes” and requires no interaction from the user’s computer apart from the initial request.
What are the steps in a DNS lookup?
For most situations, DNS is concerned with a domain name being translated into the appropriate IP address. To learn how this process works, it helps to follow the path of a DNS lookup as it travels from a web browser, through the DNS lookup process, and back again. Let’s take a look at the steps.
Note: Often DNS lookup information will be cached either locally inside the querying computer or remotely in the DNS infrastructure. There are typically 8 steps in a DNS lookup. When DNS information is cached, steps are skipped from the DNS lookup process which makes it quicker. The example below outlines all 8 steps when nothing is cached.
The 8 steps in a DNS lookup:
- A user types ‘example.com’ into a web browser and the query travels into the Internet and is received by a DNS recursive resolver.
- The resolver then queries a DNS root nameserver (.).
- The root server then responds to the resolver with the address of a Top Level Domain (TLD) DNS server (such as .com or .net), which stores the information for its domains. When searching for example.com, our request is pointed toward the .com TLD.
- The resolver then makes a request to the .com TLD.
- The TLD server then responds with the IP address of the domain’s nameserver, example.com.
- Lastly, the recursive resolver sends a query to the domain’s nameserver.
- The IP address for example.com is then returned to the resolver from the nameserver.
- The DNS resolver then responds to the web browser with the IP address of the domain requested initially.
Once the 8 steps of the DNS lookup have returned the IP address for example.com, the browser is able to make the request for the web page:
- The browser makes a HTTP request to the IP address.
- The server at that IP returns the webpage to be rendered in the browser (step 10).
HOW MANY DNS SERVERS ARE INVOLVED IN LOADING WEBPAGES
In all, there are four different DNS servers involved in loading a webpage (assuming it’s not already cached on the user’s computer or device):
- DNS recursor. This server is similar to a librarian who is tasked with finding a specific book in a library. This server is specifically intended to handle queries directly from client machines through web browsers (and other similar applications).
- Root nameserver. This server translates human readable host names – web URLs – into IP addresses. It’s basically the translator.
- TLD nameserver. This server is responsible for categorizing websites based on their type. It’s the last portion of the domain name. Different TLDs include .com, .org, .net, etc.
- Authoritative nameserver. The fourth and final server involved in loading a webpage is the authoritative nameserver. If this server has access to the record the user’s query is requesting, the IP address will be delivered to the DNS recursor that made the original request.
Common DNS Attacks
For the most part, DNS works flawlessly in the background. However, it’s been around for decades and hackers are continuously finding ways to compromise the underlying system (which was never developed with security in mind). Here are some common attacks we see:
- Reflection attacks. This type of attack overwhelms users with high-volume messages straight from DNS resolver servers. The attackers request massive files from all open resolvers using the spoofed IP address of their victim. Once the resolvers respond, the victim gets an endless flow of unrequested data that overwhelms their machine.
- Resource exhaustion. As the name suggests, these attacks work by clogging up the DNS infrastructure of ISPs. This blocks users from reaching sites on the internet.
- Cache poisoning. This type of attack diverts users from an intended destination to malicious web addresses. The attacker does so by inserting false address records into the system. Once a user ends up on one of these phony websites, they can be tricked into providing sensitive information.
HOW TO CHANGE DNS SETTINGS IN WINDOWS 10
How To Change DNS Settings In Windows 10
When you sign up for an internet service provider (ISP), they assign you to a DNS server of their creation. This function makes it possible for you to access all your favorite sites and services without manually typing their IP address. Unfortunately, however, not all DNS servers are created equal. There are several reasons you may want to change DNS in Windows 10, but it’s necessary to learn what they are and how they work so you can make an informed decision.
Why change DNS in Windows 10?
As mentioned earlier, not all DNS servers are created equal. A DNS server is a server like any other, meaning it can go down or experience mediocre performance. It will also be faster the closer it is to your location. If your ISP has not properly invested in its infrastructure, its DNS service could cause problems with latency or an inability to load websites.
There’s also the issue of privacy and censorship. Depending on your location, your ISP may retain logs of your DNS queries, which acts as a list of every website you’ve ever visited. In some countries, they then share this data with government agencies as a form of mass surveillance. Some ISPs even deliver advertisements when you enter a URL that doesn’t exist.
So, should you change your DNS server? in most cases your ISP’s DNS server will result in a faster experience. This is because most major websites these days use something called a Content Delivery Network (CDN) to serve content to you. CDNs fetch data from their closest available server to your location. Alternate, public DNS servers may not be as close as your ISP’s. They could, for instance, only be in the nearest major city. As a result, the website may deliver its data to you from that city. The result? Potentially, slower download speeds.
To change the DNS addresses through the Settings app, use these steps:
- Open Settings.
- Click on Network & Internet.
- Click on Ethernet or Wi-Fi.
- Select the connection that connects Windows 10 to the network.
- Under the “IP settings” section, click the Edit button.
- Use the “Edit IP settings” drop-down menu and select the Manual option.
- Turn on the IPv4 toggle switch.
- Under the “Preferred DNS server” section, confirm the primary DNS address.To use Cloudflare, Google Public DNS, or Cisco OpenDNS, use these settings:
- Cloudflare: 184.108.40.206
- Google Public DNS: 220.127.116.11
- OpenDNS: 18.104.22.168
- Under the “Alternate DNS server” section, confirm the secondary DNS address.You can use one of the secondary addresses from these companies:
- Cloudflare: 22.214.171.124
- Google Public DNS: 126.96.36.199
- OpenDNS: 188.8.131.52
- Click the Save button.
- Restart the device.
After you complete the steps, you should now be able to connect to the internet using the new resolvers. The restart may be necessary to regain an IP address configuration for the device.
Although the Settings app should be the recommended option to change the DNS settings on your computer, we’re not listing this option first because it can be confusing for some people.
How to change DNS settings using Command Prompt on Windows 10
Alternatively, it’s also possible to change the DNS configuration using Command Prompt on Windows 10.
To use Command Prompt to change the computer DNS settings, use these steps:
- Open Start.
- Search for Command Prompt, right-click the top result, and select the Run as administrator option.
- Type the following command to launch the tool to change the networking settings and press Enter:
- Type the following command to identify the names of the network adapters and press Enter:
interface show interface
- Type the following command to set the primary DNS IP address and press Enter:
interface ip set dns name="ADAPTER-NAME" source="static" address="X.X.X.X"In the command, change “ADAPTER-NAME” with the name of the network adapter you identified on step 4, and change “X.X.X.X” with the IP address you want to use.To use Cloudflare, Google Public DNS, or Cisco OpenDNS, you can use these settings:
- Cloudflare: 184.108.40.206 and 220.127.116.11
- Google Public DNS: 18.104.22.168 and 22.214.171.124
- OpenDNS: 126.96.36.199 and 188.8.131.52
This example sets the primary DNS address to 184.108.40.206:
interface ip set dns name="Ethernet1" source="static" address="220.127.116.11"
- Type the following command to add an alternative DNS IP address and press Enter:
interface ip add dns name="ADAPTER-NAME" addr="X.X.X.X" index=2In the command, change “ADAPTER-NAME” with the name of your network adapter you queried on step 4, and change “X.X.X.X” with the secondary address.This example sets the secondary DNS address to 18.104.22.168:
interface ip add dns name="Ethernet1" addr="22.214.171.124" index=2Quick tip: You can repeat the above steps to add more addresses if necessary. However, in the command, you must increase the number of the index option by 1. For instance, interface
ip add dns name="Ethernet1" addr="126.96.36.199" index=3
Once you complete the steps, Windows 10 will start using the new DNS server addresses to resolve domain names to numeric addresses that your device can understand.
Drop your comment