Untuk
beroperasinya sebuah jaringan komputer Internet, sebetulnya
pengalamatan sebuah komputer dilakukan menggunakan angka yang dikenal
sebagai Internet Protocol (IP) Address yang terdiri dari 32 bit.
Tentunya akan sukar bagi manusia / user untuk mengingat sekian juta
komputer di seluruh Internet. Untuk itu dikembangkan penamaan mesin yang
lebih manusiawi menggunakan konsep Domain Name System (DNS). Pada
tulisan ini kami akan mencoba menjelaskan cara mensetup DNS Server di
mesin dengan OS UNIX. Kemampuan ini akan sangat dibutuhkan bila sebuah
institusi /perusahaan ingin mempunyai nama hostname sendiri di Internet.
Domain Name System adalah salah satu jenis sistem yang melayani permintaan pemetaan IP Address ke FQDN ( Fully Qualified Domain Name )
dan dari FQDN ke IP Address. FQDN lebih mudah untuk diingat oleh
manusia daripada IP Address. Sebagai contoh, sebuah komputer memiliki IP
Address 167.205.22.114 dan memiliki FQDN “nic.itb.ac.id”. Nama “nic.itb.ac.id” tentunya lebih mudah diingat daripada nomor IP Address di atas. Apalagi setelah lahirnya konsep IP Version 6
yang memiliki 6 segment untuk setiap komputer sehingga nomor IP Address
menjadi semakin panjang dan lebih sulit untuk diingat. Selain itu, DNS
juga menyediakan layanan mail routing, informasi mengenai hardware,
sistem operasi yang dijalankan, dan aplikasi jaringan yang ditangani
oleh host tersebut.
Pada sistem operasi UNIX, DNS diimplementasikan dengan menggunakan software Berkeley Internet Name Domain (BIND). BIND ini memiliki dua sisi, yaitu sisi client dan sisi server. Sisi client disebut resolver.
Resolver ini bertugas membangkitkan pertanyaan mengenai informasi
domain name yang dikirimkan kepada sisi server. Sisi server BIND ini
adalah sebuah daemon yang disebut named. Ia yang akan menjawab query-query dari resolver yang diberikan kepadanya.
Pada saat BIND dijalankan, ia memiliki 4 modus operasi, yaitu :
· Resolver-only
Komputer hanya membangkitkan query informasi domain name kepada sebuah DNS server dan tidak menjalankan fungsi DNS server.
· Caching-only
Komputer
menjalankan fungsi name server tetapi tidak memiliki database DNS
server. Ia hanya mempelajari jawaban-jawaban query yang diberikan oleh
remote DNS server dan menyimpannya dalam memory. Data-data dalam memory
tersebut akan digunakan untuk menjawab query selanjutnya yang diberikan
kepadanya.
· Primary server
Komputer
menjalankan fungsi name server berdasarkan database yang dimilikinya.
Database ini dibangun oleh administrator DNS. Server ini menjadi
authoritative source bagi domain tertentu.
· Secondary server
Komputer
menjalankan fungsi name server berdasarkan database yang diambil dari
primary server. Proses pengambilan file database ini sering disebut zone file transfer. Ia juga menjadi authoritative source bagi domain tersebut.
Resolver-only
Saat berada dalam modus resolver-only, BIND akan mencari file /etc/resolv.conf (pada
UNIX umum) dan membaca konfigurasi yang tertera dalam file tersebut.
Jika BIND tidak menemukan file tersebut maka ia akan menggunakan
konfigurasi standar yang dimilikinya.
Bentuk dasar sintaks pada file /etc/resolv.conf adalah sebagai berikut :
domain name
nameserver address
[nameserver address]
domain menyatakan default domain seperti yang didefinisikan oleh entry name. Jika ada penulisan nama host yang tidak mengandung tanda baca titik maka resolver akan menambahkan entry name di belakang nama host tersebut. Sebagai contoh, jika Anda menuliskan host name mail saja dan entry name berisi ptn.co.id maka resolver akan menggunakan nama mail.ptn.co.id.
nameserver
menyatakan server mana yang harus dihubungi jika ada query dari
resolver mengenai domain di atas. Apabila server tersebut tidak bisa
dihubungi, server selanjutnya menjadi sasaran lemparan query.
Contoh listing file /etc/resolv.conf :
# Resolver configuration file
domain ptn.co.id
# Server terdekat adalah mumet.ptn.co.id, IP 169.98.3.1
nameserver 169.98.3.2
# Gagal ??? Coba server kedua : nggliyeng.ptn.co.id, IP 169.98.2.15
nameserver 169.98.2.15
# Gagal lagi ??? Server ketiga : ngeh.ptn.co.id, IP 169.98.1.2
nameserver 169.98.1.2
Ketiga
modus selanjutnya dapat dijalankan secara bersamaan atau berdiri
sendiri pada sebuah komputer yang menjadi DNS server. Pengaturan modus
ini dilakukan pada konfigurasi daemon named. File-file penting yang menjadi acuan bagi named untuk beroperasi adalah named.boot, data_cache, data_domain, dan data_reverse. named.boot adalah file yang berisi boot script bagi DNS server. data_cache adalah file yang berisi DNS root server. data_domain adalah file yang berisi pemetaan dari FQDN ke IP Address dan data terlengkap dari domain yang bersangkutan. data_reverse
adalah file yang berisi data mengenai pemetaan IP Address ke FQDN. Pada
sistem operasi UNIX, file-file tersebut terletak di direktori /etc/namedb. Direktori tersebut menjadi default bagi named.
File konfigurasi yang paling penting bagi named adalah file /etc/namedb/named.boot. File ini berisikan perintah-perintah yang mendefinisikan fungsi named sebagai caching-only server, primary server, atau secondary server.
Caching-only
Jika kita ingin mengatur agar named hanya beroperasi pada modus caching-only maka file named.boot hanya berisi perintah cache diikuti nama file yang berisi server-server utama yang menjadi tempat melemparkan query.
Berikut ini contoh file named.boot dimana kita mengatur named agar beroperasi pada modus caching-only :
; file named.boot
;
; mendefinisikan default directory
directory /etc/namedb
;
; menjadi caching-only server
cache data_cache
;
v Primary Server
Jika kita menghendaki named pada komputer kita menjadi primary server, kita tambahkan kata primary diikuti domain yang dipegang oleh named tersebut dan diakhiri dengan nama file yang berisi database domain tersebut..
Sebagai contoh, komputer kita menjadi primary server untuk domain ptn.co.id dengan file data_domain berjudul ptn.
Sebaiknya, sebuah primary server juga menjalankan fungsi caching-only.
Hal ini untuk menambah kehandalan server dalam menjawab query-query yang
cukup rumit. File named.boot akan berisi sebagai berikut :
; file named.boot
;
; mendefinisikan default directory
directory /etc/namedb
;
; menjadi caching-only server
cache data_cache
;
; menjadi primary server atas domain ptn.co.id
primary ptn.co.id ptn
;
; menjadi primary server atas pemetaan IP Address 169.98.1.x ke FQDN
primary 1.98.169.IN-ADDR.ARPA rev_169.98.1.x
;
Jika
komputer kita juga menjadi primary server atas pemetaan IP Address
169.98.1.x ke FQDN maka kita tambahkan entry yang terakhir.
v Secondary Server
Secondary
server adalah DNS server yang menggunakan database domain yang
ditransfer dari primary server. Untuk mengatur server agar menjadi
secondary bagi domain tertentu, kita tambahkan kata secondary
diikuti dengan domain yang dipegang, kemudian diikuti oleh IP Address
primary server dan diakhiri dengan nama file databasenya.
Sebagai contoh, komputer kita akan bertindak sebagai secondary server untuk domain pts.ac.id. Primary server domain dipegang oleh server dns.pts.ac.id dengan nomor IP Address 190.21.85.2. Kita edit file named.boot sehingga menjadi seperti berikut :
; file named.boot
;
; mendefinisikan default directory
directory /etc/namedb
;
; menjadi caching-only server
cache data_cache
;
; menjadi primary server atas domain ptn.co.id
primary ptn.co.id ptn
;
; menjadi secondary server atas domain pts.ac.id dari dns.pts.ac.id
secondary pts.ac.id 190.21.85.2 sec_pts
;
; menjadi primary server atas pemetaan IP Address 169.98.1.x ke FQDN
primary 1.98.169.IN-ADDR.ARPA rev/rev_169.98.1.x
;
; menjadi secondary server atas pemetaan IP Address 190.21.85.x ke FQDN
Jika kita juga menjadi secondary server atas pemetaan IP Address 190.21.85.x ke FQDN dari server dns.pts.ac.id kita tambahkan entry yang terakhir.
Langkah selanjutnya adalah membuat file data_domain dan data_reverse (seperti file ptn dan rev/rev_169.98.1.x) yang akan dibahas pada artikel mendatang.
Daftar Pustaka
· RFC 1034, “Domain Names – Concepts and Facilities”
· RFC 1035, “Domain Names – Implementation and Spesification”
Tidak ada komentar:
Posting Komentar