SRA840 Lab4
Gregory Masseau
Differences in DNS between freeBSD and Linux:
Really, there are very few differences that I can find, at least that are universal - the differences between the way bind is set up can vary just as widely between two distributions of Linux as they do between a given distribution and FreeBSD. The primary differences between any two free operating systems installations of bind tend to be in the default configuration and the location of some files, as well as perhaps a preference with regards to calling it 'bind9' or simply 'named' in paths and filenames.
The four main types of name server:
Master: A master (or primary) DNS is authoritative for at least some of the zone files it holds, and is generally the only sort of DNS server on which records can be added or removed from a zone. By definition, any valid hostname on the internet is stored in at least one master DNS server somewhere.
Slave: A slave (or secondary) DNS is one that is not authoritative for the zones it holds. Rather, it receives it's records from a DNS server one step up from itself in the DNS hierarchy, which may either be the master DNS for the records in question or be another slave DNS in between them in the DNS hierarchy. This is done because always querying the master server for a domain would add unnecessary load on the master DNS, as well as creating unnecessary latency for the client.
Caching: A caching DNS server could be viewed as a special case of a secondary DNS server. Rather than downloading a fixed set of entire zone files in the way a secondary DNS ordinarily would, a caching DNS starts with no records, but with knowledge of one or more DNS servers further up the DNS hierarchy. When a request is received, the caching server locates the record using one of these other servers it has been made aware of, and then stores that itself, so that further requests for resolution of the same name can be resolved from it's own local cache. This is useful for reducing bandwidth used for DNS traffic, as installing a local caching server can greatly reduce the need to repeatedly resolve the same names using an external resolver.
Forwarding: The forwarding DNS may seem like an unusual option at first - it stores no records, and instead only forwards requests to a series of other DNS servers of which it is aware. In most cases, it is not a terribly useful option. There are a small number of cases, however, where it can be useful, such as where the local DNS server does not support recursion but a remote, forwarding DNS server does - in this case, using the forwarding DNS server can reduce the ammount of traffic across the network.