You probably don’t think about it, but how does your computer determine an IP address for a server when you type a URL into a browser?
This tutorial will introduce you to the world of Internet domains. You will learn about the 13 root servers that handle domain name information for the entire Internet.
What is Domain Name System?
The Domain Name System (DNS) is the Internet’s phonebook. Domain names, such as nytimes.com or espn.com, are used by humans to access information online. Web browsers communicate using Internet Protocol (IP) addresses. DNS converts domain names to IP addresses so that browsers can access Internet resources.
Even if you’ve never heard of a domain name, you’ve probably seen and used a zillion of them; you know, google.com, yahoo.com, amazon.com, facebook.com, enablegeek.com and maybe a few others we won’t mention.
So, what exactly is a domain name? It’s really just a unique name that’s used to find your website.
Why Do We Need a Domain Name System?
Humans are more comfortable with reading text than numbers. Computers, on the other hand, can only understand numbers. All computers on the Internet, from your smartphone or laptop to the servers that serve content for large retail websites, use numbers to find and communicate with one another. These numbers are referred to as IP addresses. It will be difficult for you to remember a website’s IP address. And it would be next to impossible to recall a few dozen.
The Domain Name System, or DNS, was invented to make life easier. You don’t have to remember and enter a long number when you open a web browser and go to a website. Instead, you can enter a domain name such as enablegeek.com and still be directed to the correct page. DNS servers eliminate the need for humans to remember IP addresses like 192.168.1.1 (in IPv4) or more complex newer alphanumeric IP addresses like 2400:cb00:2048:1::c629:d7a2 (in IPv6).
Before we go into more detail, let’s look at how it actually makes our lives easier.
Consider the following scenario to simplify things. You designed and built the networks at Hogwarts. Everything is going smoothly. You’ve also put EIGRP into the networks. However, connecting with other end devices is a bit difficult. You must remember all of those complicated IP addresses. Wouldn’t it be great if you could simply connect to other end devices by their names?
And it appears that there is a way to connect to other devices using their names rather than their IP addresses. To accomplish this, simply use a DNS Server to map IP addresses to names.
The diagram below depicts a segment of our networks at Hogwarts.
For the ip address configuration of this network, segment looks at implementing EIGRP in your network tutorial. Or you can click here to download the .pkt file of the network configuration. Import the file into your Cisco Packet Tracer after downloading it. You will be all set to implement DNS in your network.
Assume you want to connect to PC5, on a different network. Ping, the device to see if there is an active connection between PC0 and PC5. We’ve been doing this with the device’s assigned IP address.
C:\>ping 192.168.3.102
Pinging 192.168.3.102 with 32 bytes of data:
Reply from 192.168.3.102: bytes=32 time=6ms TTL=125
Reply from 192.168.3.102: bytes=32 time=2ms TTL=125
Reply from 192.168.3.102: bytes=32 time=2ms TTL=125
Reply from 192.168.3.102: bytes=32 time=20ms TTL=125
Ping statistics for 192.168.3.102:
Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),
Approximate round trip times in milli-seconds:
Minimum = 2ms, Maximum = 20ms, Average = 7ms
The ping program’s output indicates that there is an active connection between the devices.
Let us now attempt to connect the devices using their “assigned names” rather than their assigned IP addresses. We will be pinging PC5 from PC0.
C:\>ping PC5
Ping request could not find host PC5. Please check the name and try again.
The ping program’s output is fairly self-explanatory. The ping request could not find host PC5 because we have not yet mapped the PC5’s name to IP address. A DNS Server is required to map names to IP addresses. Let us employ a DNS Server in our network.
Implementing DNS In Cisco Packet Tracer
To use DNS, we must first set up a DNS Server. A router can be considered a Domain Name System Server in a network. You can also use a dedicated server and enable DNS lookup on it. In this tutorial, we will discuss Cisco DNS Server Configuration and how to enable DNS lookup in a generic server.
To configure DNS service on the generic server, follow the steps below. We will be configuring DNS service in Server0 of network 192.168.1.0/24. The ip address of Server0 is 192.168.1.102.
Click on the server, then the Services tab. Select DNS from the menu. Turn on the DNS service first, then define the names of the hosts and their IP addresses.
To specify the DNS entry for PC0, for example, enter the following in the name and address fields:
Name: PC0 Address: 192.168.1.101
Click on add then save. Repeat this for the PC5 and the Server0.
Once you’re done, your DNS entries will look like this:
Ping the hosts by using their names rather than their IP addresses. Ping should work if the DNS service is enabled and all IP configurations are correct.
For example, ping PC5 from PC0. Ping should be successful.
C:\>ping PC5
Ping request could not find host PC5. Please check the name and try again.
The output indicates that the ping request was unable to locate host PC5. What do you consider the issue this time? Why wasn’t the domain name resolved to an IP address?
The issue is that we haven’t told our end devices where to go to resolve domain names to IP addresses. Our end devices are unaware that DNS Service has been enabled in Server0. In other words, our end devices are completely in the dark that Server0 offers DNS services.
How do we tell our end devices about the DNS Server? It’s pretty simple.
In the IP Configuration of the end device, enter the DNS Server address. You have done this to set the IP Address, Subnet Mask and the Default Gateway of the device.
The IP Address Configuration of the devices:
Server0
IP address: 192.168.1.102
Subnet mask: 255.255.255.0
Default gateway: 192.168.1.1
DNS Server: 192.168.1.102
PC0
IP address: 192.168.1.102
Subnet mask: 255.255.255.0
Default gateway: 192.168.1.1
DNS Server: 192.168.1.102
PC5
IP address: 192.168.1.102
Subnet mask: 255.255.255.0
Default gateway: 192.168.3.1
DNS Server: 192.168.1.102
Configure the devices and run the ping program again.
C:\>ping PC5
Pinging 192.168.3.102 with 32 bytes of data:
Reply from 192.168.3.102: bytes=32 time=3ms TTL=125
Reply from 192.168.3.102: bytes=32 time=2ms TTL=125
Reply from 192.168.3.102: bytes=32 time=2ms TTL=125
Reply from 192.168.3.102: bytes=32 time=11ms TTL=125
Ping statistics for 192.168.3.102:
Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),
Approximate round trip times in milli-seconds:
Minimum = 2ms, Maximum = 11ms, Average = 4ms
Hurrah! You have implemented a DNS Service in your network. Now configure all the devices to use the DNS Service. Just enter the Server0’s ip address in the DNS Server field of the IP Configuration of the device. Do not forget to map the name and ip address of the device in the DNS Server(Server0). Only the IP address of the domain name stored on the server can be resolved by DNS Server. For example, You can not ping PC3 from PC0 using the domain name as the mapping is not added yet in Server0.
C:\>ping PC3
Ping request could not find host pc3. Please check the name and try again.
But if you add the domain name and ip address of PC3 in the Server0’s DNS Service then you can ping PC3 from PC0 using the domain name.
C:\>ping PC3
Pinging 192.168.2.102 with 32 bytes of data:
Reply from 192.168.2.102: bytes=32 time=1ms TTL=126
Reply from 192.168.2.102: bytes=32 time=3ms TTL=126
Reply from 192.168.2.102: bytes=32 time=1ms TTL=126
Reply from 192.168.2.102: bytes=32 time=5ms TTL=126
Ping statistics for 192.168.2.102:
Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),
Approximate round trip times in milli-seconds:
Minimum = 1ms, Maximum = 5ms, Average = 2ms
What Exactly Is A Domain Name?
It’s really just a unique name that’s used to find your website. In other words, a domain name is simply a human-readable representation of an IP address. To simply put, it is the URL you enter into a web browser, such as www.enablegeek.com. Here’s an illustration:
The main reason you should care about domain names is that they provide you with a unique, specific, and memorable name for your website.
How Do We Get A Domain Name?
A centralized authority manages domain names. The Internet Corporation for Assigned Names and Numbers (called ICANN) is in charge of ensuring that a domain name is only used by one person at a time. In addition, you must pay an annual registration fee to keep your domain name (you knew this was coming).
Registries are organizations that manage the top-level domains (TLDs) ‘.com‘ and ‘.net‘, specifically by keeping track of which individual domains belong to which individuals and organizations. The Internet Assigned Numbers Authority (IANA) manages these registries, which are part of the Internet Corporation for Assigned Names and Numbers (ICANN).
Registrars handle commercial sales of domain name registrations on behalf of registries. For example, when a registrar sells a ‘.com‘ domain registration to an end user (or ‘registrant’, the registrar must notify VeriSign, the ‘.com‘ domain registry. The registrar must also pay VeriSign a fee, which is reflected in the price charged to the end user.
To obtain a domain name, visit a domain registrar and go through the process of searching for and registering an unused domain name. Some provide excellent tools for managing domain names as well as additional tools for web pages, email, and other servers. But, as with most things, there is a cost. You should shop around to find the best deal and service for what you require.
This arrangement functions similarly to a car dealership. A prospective customer visits the showroom and is shown the available vehicles by a knowledgeable sales associate. If the customer decides to purchase a car (that is not already in stock in this case), the dealership must order the vehicle from a manufacturer. Finally, the customer picks up the car and receives customer service from the dealership.
A registrar is like a domain name dealership, and the registry is like the manufacturer. The registry is in charge of producing and delivering the goods, while the registrar facilitates transactions and provides support services. It should be noted that the primary distinction between registering a domain and purchasing a car is that while cars can be owned by consumers, domain names can only be leased.
Although people frequently discuss buying and owning domain names, the truth is that registries own all of their domain names, and registrars simply allow customers to reserve those domain names for a limited time.
A domain name can be reserved for a maximum of ten years. A user can keep a domain name for more than ten years because registrars usually allow them to renew their reservation indefinitely. However, the user never truly owns the domain; they simply lease it.
Here’s a list of some of the best domain registrars to check out.
Q: Why is it called a “domain name” rather than a “website name”?
Because they are not the same thing. If you look at www.google.com, that is the name of the web server that hosts that website, but only the “google.com” portion is the domain name. You could also create other websites with the same domain name, such as corporate.google.com or employees.google.com. So the domain name can be used for a variety of websites.
Q: But wasn't www.google.com the name of a website?
Both yes and no. In the context of DNS, it is the name of a specific web server. A single web server can host multiple websites, and it uses the domain name to determine which website to serve.
Q: If I was going to get a domain name for my company, wouldn't I want it to be www.mycompanyname.com? Everyone seems to use websites with the "www" in front of them.
Again, a domain name should not be confused with the name of a web server: google.com is a domain name, whereas www.google.com is the name of a web server. Purchasing a domain, such as 100mainstreet.com, is similar to purchasing a piece of land. You can set up as many web servers as you want on that land, such as home.100mainstreet.com, toolshed.100mainstreet.com, and outhouse.100mainstreet.com. So, in the google.com domain, www.google.com is just one web server.
Q: What if I don’t have my own web servers?
In that case, you can use a hosting company. They frequently offer package deals for hosting web pages, registering domain names, and other services. Your best bet is to determine what you require and then shop around for the best price.
Q: So, what's the big deal about a domain name? Do I really require one? My hosting company says I can simply use their domain name, www.cheaphosting.com.
If that meets your needs, there’s nothing wrong with using their name. However (and this is a big but), if you ever want to switch hosting companies, or if that hosting company goes out of business, everyone who knows your site will no longer be able to easily find it. If, on the other hand, you already have a domain name, you can simply transfer it to your new hosting company. Your users will never even know you’ve switched.