|
|
Installing and Administering Internet Services: HP 9000 Networking > Chapter 3 Configuring and Administering the
BIND Name ServiceOverview of the BIND Name Service |
|
The Berkeley Internet Name Domain (BIND) is the Berkeley implementation of DNS (Domain Name System). It is a database, distributed across the Internet, which maps host names to internet addresses, maps internet addresses to host names, and facilitates internet mail routing. This section describes the components of BIND and how they work. It contains the following sections: This section explains the advantages of BIND over the other name services available on HP-UX (NIS and the /etc/hosts file):
Many people use BIND for host information and NIS or NIS+ for other configuration information, like the passwd and group databases. NIS or NIS+ has the advantage that it can easily manage many different types of information that would otherwise have to be maintained separately on each host. However, NIS does not easily span networks, so the hosts in an NIS domain do not have access to information from other domains. The DNS name space is a hierarchical organization of all the hosts on the internet. It is a tree structure, like the structure of UNIX directories. The root of the hierarchy is represented by a dot (.). Underneath the root, top-level internet domains include com (commercial businesses), edu (educational institutions), gov (government agencies), mil (military and defense), net (network-related organizations), and org (other organizations). Under each top-level domain are subdomains. For example, the edu domain has subdomains like purdue, ukans, and berkeley. In turn, each subdomain contains other subdomains. For example, the purdue subdomain could contain econ, cs, and biol subdomains. At the deepest level of the hierarchy, the "leaves" of the name space are hosts. A fully qualified host name begins with the host's canonical name and continues with a list of the subdomains in the path from the host to the root of the name space. For example, the fully qualified host name of host arthur in the cs domain at Purdue University would be arthur.cs.purdue.edu. Figure 3-1 “Structure of the DNS Name Space” shows the hierarchical structure of the DNS name space. Starting with BIND 8.1.2, DNS notification, also known as DNS notify is supported. This allows master servers to inform slaves that new information is ready. The original DNS protocol required slave servers (secondaries) to poll a master at an interval defined in the Start of Authority (SOA) record. At these defined intervals, the slave checked the SOA record on the master to see whether the serial number had changed. If a change was detected, the slave initiated a zone transfer. The disadvantage of this approach is that slaves might not get new information in a timely fashion. DNS notify provides a way for a master to notify servers that a zone transfer is necessary. The DNS notify operating users a new DNS opcode. Currently, DNS Notify can be used only when a zone's SOA record changes. The notification is sent to every host listed as a name server in nameserver records for the zone. In addition BIND 8.1.2 lets you list additional servers to accommodate stealth servers that may not be listed in any name server records. You can use the zone statement to list these additional servers in the configuration file, /etc/named.conf. When a slave server receives the notify packet, it sends an acknowledgment. It then behaves as if its refresh timer for that zone has expired, going through the same process used at expiration time - first retrieving the SOA record from the master, then initiating a zone transfer if the record has changed. The DNS Notify feature is enabled in the master server by default. In some environments, the master server in a zone might be an 8.1.2 server with DNS notify enabled, while the other servers in the zone are 4.x servers (without the DNS notify feature). In such environments, whenever the master changes and sends a notification to the other servers, the 4.x servers will ignore this notification as they do not understand the notify protocol. When a user who is logged into host venus in the nmt.edu domain types the following command,
the following events occur:
The local name server in the nmt.edu domain caches the addresses of remote name servers, so the next time a local user needs the address of a host in the inc.com domain, the local name server sends its query directly to the name server for inc.com instead of querying the root name server. Round-robin address rotation can provide an inexpensive load-balancing solution. A virtual host name can map to the addresses of multiple systems. When the name server supplies address information for a virtual host name, it rotates the returned order of the addresses. This provides a mechanism for load-balancing network traffic to each host. For example, the virtual host name rainbow is created for three systems named red, blue, and green. The host name rainbow maps to the IP addresses of red, blue, and green. When applications/services call gethostbyname()for rainbow, an array of IP addresses is returned and applications typically use the first IP address in the array. With round-robin address rotation, the name server rotates the order of the addresses returned, so connections to rainbow will be balanced among red, blue, and green. Round-robin address cycling can also affect multi-homed hosts (hosts with multiple IP addresses). However, if a multi-homed host belongs to multiple subnets, the address records will be sorted by the resolver to favor the addresses to which the querying host is directly connected, or those that correspond to the networks in the querying host's sortlist (specified in /etc/named.boot). Also note that for multi-homed hosts with multiple interfaces attached to the same subnet, no load sharing is done for outbound traffic. The transport software will select an interface for outbound traffic according to the target IP address and use that interface consistently, regardless of the interfaces on which it is receiving inbound traffic from the target IP address. Round-robin address cycling is enabled by default. However, with BIND 4.9.3, if you do not want to use this feature, you can disable it by adding the following entry to the named boot file, /etc/named.boot: options no-round-robin. Because complete domain names can be cumbersome to type, BIND allows you to type host names that are not fully qualified (that is, that do not contain every label from the host to the root and end with a dot). This section describes how the name server resolves host names.
For more information on how BIND resolves host names, type man 5 hostname or man 4 resolver at the HP-UX prompt. |
|