To configure a caching nameserver on a iRedMail server itself.
Reduces the delay in domain name resolution drastically as the requests for frequently accessed domain are served from cache.
"named" gets a request for domain resolution.
It checks whether the request can be satisfied from cache. If the answer is in cache and not stale, the request is satisfied from cache itself saving a lot of time
If request can't be satisfied from cache, named queries the first parent. If it replies with the answer, then named will cache the response and subsequent requests for the same domain name will be satisfied from the cache.
In case first parent fails to reply, named will query the second parent and so on.
How to install
We choose BIND which is the most common package on DNS server.
To check the package present or not on the system, just using
rpm -qa |grep bind
rpm -qa |grep caching-nameserver
by default on iRedMail server, the result is:
[root@mail ~]# rpm -qa |grep bind
the package we need on cache named server is
If they are not present on your system, install using
yum install caching-nameserver bind-chroot
all the components we need will be installed
How to configure
The main configuration file for named resides in /var/named/chroot/etc/named.caching-nameserver.conf which is also soft linked from /etc/named.caching-nameserver.conf . named configuration file supports C/C++ style comments.
Below is a configuration file for a machine for iRedMail localhost only. The comments inline explain what each option does.
Since the DNS cache server is for iRedMail local use only, so the IP listen and query is only for localhost. If you want to share the DNS caching for local network for any query, you need to modify the config file to your own.
The RED characters indicate that you need to enter by yourself.