Essential DNS Concepts


The DNS is a distributed and hierarchical database whose function is to resolve hostnames to IP addresses. As mentioned earlier, this is really the only reason DNS is used. As a matter of fact, using DNS adds latency and complexity to any configuration management you need to do, such as changing the DNS information itself. Because the DNS database is "distributed," those changes need to replicate through the DNS system, whether it is hosted locally within your network privately, whether it is a public DNS server communication with other public DNS servers to replicate changes, or a hybrid of both. DNS is worth every ounce of issue you may derive from it, so let's start by taking a look at how to configure it locally on your SUSE Linux system so that you can use and test it.

In the following example and illustration, DNS will be shown step by step and simplified as much as possible, although entire books are dedicated to the subject because of its depth and complexity.

In this example, your hostname is the website www.novell.com. Suppose that you would like to visit the Linux section of the website to find out more about SUSE Linux. The website's IP address is 130.57.4.27. You are currently on a home laptop running SUSE Linux. You open a web browser (Konqueror, for example) and attempt to visit the www.novell.com site by entering the easy-to-remember Uniform Resource Locator (URL) of www.novell.com. Consider the following steps, shown in Figure 27.1, that are taken when you enter a domain name into your web browser:

Figure 27.1. Viewing a simple DNS design.


  1. Your local system (with help from you, of course) wants to get to www.novell.com. To do this, it needs to know what Novell's website IP address is and because it does not, it asks its locally configured hosts file to resolve the DNS name novell.com. This local system currently does not have any entries in the hosts file; therefore, the manually configured DNS server (the local DNS server) will attempt to resolve it.

  2. This is the first time this site has been requested; therefore, the domain is unknown by the local DNS server and the request needs to be "forwarded" from the local DNS server to the ISP's DNS server, which does know that www.novell.com resolves to 130.57.4.27. The ISP's DNS servers are public servers.

  3. After the full URL of http://www.novell.com is placed in the Location field, requested by Konqueror, and resolved to an IP address of 130.57.4.27, that information is then cached in the local DNS server so that if this request is again brought up, it will be quicker to resolve.

  4. Now that www.novell.com has been resolved to the local DNS server, the answer of 130.57.4.27 is given to the client.

  5. The client now can connect via the Internet to the www.novell.com website and browse it for SUSE Linux help or other information.

In this scenario, you had a DNS server and a DNS client. In this chapter you will learn about both how to set up and install SUSE Linux to handle both tasks. The DNS client is the host that is requesting DNS information that is provided by a DNS database, either local to the system itself (hosts), as shown in Figure 27.2, or on a server configured to provide such information. First, let's view the local database on the SUSE Linux system. You can find the hosts file off of the root of the operating system, in the etc directory. (Later in this chapter, you will learn how to configure this with YaST.)

Figure 27.2. Viewing a Linux HOSTS file.


The server with BIND installed is called a DNS server. Let's continue discussing what DNS is, its inner workings, and how it works with Linux.



SUSE Linux 10 Unleashed
SUSE Linux 10.0 Unleashed
ISBN: 0672327260
EAN: 2147483647
Year: 2003
Pages: 332

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net