Pada tulisan kali ini, materi yang akan di bahas adalah Membuat Server DNS pada Ubuntu 9.10. Diasumsikan Anda mempunyai dua mesin komputer dengan ketentuan:

  • Server DNS dengan nama ns1.starlinghost.com dan alamat IP yang digunakan 172.168.10.20/28.
  • Server Web dengan nama http://www.starlinghost.com dengan alamat IP yang digunakan 172.168.10.25/28.
  • Sub domain untuk web idschool.starlinghost.com dengan alamat IP 172.168.10.25/28 sama seperti alamat Server Web di atas.
  • Nama email pada pengaturan SOA yang digunakan adalah webmaster@starlinghost.com.

Berikut adalah langkah-langkah untuk instalasi Server DNS:

Instalasi DNS Server

Di asumsikan kita sudah melakukan instalasi Ubuntu Linux Server versi 9.10 (Karmic Koala) dan sudah berfungsi dengan benar. Berikut adalah langkah-langkah untuk melakukan instalasi paket yang berhubungan dengan server DNS:

Install paket bind9 dan dnsutils

$ sudo apt-get install bind9 dnsutils

Hasil instalasi bind9 terdapat pada folder /etc/bind.

Setting cache server

Sunting file /etc/bind/named.conf.options, hilangkan tanda komentar ( // ) dan ganti angka 1.2.3.4 dengan alamat server DNS yang diberikan oleh ISP langganan Anda (pada contoh ini IP DNS adalah 8.8.8.8, milik Google).

forwarders {
8.8.8.8;
};

Restart service bind dengan:

$ sudo /etc/init.d/bind9 restart

Untuk menguji hasil cache server ini, lakukan perintah berikut:

$ dig –x 127.0.0.1
$ dig yahoo.co.id

Pastikan output dari dig mendapatkan ANSWER: 1 (bukan 0).

Membuat File Zone

File zone diperlukan untuk resolving (pemetaan) nama ke alamat IP. Ikuti langkahnya:

Sunting file /etc/bind/named.conf.local, dan buat zone starlinghost.com:

zone “starlinghost.com” {
     type master;
     file “/etc/bind/db.starlinghost.com”;
};

Isi file dari db.starlinghost.com dapat disalin dari file db.local dan dilakukan modifikasi seperlunya. Lihat langkah dibawah ini untuk menyalinnya:

# cp /etc/bind/db.local /etc/bind/db.starlinghost.com

Sunting file /etc/bind/db.starlinghost.com dengan ketentuan:

  • Ganti localhost. dengan nama_domain yang akan digunakan, yaitu starlinghost.com.
  • Ganti root.localhost dengan webmaster.starlinghost.com (perhatikan disini email menggunakan tanda titik (.) bukan @ untuk pemisah dengan domainnya).
  • Jangan menghapus tanda “.” yang sudah ada pada setiap akhir nama host.
; Zone file for starlinghost.com
$TTL  604800                             ; 2 hours
@          IN   SOA     ns1.starlinghost.com. webmaster.starlinghost.com. (
                              2          ; Serial
                         604800          ; Refresh
                          86400          ; Retry
                        2419200          ; Expire
                         604800 )        ; Negative Cache TTL
;
..
                 NS     ns1.starlinghost.com.
@                 A     172.168.10.25
ns                A     172.168.10.20
www               A     172.168.10.25
idschool      CNAME     www

Membuat File Reverse Zone

File reverse zone ini diperlukan mengkonversi alamat IP ke nama. Berikut adalah langkah yang harus dilakukan.

Sunting file /etc/bind/named.conf.local, dan masukkan reverse zone berikut:

zone “10.168.172.in-addr.arpa” {
     type master;
     notify no;
     file “/etc/bind/db.172”;
};

10.168.172 di dapatkan dari reverse alamat (3 oktet pertama) dari alamat IP yang digunakan untuk server DNS ini.

Langkah berikutnya adalah membuat file db.172 dengan menyalin file db.127:

# cp /etc/bind/db.127 /etc/bind/db.172

Sunting file /etc/bind/db.172, dengan ketentuan:

  • Ganti localhost. dengan domain yang akan digunakan, yaitu starlinghost.com.
  • Ganti root.localhost. dengan webmaster.starlinghost.com. (perhatikan disini email menggunakan tanda titik (.) bukan @ untuk pemisah dengan domainnya).
  • Jangan menghapus tanda “.” yang sudah ada pada setiap akhir nama host.

Berikut adalah hasil setelah perubahan pada file /etc/bind/db.172, setelah di sesuaikan:

; Zone file for reverse zone 10.168.172.in-addr.arpa (172.168.10.x)
$TTL  604800                            ; 2 hours
@          IN  SOA     ns1.starlinghost.com. webmaster.starlinghost.com. (
                             2          ; Serial
                        604800          ; Refresh
                         86400          ; Retry
                       2419200          ; Expire
                        604800          ; Negative Cache TTL
;
@          IN    NS    ns1.
20         IN    PTR   ns1.starlinghost.com.
25         IN    PTR   www.starlinghost.com.

Restart kembali bind:

$ sudo /etc/init.d/bind9 restart

Sunting file /etc/resolv.conf dengan:

$ sudo /etc/resolv.conf

Isi seperti dibawah ini:

search starlinghost.com
nameserver 172.168.10.20

Lakukan pengujian:

$ named-checkzone starlinghost.com /etc.bind/db.starlinghost.com  // check zone starlinghost.com
$ named-checkzone starlinghost.com /etc.bind/db.172 // check reverse zone untuk starlinghost.com

Kedua perintah pengujian diatas harus memberikan jawaban OK.

Lakukan ping :

$ ping starlinghost.com
$ ping www.starlinghost.com
$ ping idschool.starlinghost.com

Pastikan hasilnya memberikan jawaban (reply).

Sumber: Dokumentasi Ubuntu dan Google.