What is a DNS and How Does it Work?
DNS is the foundation of the internet. Sadly, a lot of people do not know what it is or how important it is for their internet connection. In this article, we will discuss what DNS is, trace the history of DNS, and further show you how it works. If you aren’t a techie, this knowledge may not mean very much to you. However, no knowledge’s a waste, right?
DNS — What is it?
DNS stands for Domain Name System. It is the system through which users connect with any website. In this process, names are matched with specific corresponding numbers. The set of numbers form the unique ID that takes a user to a server housing a website.
Think of DNS as a phone directory. You have names of people matched against their phone numbers. The DNS works much in the same way. However, in our case, the human names will be domain names, and the phone numbers will be replaced by IP addresses. Thus, when a person types in a website address, the DNS identifies the IP address. After this, it connects the user to the physical address of the website. Voila, the person gets connected.
History of DNS
When the internet was invented, only a few people had access to it. At that time, it was relatively easy to match IP addresses to specific computers. However, that became problematic as more people joined the network, making it impossible to keep track of all of the IP addresses.
Additionally, people needed to substitute the IP addresses for easily remembered names. Through the 1970s, and even up to the 1980s, Elizabeth Feinler assigned IP addresses to domain names. She created a master list of every computer connected to the internet. This list was known as HOST.TXT.
There were several challenges to this process. The first was that it was overwhelming work for any one person to do alone. It was virtually impossible for Feinler alone to assign all the IP addresses to the domain names. Another challenge was related to Feinler specifically. She clocked out at 6 pm California time every day and took her holidays and breaks quite religiously. A researcher at USC, Paul Mockapetris, then came up with a solution to the challenge. The system he developed is what we now know as DNS.
What is a DNS Name Server?
Before we define the DNS name server, you should get to know what a server itself is. A server is a computer whose job is storing websites and delivering them to other computers. Thus, a computer typically connects to a server to access a website.
A name server is a computer that stores all the DNS records of domain names. One name server can store data about thousands of domain names simultaneously.
How Do DNS Servers Work?
The internet consists of globally connected devices. This intricate connection encompasses every device that has ever made use of the internet. Considering the pace of development of technology, there are probably millions of devices connected at any one time. In order to keep track of these numbers, a unique string of numbers is assigned to any device that connects online. These numerical combinations are known as IP addresses.
You must have seen an IP address before. It looks like 188.8.131.52. Now, imagine you had to remember that every time you want to access a site. Then calculate how many websites you visit on a typical day. That would give you a sense of the number of digits you have to memorize. Surfing the internet would have been a nightmare.
Domain names were invented to deal with this challenge. The challenge, however, is that computers understand/interpret just numerals. Thus, DNS steps in to resolve this challenge. When you type in a domain name, it identifies the IP address – that is, the unique numeral identifiers and then sends you in the right direction.
A combination of the domain name and IP address is known as a DNS record. DNS records are stored on DNS servers, which are positioned in several locations globally. These servers, however, communicate with each other to keep each other updated.
Below is a simple illustration of how a DNS server works.
Usually, the first step to accessing a website is by typing in its address into your browser’s search bar. When you hit send, your device immediately searches for the DNS record. If it finds it in your cache, that means you’ve visited the site previously. You will then be taken to the site immediately, skipping the other steps.
If, however, you have not previously visited the site, a request gets sent to your local DNS server. This is known as a recursive DNS server. In most cases, this would be your Internet Service Provider. If the DNS record isn’t found here also, the request is further forwarded to a root server. If the website currently exists, its record must definitely be found here. This is because root servers are positioned globally and typically store DNS data.
As soon as the DNS record is identified, your device caches it. You will then be connected to the server where the records are stored. At this point, you will be able access the site.
Understandably, this may seem like a truckload of tech jargon. What you should leave with is the fact that humans interact with domain names while computers interact with IP addresses. DNS is the system that organizes the two, translating domain names to IP addresses so that your computer can interpret it and send you to the right website.