Install dan konfigurasi DNS Server di Ubuntu  ncuptea blog

Install dan konfigurasi DNS Server di Ubuntu

Domain Name Service (DNS) ialah layanan penamaan domain, fungsinya menyimpan serta memberikan informasi nama host dan nama domain untuk nantinya di peta-kan pada Internet. DNS mendata semua IP Address dari setiap nama host (hostname)dari semua domain yang terdaftar. Pemilik domain ialah Network Information Center (NIC).

Karena diatas menyinggung soal nama host (hostname) dan domain maka uraiannya sejauh yang penulis tangkap sebagai berikut :
  • Nama Host (hostname) ialah nama yang dipakai oleh komputer dalam 1 jaringan, sifatnya sendiri unik sehingga 1 nama host tidak bisa dipakai lebih dari 1 komputer dalam 1 jaringan namun nama host yang sama bisa di pakai pada jaringan yang berbeda.
  • Nama domain (domain) di analogikan sebagai nama folder, ruang, ataupun partisi. Sebagai contoh, katakanlah facebook.com jika di uraikan maka .com di ibaratkan nama folder dan facebook ialah nama host-nya. Ini juga me-logikakan pada suatu kasus dimana kita tidak bisa menamai 2 file yang sama dalam 1 folder namun 2 file yang sama namanya dapat dibuat pada folder yang berbeda. Jadi intinya facebook.com dalam 1 domain namun bisa di buat pada domain yang berbeda misal facebook.org.

Bagaimana, mudah dipahami bukan penjelasan DNS diatas? kalau belum paham baca ulang saja..haha.

Keuntungan dari membuat DNS Server sendiri
Kelebihan dari membuat DNS Server pada komputer server lokal kita ialah :
  • Mengurangi lama proses tanya jawab query nama server (name server)yang di request dari browser/komputer klien di jaringan lokal kita (di kenal Resolving).
  • Komputer DNS Server dapat dikenali dari komputer di lokal sebagai pemilik nama domain yang sebelumnya sudah di tentukan tapi tidak dikenali dari jaringan luar semisal Internet (Global) jika belum mempunyai/mendaftarkan sebagai nama host dari suatu domain sehingga komputer server hanya di kenal dengan IP Address bukan namaservermu.com jika dari Internet.
Persiapan Install dan konfigurasi DNS Server dengan bind9 pada ubuntu 9.10 server

Contoh kasus, saya akan membuat DNS Server di komputer server lokal dengan keterangan sebagai berikut :
  • Diagram jaringan :
    Internet----Modem ADSL----(eth1)Pc Server(eth0)-----Pc User
    Dimana
    Pc Server = Os Linux Ubuntu Server 9.10
    Pc User = Os Windows dan Linux Desktop
    Eth1 = 192.168.1.2 dengan modem yang di Bridge
    Eth0 = 192.168.0.1 menuju ke lokal area
  • Dalam Pc Server jalan juga proxy server, dhcp server, traffic shaper, samba, web server, msql server, dan sebagainya lalu sekarang akan di padukan DNS Server dengan BIND9
Beberapa dari cara paling umum mengkonfigurasi DNS Server dengan Bind9 ialah di set sebagai cache nameserver, primarymaster, dan juga sebagai secondary master namun untuk secondary master akan dibahas pada kesempatan berikutnya.
  • Jika di konfigurasi sebagai caching nameserver,BIND9 akan mencari jawaban dari nama query permintaan dan menyimpannya untukketika ada nama query permintaan yang sama.
  • Sebagai primary master, BIND9 membaca semua data zonefile di komputer host dan mengotorisasi zone tersebut.
  • Di secondary master konfigurasi BIND9 mendapatkan semuadata zona dari nameserver lain yang mengotorisasi zone tersebut.
Install BIND9 dan utilitas-nya
apt-get install bind9
apt-get install dnsutils
File konfigurasi DNS akan di letakan di direktori /etc/bind. File konfigurasi primary master berada di /etc/bind/named.conf. Di ikut sertakan pula nama file spesifik dengan konten DNS options. Direktori /etc/bind/named.conf.options akan memberitahukan bahwa DNS akan kemana untuk melihat file-file. Semua file-file BIND akan di gunakan secara relatif pada direktory tersebut. File yang bernama /etc/bind/db.root mendeskripsikan nameserver root di Internet. Server berubah pada beberapa waktu, jadi file /etc/bind/db.root harus di maintenance untuk sekarang dan nanti. Hal ini biasanya selesai setelah paket bind ter-update. Sektor Zone mendefinisikan server master, dan itu akan di letakan di file mentions pada file options. Ini juga memungkin untuk mengkonfigurasi server yang sama sebagai caching nameserver,primary master, dan secondary master.


Konfigurasi

Caching nameserver
Konfigurasi default ialah setup untuk aktif sebagai caching nameserver. Untuk kebutuhan tersebut cukup sederhana hanya dengan menambahkanIP Address dari DNS Server ISP. Edit dan un-comment unkoment /etc/bind/named.conf.options seperti hasil jadi di bawah:
forwarders{ 8.8.8.8;
180.131.144.144;
};
8.8.8.8 dan 180.131.144.144 ialah dns google dan nawala. Sekarang restart BIND9 untuk mengaktifkan konfigurasi baru. Dari konsole :
/etc/init.d/bind9 restart
Primary Master Untuk mengkonfigurasi sebagai Primary Master hanya dibutuhkan 2 (Dua) point saja yaitu Forward zone file dan Reverse zone file. Dalam contoh ini saya akan mengkonfigurasi BIND9 sebagai primary master dari ncuptea.net, sedehana cukup meletakan ncuptea.net bersamaan dengan FQDN (Fully Qualified Domain Name) kalian. Nama ncuptea.net harap di ganti dan sesuaikan dengan keinginan kalian, tidak masalah sekalipun kita belum mempunyai domain premiumnya yang teregister.
  • Forward zone file (File zona penerusan)

    Untuk menambahkan zona DNS ke BIND9 dan menjalankan BIND9 ke primary master, langkah pertama ialah meng-edit /etc/bind/named.conf.local:
    zone ”ncuptea.net” {
    type master;
    file “/etc/bind/db.ncuptea.net”;
    };

    Sekarang gunakan file zona yang sebelumnya sudah ada sebagai master untuk di copy dan membuat file baru di /etc/bind/db.ncuptea.net:
    cp /etc/bind/db.local /etc/bind/db.ncuptea.net

    Jika db.ncuptea.net sudah dibuat di /etc/bind/ selanjutnya ialah meng-edit dan di ganti localhost-nya. Untuk FQDN server, harap diakhiri dengan tanda“.” (titik) di akhir baris, hingga hampir sama seperti di bawah ini:
    ;
    ;BIND data file for local loopback interface
    ;
    $TTL 604800
    @          IN        SOA         ns.ncuptea.net.root.ncuptea.net. (
                                               20110915100 ; Serial
                                               604800 ; Refresh
                                               86400 ; Retry
                                               2419200 ; Expire
                                               604800 ) ; Negative Cache TTL
                                               ;
    @        IN       NS               ns.ncuptea.net.
    @        IN       A                 127.0.0.1
    @        IN       AAAA          ::1
    ns         IN       A                 192.168.0.1


    Catatan :
    -Perhatikan tanda titik nya
    -192.168.0.1 ialah Ip server yang mengarah ke LAN
    -20110915100 ialah menjelaskan tanggal terakhir mengedit file zone, format penulisan yyyymmddss dimana ss ialah nomor serial-nya (samakan saja ss nya).


    Lakukan restart pada bind9
    /etc/init.d/bind9 restart
  • Reverse zone file (file zona pembalikan)
    Sekarang zona tersebut di seting untuk me-resolving (menyelesaikan) pembalikan nama-nama domain ke IP address yang sangat dibutuhkan. Zona reverse (pembalikan) mengijinkan DNS untuk meresolv address ke nama.

    Edit /etc/bind/named.conf.local dan tambahkan hingga seperti berikut :
    zone "ncuptea.net" {
    type master;
    file "/etc/bind/db.ncuptea.net";
    };

    zone "0.168.192.in-addr.arpa" {
    type master;
    notify no;
    file "/etc/bind/db.192";
    };


    Catatan :
    Tempatkan 0.168.192 dengan posisi dibalik dari apapun network yang akan dipakai, disini alamat network yang dipakai ialah 192.168.0.0

    Sekarang buat file /etc/bind/db.192 dengan meng-copy dari /etc/bind/db.127
    cp /etc/bind/db.127 /etc/bind/db.192
    Lanjut edit /etc/bind/db.192,untuk edit pada dasarnya sama seperti pada saat edit /etc/bind/db.ncuptea.net diatas :
    ;
    ;BIND reverse data file for local loopback interface
    ;
    $TTL 604800
    @             IN      SOA         ns.ncuptea.net.root.ncuptea.net. (
                                           20110915100      ; Serial
                                           604800              ; Refresh
                                           86400                ; Retry
                                           2419200             ; Expire
                                           604800 )             ; Negative Cache TTL
                                            ;
    @           IN         NS            ns.
    10          IN         PTR          ns.ncuptea.net.
    Setelah membuat file zona reverse, restart ulang BIND9 :
    /etc/init.d/bind9 restart

Sampai tahap ini DNS Server seharusnya sudah bisa dipergunakan dengan alamat IP 192.168.0.1 jika dari lokal. Hal ini juga jadi akhir dari konfigurasi jika sudah merasa badmood, hahaha. Jangan lupa tambahkan ke /etc/resolv.conf sebagai berikut :
nameserver 192.168.0.1
nameserver <dns_lainnya>
Lakukan restart kembali pada bind9
/etc/init.d/bind9 restart
Troubleshooting (untuk analisa kesalahan)
Point-point troubleshooting sebagai berikut:
-dig
-ping
-named
-checkzone
-dig

Jika menginstall paket dnsutils kita bisa tes set-up dengan menggunakan cara DNS lookup yaitu dig, dnsutils sendiri untuk sekarang ini biasanya sudah include pada saat kita menginstall BIND9 dengan apt-get : dig bisa untuk memastikan bahwa interfaces loopback telah listen di port 53
dig-x 127.0.0.1
Maka ouput nya kurang lebih sebagai berikut
;;Query time: 1 msec ;;SERVER: 192.168.0.1#53(192.168.0.1)
Mengkonfigurasi BIND9 sebagai Caching nameserver “dig” bisa untuk men-cek query time :
dig ubuntu.com
Output pertamanya kurang lebih akan sebagai berikut :
;;Query time: 49 msec
Setelah dig kedua kalinya maka output kurang lebih seperti berikut:
;;Query time: 1 msec
Ping 
Sekarang untuk mendemontrasikan bagaimana aplikasi digunakan oleh DNS untuk meresolv suatu nama host pergunakan utilitas ping untuk mengirimkan request ICMP echo :
ping ncuptea.net
Output akan terlihat seperti berikut jika dalam tes ini nameserver dapat meresolv nama ns.ncuptea.net ke IP Address :
PINGncuptea.net (192.168.0.1) 56(84) bytes of data. 64bytes from 192.168.0.1: icmp_seq=1 ttl=64 time=0.800 ms 64bytes from 192.168.0.1: icmp_seq=2 ttl=64 time=0.813 ms
Named-checkzone
Cara paling baik untuk tes file zona di mesin DNS dengan menggunakan utilitas named-checkzone yang sudah terinstall bersama paket BIND9. Uitilitas ini mengijinkan kita untuk meyakinkan bahwa konfigurasi sudah benar sebelum merestart BIND9 dan memfungsikannya. Untuk sample tes dari forward zone, ikutisebagai berikut :
named-checkzone ncuptea.net /etc/bind/db.ncuptea.net
Jika semua konfigurasi telah benar maka output akan terlihat sebagai berikut:
zone ncuptea.net/IN: loaded serial 100
OK
Melanjut, untuk test file Reverse zone ikuti sebagai berikut :
named-checkzone ncuptea.net /etc/bind/db.192
Output akan terlihat sebagai berikut:
zone ncuptea.net/IN: loaded serial 3
OK
Catatan : Nomor serial file zona akan berbeda nilainya. Selesai step by step membuat dns server dengan BIND9 pada Ubuntu server 9.10


Referensi :
Wikipedia
Ubuntu Server Guide
Opensource.Telkomspeedy

2 comments:

Berkomentarlah dengan bijak untuk pengembangan dan sekaligus menjadi pembelajaran kita bersama.

Pilih Name/Url untuk mempermudah memasukan id anda!