An introduction to DNS

The internet is a large, complex collective of several smaller networks. Managing information about all of the hosts on the internet in a central location would be nearly impossible considering the speed at which such data is updated. Several pieces of information are stored in DNS, which has a distributed, delegative style of storing information. These pieces of information include:

IP-DNS relationship

The relationship between TCP/IP and DNS is a very important one. When a system needs to establish a connection to another system, it must establish the connection via IP address. Very often, the user will want to connect to a site by name, such as www.news.com. In order to establish this connection, the computer the user is on must be able to find the IP address of www.news.com. In order to find that information, the computer must contact a DNS Server (often referred to as a name server in this context) and ask it for the IP address of the site. The name server returns the IP address to the user's system, which then connects to that IP address.

MX Records

If someone were to need to send mail to a user on a system without knowing their email address (perhaps to contact an administrator), or if one machine were to handle mail for several systems, a method to make this information available must be available. MX Records fill this purpose, and also provide other preferred settings for connections between mail hosts. Perhaps more importantly, MX Records allow mail services to be spread over several systems, making large-scale mail services possible.

Unfortunately, neither Windows 95 nor MacOS include a user tool that will let you inspect DNS data. Many other OS's include a tool called nslookup that allows users to look at DNS data.

Distributive and delegative?

After reading this section, you may see an apparent contradiction between my statement in the beginning that DNS is not centralized and the idea of contacting a server for such information. DNS servers actually only store information (note that this is a bit of an oversimplification) about their own domain, and when queried for information outside their domain, they actually query the server which is responsible for that information and pass the information back to their client.