A caching only DNS server caches DNS query results for the domain name being queried. These chache are stored for pre specified time known as the TTL. A caching only name server will find the answer to name queries and remember the answer the next time you need it. This will shorten the waiting time the next time significantly, especially if you’re on a slow connection.
Step 1: Install the BIND Packages using Yum
Install bind packages using below command. In CentOS the caching-nameserver package has been included with bind package.
# yum install bind bind-chroot
Step 2: Copy default bind configuration File
Copy bind configuration file from bind sample files using below command. Change the path of files as per version you have installed.
cd /var/named/chroot/etc cp /usr/share/doc/bind-9.9.2/sample/etc/named.conf . cp /usr/share/doc/bind-9.9.2/sample/etc/named.rfc1912.zones .
Step 3: Make changes in Configuration File
Edit bind configuration file in your favorite editor and make necessory changes as per below settings or use below configuration.
// /var/named/chroot/etc/named.conf options { listen-on port 53 { 127.0.0.1; any; }; listen-on-v6 port 53 { ::1; }; directory "/var/named"; dump-file "/var/named/data/cache_dump.db"; statistics-file "/var/named/data/named_stats.txt"; memstatistics-file "/var/named/data/named_mem_stats.txt"; allow-query { localhost; any; }; allow-query-cache { localhost; any; }; recursion yes; dnssec-enable yes; dnssec-validation yes; dnssec-lookaside auto; /* Path to ISC DLV key */ bindkeys-file "/etc/named.iscdlv.key"; managed-keys-directory "/var/named/dynamic"; }; logging { channel default_debug { file "data/named.run"; severity dynamic; }; }; include "/etc/named.rfc1912.zones";
Update permissions on configuration files.
# chown root:named named.conf named.rfc1912.zones
Step 4: Check Configuration File
We recommend to check dns configuration file before restarting service.
# named-checkconf named.conf
Step 5: Restart Bind Service
Start Bind (named) service using below command.
# service named restart
Enable auto start bind service on system boot.
# chkconfig named on
Step 6: Finally test Caching Only DNS Setup
Send query to your dns server directly using below command.
Syntax: nslookup < domainname > < caching dns server name/ip >
# nslookup Hostripples.com 192.168.1.1
Sample Output:
Server: 192.168.1.1 Address: 192.168.1.1#53 Non-authoritative answer: Name: hostripples.com Address: 198.27.89.220 Name: hostripples.com Address: 198.27.89.220
That’s it – your caching server is ready to go.