Caching DNS dengan PDNSDBIND sebagai DNS server memang bisa juga difungsikan sebagai
DNS cache only, dimana fungsi ini hanyalah untuk memforward domain request client ke DNS server lain dan kemudian menyimpannya (caching) untuk sementara kedalam memory resource sampai dengan kapasitas tertentu. Hal ini tentunya kurang menguntungkan bagi server-server yang tidak
up terus menerus karena ketika server restart cache akan mulai lagi dari awal.
Sebagai alternatif, kita dapat menggunakan
pdnsd untuk kepentingan tersebut, keuntungannya yaitu tidak seperti BIND yang menyimpan cache nya di memory akan tetapi cache akan tersimpan dalam disk yaitu dalam file
pdnsd.cache . Jadi cache akan tetap tersimpan meski server kita restart.
berikut yang saya coba :
1. Install pdnsd via ports#> cd /usr/ports/dns/pdnsd
#> make install clean
2. Konfigurasi pdnsd ( /usr/local/etc/pdnsd.conf )File configurasi
pdnsd saya yg diedit dari
/usr/local/etc/pdnsd.conf.sample#> cat /usr/local/etc/pdnsd.conf
// $Id: pdnsd.conf.in,v 1.4 2000/11/11 20:32:58 thomas Exp $
global { perm_cache=4096; cache_dir="/var/db/pdnsd"; max_ttl=604800; run_as="nobody"; paranoid=off; proc_limit=200; procq_limit=250; server_port=53; server_ip="192.168.0.254"; status_ctl=on;}
server { ip="203.130.208.18"; ip="202.134.0.62"; ip="202.155.0.20"; ip="202.134.0.62"; ip="203.130.196.5"; ip="202.134.0.155"; ip="202.134.2.5"; ip="203.130.196.6"; timeout=30; interval=30; uptest=ping; ping_timeout=50; purge_cache=off;}
source { ttl=86400; owner="localhost.";# serve_aliases=on; file="/etc/hosts";
}*keteranganglobal section :
perm_cache= besar file cache (kilobyte)
server_port= port pdnsd akan listen
server_ip= IP pdnsd akan run
status_ctl= memonitor pdnsd dgn pdnsd-ctl
server section :
ip= ip dns server kemana kita akan forward dns request
penjelasan selengkapnya ada di
man pdnsd.conf , man pdnsd , man pdnsd-ctlstartup pdnsd juga akan otomatis terinstall pada
/usr/local/etc/rc.d/pdnsd.sh