April 9, 2012

Caching DNS Server Menggunakan Fedora Linux

DNS server adalah server yang menterjemahkan ip address ke dalam sebuah nama host dan begitu juga sebaliknya, jadi bisa dikatakan jika ada request atau permintaan akses ke www.somewhere.com, maka tugas menterjemahkan ada di ip berapakah hostname tersebut, itulah tugas dari DNS server.
Disini akan dicontohkan untuk mengkonfigurasi Caching DNS server menggunakan Fedora Linux sebagai forwarder menggunakan linux fedora 6 di dalam jaringan lokal (LAN), kenapa? Karena selain bisa mempercepat pencarian nameserver yang sudah tersimpan (ter-cache) didalam LAN, juga memudahkan untuk pemberian ip address pada klien dengan memasang gateway dan dns menggunakan ip address yang sama jika kita menggabungkan Caching DNS dengan router gateway kita, tetapi jika dibuat terpisah juga tidak masalah.
Baiklah langsung saja kita mulai, installah named server dalam hal ini bind yang sudah ada atau bawaan yang terdapat dalam cd installasi fedora 6 bersamaan dengan proses installasinya.

Login menggunakan root, ketik
# vi /etc/named.caching-nameserver.conf
options {
    listen-on port 53 { 127.0.0.1; 11.22.33.44; };  <----- sesuaikan dengan ip server lokal anda
    directory       "/var/named
    dump-file       "/var/named/data/cache_dump.
    statistics-file "/var/named/data/named_stats.txt";
    memstatistics-file "/var/named/data/named_mem_stats.txt";
    query-source    port 53;
    allow-query     { localhost; 11.22.33.0/24; };  <--- network klien anda
    forwarders      { 33.33.33.33; 44.44.44.44; };  <--- ip dns isp anda, atau isikan ip open dns
    forward only;
};
       logging {
          channel default_debug {
          file "data/named.run";
          severity dynamic;
        };
 };

view localhost_resolver {
       match-clients      { localhost; 11.22.33.0/24; };
       match-destinations { any; };
       recursion yes;
       include "/etc/named.rfc1912.zones";
};

Sesuaikan isi file tersebut dengan konfigurasi diatas, setelah selesai kemudian simpan

Jalankan perintah dibawah ini untuk mengambil data terbaru di root server 
# dig @a.root-servers.net . ns > /var/named/named.ca

Cek isinya :
# vi /var/named/named.ca
; <<>> DiG 9.3.2 <<>> @a.root-servers.net . ns
; (2 servers found)
;; global options:  printcmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 27767
;; flags: qr aa rd; QUERY: 1, ANSWER: 13, AUTHORITY: 0, ADDITIONAL: 14
;; QUESTION SECTION:
;.                              IN      NS
;; ANSWER SECTION:
.                  518400  IN      NS      d.root-servers.net.
.                  518400  IN      NS      a.root-servers.net.
.                  518400  IN      NS      l.root-servers.net.
.                  518400  IN      NS      f.root-servers.net.
.                  518400  IN      NS      k.root-servers.net.
.                  518400  IN      NS      m.root-servers.net.
.                  518400  IN      NS      b.root-servers.net.
.                  518400  IN      NS      c.root-servers.net.
.                  518400  IN      NS      e.root-servers.net.
.                  518400  IN      NS      j.root-servers.net.
.                  518400  IN      NS      i.root-servers.net.
.                  518400  IN      NS      g.root-servers.net.
.                  518400  IN      NS      h.root-servers.net.
;; ADDITIONAL SECTION:
a.root-servers.net.     3600000 IN      A       198.41.0.4
a.root-servers.net.     3600000 IN      AAAA    2001:503:ba3e::2:30
b.root-servers.net.     3600000 IN      A       192.228.79.201
c.root-servers.net.     3600000 IN      A       192.33.4.12
d.root-servers.net.     3600000 IN      A       128.8.10.90
d.root-servers.net.     3600000 IN      AAAA    2001:500:2d::d
e.root-servers.net.     3600000 IN      A       192.203.230.10
f.root-servers.net.     3600000 IN      A       192.5.5.241
f.root-servers.net.     3600000 IN      AAAA    2001:500:2f::f
g.root-servers.net.     3600000 IN      A       192.112.36.4
h.root-servers.net.     3600000 IN      A       128.63.2.53
h.root-servers.net.     3600000 IN      AAAA    2001:500:1::803f:235
i.root-servers.net.     3600000 IN      A       192.36.148.17
i.root-servers.net.     3600000 IN      AAAA    2001:7fe::53

;; Query time: 239 msec

Ubah DNS di resolv.conf
# vi /etc/resolv.conf
search somewhere.com
nameserver 127.0.0.1

Tes DNS anda menggunakan nslookup
#  nslookup yahoo.com
Server:        127.0.0.1    <--- pastikan server adalah localhost
Address:       127.0.0.1#53

Non-authoritative answer:
Name:   yahoo.com
Address: 98.139.183.24
Name:   yahoo.com
Address: 209.191.122.70
Name:   yahoo.com
Address: 72.30.38.140

Bila sudah keluar hasil seperti diatas, DNS anda telah berjalan, dan sekarang silahkan anda pasang ip dns diklien dengan ip DNS server yang barusan dikonfigurasi dan jangan lupa membuka port 53 jika anda memakai iptables, atau bisa dilihat Contoh Iptables dalam Linux.

Terima kasih.
Sumber foto : google.com

No comments:

Post a Comment