And the definitive book on DNS - O'Reilly's
DNS & BIND.
How does it work? Well, you have your DNS server set up. It has a list of root servers listed by IP address (I believe there are 20 now, but there were only 10 when I started setting up DNS servers). Say you want to find "forums.anandtech.com" and your local DNS doesn't already know that address. Well, it picks one of the root servers for help. IIRC, the root servers are queried round-robin fashion to spread the load. First, your server says "Root server, who can I ask for an address of a .com server?" The root server responds with the address of a server who understands the .com domain, let's call it 10.1.1.1 for now.
Next, your local DNS goes to 10.1.1.1 and says "You understand the .com domain, so tell me where I can find a server who understands the anandtech.com domain." The 10.1.1.1 server will respond with another server, say 10.5.1.1. You then go to 10.5.1.1 and say "I understand you know the anandtech.com domain. Can you tell me what the address for forums.anandtech.com is?" And that server will tell you the address or point you to yet another server that should know. Once your local DNS has this information, it stores it for a while, so it won't have to ask again.
Setting up the local server to make these queries is pretty easy. Understanding how everything happens on the levels above the local server can be difficult, but isn't really necessary to make DNS work. Read the book I pointed to, and you'll learn everything you need to know about setting up and running DNS and how to secure it. Plus, it contains a lot of information on learning even more about DNS. Let me know if you need to know anything else.
RagManX