From ArchWiki
Revision as of 21:34, 13 February 2016 by Ms (talk | contribs) (Additional Information: Add link to bug and feature request.)
Jump to navigation Jump to search


rescached is a daemon that caching internet name and address on local memory when running and in local disk when not running.

rescached is not a reimplementation of DNS server like BIND. rescached primary goal is only to caching DNS queries and answers, used by personal or small group of users, to minimize unneeded traffic to outside network.


  • Enable to handle request from UDP and TCP
  • Saving/loading cache to/from disk
  • Load and serve addresses and hostnames in /etc/hosts

How Cache in rescached Works

Each of query and answer data in cache have a number of accessed field, which defined how the cache will be ordered in memory. The frequently queried host-name will be at the top of cache list, and less queried host-name will at the bottom of cache list. This, obviously, will make a cache list based on user habit (frequently accessed host-name), which effect on the search time on cache list: fast reply.

| #   | host-name        |
| 529 |   |
| 233 |   |
| ... |        ...       |
| 1   | |

The number of cache that rescached can hold in memory is depend on the value of cache.max in configuration file. When the number of cache in memory reached it cache.max value, it will remove all cache data that has the number of frequently accessed less than cache.threshold.


Install from rescached-gitAUR.

Post Installation Configuration

Default configuration setting is already working as expected.

Rescached configuration is reside in /etc/rescached/rescached.cfg.

  • Set your parent DNS server.
Edit rescached configuration change the value of server.parent based on your preferred DNS server.
  • Set maximum caches.
Edit rescached configuration, change the value of cache.max and/or cache.threshold to match your needs.
  • Set your system DNS server to point to rescached.
# mv /etc/resolv.conf /etc/
# echo "nameserver" > /etc/resolv.conf
  • If you use systemd as service, run rescached service by invoking,
$ sudo systemctl start rescached.service
and if you want rescached service run when system startup, enable it by invoking,
$ sudo systemctl enable rescached.service

Additional Information

  • For more information and configuration see manpage of rescached
  • For non-technical explanation you can read it here
  • For user documentation you can read it here
  • Report bug and feature request here