DNS(Domain Name System): is used for name resolution ie getting ip addresses by specifying FQDN (fully qualified domain name). For example if we are querying “www.linuxexpert.in” then DNS will return ip address. (called forward name resolution). DNS server is also called Name Server or BIND Server.
Why the need for DNS ? : because it is very easy to remember names. Another benefit is that it isolates you from the effect of changes in ip addresses. DNS is also used for reverse name resolution ie getting name by supplying ip addresses. DNS is also used for providing information about mail servers.
Types of Name Servers
Master DNS Servers: get zone data from locally stored files. we generally have one master server for a zone. All changes should be made at master servers. These give authoritative information to clients.
Slave DNS Servers: get mirror zone data (read only ie you can not change zone data at secondary servers) from master servers through zone transfer. Slave servers periodically checks for updates in master server (as specified in SOA record) & if there is any change, they will update their data. There can be multiple slave servers for a zone. These give authoritative information to clients. Master & Slave servers are also called primary & secondary servers, but these days, we are no longer using these terms.
Caching only DNS servers: they do not have any data in zone files. They simply accept request & forward them. They keeps results in cache. These give non-authoritative information to clients.
DNS Server is one of the most difficult server to implement. Not every system administrator has the capability of implementing DNS Server. We are covering the following topics in detail in this tutorial.
– Implementing Master DNS Server
– Implementing Slave DNS Server
– Using nslookup, host and dig
– IP based & Name based Virtual Hosting with Apache & DNS Server
– Load Balancing using Round Robin DNS
– Split Namespace (VIEWS)
– DNS security using TSIG (transaction signatures)
– Using RNDC
– IPv6 & DNS
– IPv6 Master & Slave DNS