Types of DNS Servers
DNS servers play a wide variety of roles—a single name server may be a master for some zones, a slave for others, and provide caching or forwarding services for still others.
The role of the name server is controlled by its configuration file, which in the case of BIND is called named.conf. The combination of global parameters in the named.conf file (defined in an options clause) and the zones being serviced (defined in one or more zone clauses) determine the complete functionality of the name server. Depending on the requirements, such configurations can become very complex.
1. Root Servers
Root servers are positioned at the top or root of the DNS hierarchy and maintain data about each of the top-level zones. The root servers are maintained by the NIC and have been moved to a common domain for consistent naming purposes. The root servers are named as A.root-servers.net., B.root-servers.net., and so on.
2. Primary (Master) Servers
- Each domain must have a primary server. Primary server has the following features.
- There is generally only one primary server per domain.
- They are the system where all the changes are made to the domain.
- They are the authoritative for all domains they serve.
- They periodically update and synchronize secondary servers of the domain.
- In current versions of BIND, they are defined by the type master argument to the zone statement in the configuration file /etc/named.conf.
3. Secondary servers
Each domain should have at least one secondary server. In fact,the NIC will not allow a domain to become officially registered as a subdomain of a top-level domain until a site demonstrates two working DNS servers. Secondary servers have the following features.
- There is one or more secondary server per domain.
- They obtain copy of the domain information for all domains they serve from the appropriate primary server or another secondary server for the domain.
- They are authoritative for all the domains they serve.
- They periodically receive updates from the primary servers of the domain.
- They provide load sharing with the primary servers and other servers of the domain.
- They provide redundancy in case one or more other servers are temporarily unavailable.
- They provide more local access to name resolution if placed appropriately.
- In current versions of BIND, they are defined by the type slave argument to the zone statement in the /etc/named.conf file.
4. Caching-Only servers
These servers only cache information for any DNS domain. They are not authoritative for any domain. Caching-only servers provide the following features.
- They provide local cache of looked up names.
- They have lower administrative overhead.
- They are never authoritative for any domain.
- They reduce overhead associated with secondary servers performing zone transfers from primary servers.
- They allow DNS client access to local cached naming information without the expense of setting up a DNS primary or secondary server.
5. Forwarding servers
Forwarding servers are a variation on a primary or secondary server and act as focal points for all off-site DNS queries. Designating a server as a forwarding server causes all off-site requests to go through that server first. Forwarding servers have the following features.
- They are used to centralize off-site requests.
- The server being used as a forwarder builds up a rich cache of information.
- All off-site queries go through forwarders first.
- They reduce the number of redundant off-site requests.
- No special setup on forwarders is required.
- If forwarders fail to respond to queries, the local server can still contact a remote site, DNS servers itself.