Penggunaan DNS local cache ini akan membantu mempercepat ketika kita melakukan browsing ke halaman tertentu, karena dengan penggunaan ini akan menyimpan dan mengakses cache yang ada dibandingkan kita melakukan koneksi berkali-kali setiap ingin terhubung ke website atau bisa dikatakan melakukan query terhadap web yang kita akses.
Misal kita ingin mengetahui seberapa besar kecepatan query dilakukan. Untuk di linux kita bisa menggunakan perintah dig (dig namawebsite). Contoh :
# dig alfach.com
*terserah ke web mana saja.
maka akan menampilkan :
; <<>> DiG 9.6.1-P1 <<>> alfach.com
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 30277
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 2, ADDITIONAL: 0
;; QUESTION SECTION:
;alfach.com. IN A
;; ANSWER SECTION:
alfach.com. 14400 IN A 222.165.255.245
;; AUTHORITY SECTION:
alfach.com. 86400 IN NS ns1.idwebhost.com.
alfach.com. 86400 IN NS ns2.idwebhost.com.
;; Query time: 842 msec
;; SERVER: 127.0.0.1#53(127.0.0.1)
;; WHEN: Thu Dec 10 09:45:35 2009
;; MSG SIZE rcvd: 90
coba perhatikan yang saya cetak tebal, disitu tertulis query yang dilakukan sebesar 842 (sangat besar). Dan coba lakukan dig lagi, jika provider yang kita gunakan mendukung dns local cache seharusnya query time itu turun. Coba lakukan berkali-kali. Kalau hasilnya tidak jauh beda, maka itu belum menggunakan dns local cache.
Nah, salah satu untuk menggunakan DNS local cache dengan menggunakan dnsmasq.
1. Install dnsmasq
sudo apt-get install dnsmasq
2. edit dnsmasq.conf
sudo vim /etc/dnsmasq.conf
cari kata “listen-address=” hilangkan tanda komentar dan jadikan :
listen-address=127.0.0.1
opsional, ada juga kata “cache-size=150” ubah saja value nya menjadi lebih besar, misal jadi :
cache-size=500
kalau sudah disimpan.
3. edit dhclient.conf
sudo vim /etc/dhcp3/dhclient.conf
cari kata prepend domain-name-servers, ubah menjadi :
prepend domain-name-servers 127.0.0.1;
simpan.
4. edit resolv.conf
sudo vim /etc/resolv.conf
lalu isinya akan berupa IP dns yang kita gunakan.
nameserver ISP_DNS1
nameserver ISP_DNS2
kali ini tambahkan :
nameserver 127.0.0.1
pada baris awal sebelum kedua nameserver diatas, maka akan terlihat seperti :
nameserver 127.0.0.1
nameserver ISP_DNS1
nameserver ISP_DNS2
simpan.
5. Restrat network dan dnsmasq nya
sudo /etc/init.d/networking restart
sudo /etc/init.d/dnsmasq restart
lalu test lagi menggunakan dig seperti di atas, maka dig yang kedua menjadi :
; <<>> DiG 9.6.1-P1 <<>> alfach.com
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 40341
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 0
;; QUESTION SECTION:
;alfach.com. IN A
;; ANSWER SECTION:
alfach.com. 14398 IN A 222.165.255.245
;; Query time: 0 msec
;; SERVER: 127.0.0.1#53(127.0.0.1)
;; WHEN: Thu Dec 10 09:45:37 2009
;; MSG SIZE rcvd: 44
done 🙂