This book is organized, more or less, to follow the evolution of a domain and a domain administrator. Chapters 1 and 2 discuss Domain Name System theory. Chapters 3 through 6 help you to decide whether to set up your own domain, then describe how to go about it, should you choose to. The middle chapters, 7, 8, 9, and 10, describe how to maintain your domain, how to configure hosts to use your name server, how to plan for the growth of your domain, and how to create subdomains. The last chapters, 11 through 15, deal with troubleshooting tools and problems, and the lost art of programming with the resolver library routines.
Here's a more detailed, chapter-by-chapter breakdown:
Chapter 1, Background, provides a little historical perspective and discusses the problems that motivated the development of DNS, then presents an overview of DNS theory.
Chapter 2, How Does DNS Work?, goes over DNS theory in more detail, including how the DNS name space is organized, domains, and name servers. We also introduce important concepts like name resolution and caching.
Chapter 3, Where Do I Start?, covers how to get the BIND software, if you don't already have it, and what to do with it once you've got it: how to figure out what your domain name should be, and how to contact the organization that can delegate your domain to you.
Chapter 4, Setting Up BIND, details how to set up your first two BIND name servers, including creating your name server database, starting up your name servers, and checking their operation.
Chapter 5, DNS and Electronic Mail, deals with DNS's MX record, which allows administrators to specify alternate hosts to handle a given destination's mail. The chapter covers mail routing strategies for a wide variety of networks and hosts, including networks with security firewalls and hosts without direct Internet connectivity.
Chapter 6, Configuring Hosts, explains how to configure a BIND resolver. We also include notes on the idiosyncrasies of many major UNIX vendors' resolver implementations, as well as the Windows 95 and NT resolvers.
Chapter 7, Maintaining BIND, describes the periodic maintenance administrators need to perform to keep their domains running smoothly, like checking name server health and authority.
Chapter 8, Growing Your Domain, covers how to plan for the growth and evolution of your domain, including how to get big, and how to plan for moves and outages.
Chapter 9, Parenting, explores the joys of becoming a parent domain. We explain when to become a parent (create subdomains), what to call your children, how to create them (!), and how to watch over them.
Chapter 10, Advanced Features and Security, goes over less-often-used name server configuration options that can help you tune your name server's operation, secure your name server, and ease administration.
Chapter 11, nslookup, shows the ins and outs of the most popular tool for doing DNS debugging, including techniques for digging obscure information out of remote name servers.
Chapter 12, Reading BIND Debugging Output, is the Rosetta Stone of BIND's debugging information. This chapter should help you make sense of the cryptic debugging information that BIND emits, which in turn will help you understand your name server better.
Chapter 13, Troubleshooting DNS and BIND, covers many common DNS and BIND problems and their solutions, then describes a number of less common, harder-to-diagnose scenarios.
Chapter 14, Programming with the Resolver and Name Server Library Routines, demonstrates how to use BIND's resolver routines to query name servers and retrieve data from within a C program. We include a useful (we hope!) program to check the health and authority of your name servers.
Chapter 15, Miscellaneous, ties up all the loose ends. We cover DNS wildcarding, special configurations for networks that have Internet connectivity through firewalls, hosts and networks with intermittent Internet connectivity via dialup, network name encoding, and new, experimental record types.
Appendix A, DNS Message Format and Resource Records, contains a byte-by-byte breakdown of the formats used in DNS queries and responses, as well as a comprehensive list of the currently-defined resource record types.
Appendix B, Compiling and Installing BIND on a Sun, contains step-by-step instructions on how to compile the 8.1.2 version of BIND on Solaris 2.X.
Appendix C, Top-Level Domains, lists the current top-level domains in the Internet's domain name space.
Appendix D, Domain Registration Form, is the current form for requesting the establishment of a subdomain of an InterNIC-run domain.
Appendix E, in-addr.arpa Registration Form, is the American Registry for Internet Numbers' current form for requesting the establishment of a subdomain of the in-addr.arpa domain.
Appendix F, BIND Name Server and Resolver Statements, summarizes the syntax and semantics of each of the parameters available for configuring name servers and resolvers.