David Both has another set of really good articles, this time about the Domain Name System which allows us, as humans, to use words and names for navigating the Internet while the computers and devices we’ve designed largely rely on sequences of numbers (themselves just bits and bytes) to communicate with each other. The first article is a good, broad overview and whether you’re setting up your first website on a commercial webhost or running a localhost development environment you’ll probably want to give it a read. The second article specifically addresses setting up and configuring BIND software for Linux systems.
Learn how the global DNS system makes it possible for us to assign memorable names to the worldwide network of machines we connect to every day.
Surfing the web is fun and easy, but think what it would be like if you had to type in the IP address of every website you wanted to view. For example, locating a website would look like this when you type it in: https://184.108.40.206, which would be nearly impossible for most of us to remember. Of course, using bookmarks would help, but suppose your friend tells you about a cool new website and tells you to go to 220.127.116.11. How would you remember that? Telling someone to go to “Opensource.com” is far easier to remember. And, yes, that is our IP address.
The Domain Name System provides the database to be used in the translation from human-readable hostnames, such as www.opensource.com, to IP addresses, like 18.104.22.168, so that your internet-connected computers and other devices can access them. The primary function of the BIND (Berkeley Internet Name Domain) software is that of a domain name resolver that uses that database. There is other name resolver software, but BIND is currently the most widely used DNS software on the internet. I will use the terms name server, DNS, and resolver pretty much interchangeably throughout this article.