Membuat DNS Cache dengan “PDNSD” di CentOS

Membuat DNS Cache dengan “PDNSD” di CentOS

DNS adalah sistem pengalamatan domain (ip address). Banyak DNS Cache yang dapat kita gunakan, antara lain seperti Bind, dnsmasq, djbdns dan pdnsd.

Pada kesempatan ini saya ingin menggunakan pdnsd sebagai DNS Caching.

PDNSD adalah DNS cache server yg cukup lightweight dan mempunyai kelebihan dibandingkan dengan dnsmasq yaitu pada permanent storage dns db. Dnsmasq hanya menyimpan secara temporarily.

Pada dasarnya, kita akan merequest dns server ISP/other terlebih dahulu, dan setelah komputer kita restart, maka kita akan melakukan kembali query dns server.

; <<>> DiG 9.3.4-P1 <<>> hostkita.com
;; global options:  printcmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 23236
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 0

;; QUESTION SECTION:
;hostkita.com.                  IN      A

;; ANSWER SECTION:
hostkita.com.           14400   IN      A       202.59.201.111

;; Query time: 215 msec
;; SERVER: 4.2.2.2#53(4.2.2.2)
;; WHEN: Fri Aug 21 18:39:10 2009
;; MSG SIZE  rcvd: 46

Waktu query yang dibutuhkan pada contoh diatas adalah 215msec untuk request domain hostkita.com. Setelah kita menggunakan DNS Caching, maka kita hanya membutuhkan sekali request ke DNS Server dan selanjutnya akan disimpan untuk dikemudian kalinya ada proses request dari komputer client

; <<>> DiG 9.3.4-P1 <<>> hostkita.com
;; global options:  printcmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 15402
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 0

;; QUESTION SECTION:
;hostkita.com.                  IN      A

;; ANSWER SECTION:
hostkita.com.           14158   IN      A       202.59.201.111

;; Query time: 0 msec
;; SERVER: 192.168.2.1#53(192.168.2.1)
;; WHEN: Fri Aug 21 18:43:12 2009
;; MSG SIZE  rcvd: 46

Tahap Penginstallan

Karena saya disini menggunakan CentOS 5.3, maka yang dibutuhkan adalah rpm package pdnsd yang dapat diambil di site ini.

wget http://www.phys.uu.nl/~rombouts/pdnsd/releases/pdnsd-1.2.7-par_sl5.i386.rpm
–18:45:17–  http://www.phys.uu.nl/~rombouts/pdnsd/releases/pdnsd-1.2.7-par_sl5.i386.rpm
Length: 332033 (324K) [application/x-rpm]
Saving to: `pdnsd-1.2.7-par_sl5.i386.rpm’

100%[============================================================================================================================================>] 332,033     43.7K/s   in 9.4s

18:45:27 (34.5 KB/s) – `pdnsd-1.2.7-par_sl5.i386.rpm’ saved [332033/332033]

Kemudian kita akan melakukan penginstallan package

rpm -ivh pdnsd-1.2.7-par_sl5.i386.rpm

Kemudian kita melakukan configurasi pada file pdnsd.conf

cp /etc/pdnsd.conf.sample /etc/pdnsd.conf
pico /etc/pdnsd.conf

Edit syntax berikut, pada configurasi saya adalah

server {
label= “warnet.hk”;
ip = 208.67.220.220,208.67.222.222;  # Put your ISP’s DNS-server address(es) here.
#       proxy_only=on;     # Do not query any name servers beside your ISP’s.

Setelah itu, kita lakukan starting up pdnsd

service pdnsd start
Starting pdnsd:                                            [  OK  ]

Kemudian kita akan membuat pdnsd starting setiap melakukan proses rebooting server

chkconfig pdnsd on

Langkah berikutnya, kita melakukan perubahan pada resolv.conf

pico /etc/resolv.conf

search hostkita.com
nameserver 192.168.2.1

Sekarang kita sudah bisa mencoba DNS Caching Server kita dengan melakukan perintah

[root@warnet /]# dig hostkita.com

; <<>> DiG 9.3.4-P1 <<>> hostkita.com
;; global options:  printcmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 57796
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 0

;; QUESTION SECTION:
;hostkita.com.                  IN      A

;; ANSWER SECTION:
hostkita.com.           13464   IN      A       202.59.201.111

;; Query time: 0 msec
;; SERVER: 192.168.2.1#53(192.168.2.1)
;; WHEN: Fri Aug 21 18:54:46 2009
;; MSG SIZE  rcvd: 46

wget http://www.phys.uu.nl/~rombouts/pdnsd/releases/pdnsd-1.2.7-par_sl5.i386.rpm
–18:45:17–  http://www.phys.uu.nl/~rombouts/pdnsd/releases/pdnsd-1.2.7-par_sl5.i386.rpm
Length: 332033 (324K) [application/x-rpm]
Saving to: `pdnsd-1.2.7-par_sl5.i386.rpm’

100%[============================================================================================================================================>] 332,033     43.7K/s   in 9.4s

18:45:27 (34.5 KB/s) – `pdnsd-1.2.7-par_sl5.i386.rpm’ saved [332033/332033]

Leave a Reply