Dasar Dasar DNS Panduan Linux Ubuntu
442 Pake Ubuntu Yuk Dijamin ga bakalan kena usus buntu
yang yang dikenal dengan nama Domain Name System DNS. Domain Name System berhasil memecahkan masalah yang dihadapi
dengan penggunaan file HOSTS.TXT, dimana DNS bisa membuat administrasi data secara lokal bisa tersedia secara global, penggunaan
sistem hierarki dalam penamaan sehingga sangat tidak mungkin ada nama domain yang sama, dengan desentralisasi administrasi
menghindari terjadinya bottle-neck pada server yang menyediakan service ini, memudahkan didalam melakukan management data
karena dilakukan secara lokal tidak terpusat seperti halnya HOSTS.TXT. Domain Name System merupakan sebuah database
terdistribusi dengan format penamaan yang memiliki hierarki yang terlihat seperti tree. Pada level paling atas disebut dengan root node
yang ditandai dengan . titik. Pada level yang selanjutnya disebut dengan Top Level Domain TLDs, level yang berada dibawah TLDs
disebut dengan Second Level Domains SLDs, dan begitu seterusnya yang dipisahkan oleh sebuah . titik. TLDs sendiri terbagi dua yaitu:
Generic Top Level Domains gTLDs, gTLDs di atur oleh ICANN Internet Corporation for Assigned Numbers and Names. gTLDs
yang tersedia sampai saat ini adalah .arpa, .com, .edu, .gov, .int, .mil, .net, .org, .aero, .biz, .coop, .info, .museum, .name, .pro
Country Code Top Level Domains ccTLD, domain ini menggunakan dua huruf yang didefenisikan pada ISO 3166 sebagai
singkatan sebuah negara, contohnya .id untuk Indonesia. Domain ini juga di atur oleh ICANN.
Domain itu sendiri adalah sebuah node yang ada pada hierarki dari DNS beserta dengan node yang berada dibawahnya. Domain name
merupakan gabungan dari SLDs dan TLDs yang dibaca dari kiri ke kanan dari level paling rendah ke level paling tinggi, contohnya
capoex.net. Sebuah domain yang di tulis lengkap dengan nama hostnya disebut dengan Full Qualified Domain Name FQDN,
contohnya www.capoex.net. FQDN selalu diakhiri dengan tanda titik, meskipun pada saat kita mengetikkan pada browser tidak harus
memberikan tanda titik setelah TLDs, dimana www disini mengacu kepada host name.
DNS Server 443
Domain Authority merupakan suatu organisasiorang yang bertanggung jawab dalam memanajemen dan menjalankan sebuah
titiknode yang ada pada hierarki nama domain system. Server yang didelegasikan untuk node ini disebut authoritative terhadap node
yang ditanganinya. ICANN Internet Corporation for Assigned Number and Names merupakan organisasi yang memiliki authority
untuk root domain.
Authority dari node bisa melakukan desentralisasi beberapa bagian authority tersebut untuk level yang lebih rendah pada hierarki DNS
tree, yang disebut dengan delegasi. Untuk melihat delegasi ini, kita bisa membaca domain name dari kiri ke kanan dari level terendah ke
tertinggi. Bagian dari delegasi ini disebut dengan zona pada Domain Name System. Sebagai contoh perhatikan domain .com yang terbagi
kedalam banyak zona seperti google.com, yahoo.com dan sebagainya. Registry Operator merupakan operator yang memiliki kontrak dengan
ICANN untuk menjalankan authoritatuve gTLDs DNS server. Hanya ada satu registry operator untuk setiap gTLDs. Accredited Registrar
merupakan suatu organisasi yang diberikan delegasi tanggung jawab secara terbatas oleh ICANN untuk menjual dan administrasi bagian
dari hierarki penamaan domain. Name server yaitu rserver yang menjalankan program DNS. Resolver merupakan program atau
library pada client yang melakukan query pada name server. DNS memiliki struktur dan implementasi yang sama seperti pendelegasian
dari domain name. Dimana ada name server pada setiap level delegasi yang dijalankan oleh organisasi yang authoritative terhadap domain
tersebut.
Root name server merupakan resource yang paling penting, dimana name server lain diseluruh dunia akan melakukan query pada Root
name server untuk domain name yang tidak diketahuinya. Saat ini ada 13 root name server yang tersebar diseluruh dunia, yang diberi nama
a.root-name-server.net sampai m.root-name-server.net. Untuk DNS TLDs dijalankan oleh berbagai jenis organisai dibawah persetujuan
ICANN. User Domain DNS yang diberikan delegasi untuk memiliki authority terhadap domain name tersebut bertanggung jawab didalam
menjalankan name server.
444 Pake Ubuntu Yuk Dijamin ga bakalan kena usus buntu
Gambar 18.1 DNS tree
User domain DNS ini bisa berupa ISP, perusahaan web hosting, dimana minimal harus ada dua name server untuk sebuah domain
name. Pada saat sebuah name server tidak bisa menjawab request dari resolver, maka name server ini akan menghubungi root name server,
dimana nanti nya akan memberikan referral untuk TLD yang sesuai. Perhatikan contoh berikut, jika kita ingin menghubungi google.com,
maka proses nya adalah:
1. client mengetikkan pada browser www.google.com, selanjutnya resolver akan menghubungi name server yang diberikan pada
settingan networking dari system tersebut. Ketika name server meneriman permintaan ini, name server akan membaca secara
terbalik mulai dari level tertinggi www.google.com memiliki FQDN www.google.com. memiliki tanda titik setelah com,
untuk itu name server akan menghubungi root name server untuk menanyakan TLDs dari domain ini yaitu com, root name
DNS Server 445
server akan memberikan alamat IP name server yang memiliki authority untuk com, selanjutnya dengan informasi tersebut name
server akan menghubungi name server com untuk menanyakan informasi mengenai SLDs yaitu google.
2. Name server com akan memberikan alamat IP untuk domain google.com, kemudian name server akan kembali menghubungi
name server domain google.com untuk menanyakan alamat IP dari host www.googl.com. Ketika name server memperoleh
alamat IP ini selanjutnya IP tersebut dikembalikan pada browser yang melakukan permintaan www.google.com. Selanjutnya
browser akan menghubungi alamat IP yang diberikan oleh name server tadi. Alamat IP yang telah di ketahui tadi akan disimpan
pada cache oleh name server, sehingga jika ditanyakan kembali maka name server akan mengambil informasi tersebut dari cache
nya tidak menanyakan lagi kepada root name server. Cache pada name server memiliki jangka waktu tertentu, jika jangka waktu ini
expire, dan client kembali menanyakan alamat www.google.com prosesnya akan kembali seperti awal tadi.
Komponen-komponen pada Domain Name System
Zona files, yaitu data yang mendeskripsikan sebuah domain. Sebuah name server bisa memiliki authority untuk nol atau lebih
domain. Data untuk setiap domain atau zona memberikan deskripsi mengenai domain dan host serta service yang ada pada
domain tersebut. Data ini disediakan dalam bentuk teks yang disebut dengan Resource Records RR. Jadi zona bisa dikatakan
suatu node pada delegasi domain yang memiliki resource records. Domain yang yang memilik RR ini bisa sekaligus menjadi zona.
Name Server program. Sebuah name server akan membaca file zona dari sebuah domain yang menjadi tanggung jawabnya. Bisa
dikonfigurasi untuk menjadi authority name server, caching, dan forwarding name server.
Resolver program atau library. Resolver terdapat pada setiap host yang akan melakukan query pada DNS server.
446 Pake Ubuntu Yuk Dijamin ga bakalan kena usus buntu
Zona file menterjemahkan domain name kedalam kesatuan operasional seperti hosts, mail server dan karakteristik lain yang
digunakan oleh DNS server. Pada zona file terdapat Resource Records RR yang memberikan deskripsi mengenai domain dan subdomain,
resources records yang terdapat pada sebuah zona files terdiri atas:
Start of Authority Resource Records SOA RR, merupakan data yang mendeskripsikan zona authority. RR ini wajib ada pada seluruh
zona file.
Address Resource Records A RR, untuk mendefenisikan host yang ada pada zona
Data yang mendeskripsikan informasi umum sebuah zona seperti Mail Exchanger Resource Records MX RR untuk mail server bagi
domain tersebut serta Name Server Resource Records NS RR untuk mendeskripsikan name server yang bertanggung jawab pada domain
tersebut.
NS RR untuk name server yang bertanggung jawab terhadap suatu subdomain jika melakukan delegasi untuk subdomain.
Data yang berisikan informasi agar name server dapat menjangkau subdomain name server yang berupa Address Resources Record A
RR. Record ini disebut juga dengan glue record.
Bentuk umum penulisan dari sebuah zona file adalah:
Comments: Semua komentar pada zone file diawali oleh tanda ; titik koma
Directives: Directive selalu diawali dengan tanda yang digunakan untuk mengontrol proses pada zona file
Resource Records: Records yang digunakan untuk mendefenisikan karakteritik, properties atau kesatuan yang terdapat dalam sebuah
domain. RR selalu didefenisikan dalam satu baris kecuali untuk entry yang berada pada tanda kurung bisa di tulisa dalam beberapa baris.
Contoh dari zona file
; baris ini akan dianggap sebagai komentar
DNS Server 447
TTL 86400 ; baris direktif TTL ORIGIN scorvia.or.id. ; baris direktif origin
IN SOA ns1.scorvia.or.id. hostmaster.scorvia.or.id. 2007111800 ; serial number
12h ; refresh 15m ; retry
3w ; expiry 2h ; minimum
; name server RR untuk domain scorvia.or.id IN NS ns1.scorvia.or.id.
; sekunder name server IN NS ns2.scorvia.or.id.
; mail server RR 3w IN MX 10 mail.scorvia.or.id.
;domain hosts dan NS serta MX records IN A 192.168.0.253
ns1 IN A 192.168.0.253 ns2 IN A 192.168.0.252
mail IN A 192.168.0.251 ftp IN A 192.168.0.250
www IN CNAME ns1.scorvia.or.id.
Format waktu yang digunakan pada zona file pada RFC 1035 menggunakan detik, akan tetapi kita bisa menggunakan format menit,
jam, hari, minggu, tahun yang digunakan oleh BIND. Untuk mengatur spasi pada zona file biasanya digunakan TAB. Isi dari sebuah zona file
adalah:
TTL direktif Time To Live, merupakan nilai untuk zona atau domain, waktu yang terdapat pada direktif ini akan menjadi lama
448 Pake Ubuntu Yuk Dijamin ga bakalan kena usus buntu
waktu yang akan digunakan untuk meng-cache RR domain tersebut oleh DNS server yang lain. Direktif ini harus ada pada sebuah zona
file. Format: TTL waktu
Nilai waktu ini bisa dalam detik, jam, hari, atau minggu. Direktif ini menentukan karakteristik operasional sebuah DNS server seperti
Access load , semakin kecil TTL, maka semakin tinggi access loadnya,
Change propagation , nilai TTL ini merepresentasikan waktu maksimum
yang dibutuhkan agar sebuah setiap perubahan pada zona file dari suatu name server akan tersebar kepada seluruh user. TTL direktif
harus ditulis sebelum RR yang lain.
ORIGIN direktif, untuk domain name dari zona yang didefenisikan, bersifat opsional. Format: ORIGIN domain_name
Domain name harus ditulis dalam FQDN yang diakhiri dengan tanda titik, contoh
ORIGIN scorvia.or.id. Start of Authority SOA RR. Merupakan RR yang harus menjadi RR
pertama dari sebuah zona file. SOA RR ini bersifat wajib pada zone file, yang mendeskripsikan karakteristik global dari zona atau domain.
Hanya boleh ada satu SOA RR pada zona file. Format: name ttl class rr name_server email serial_number refresh retry expiry minimum
RR ini bisa ditulis dalam satu baris atau multiple line, jika ditulis multiple line harus menggunakan tanda kurung.
Contoh penulisan satu baris
IN SOA ns1.scorvia.or.id. hostmaster.scorvia.or.id. 2007111800 12h 15m 3w 2h
Contoh penulisan multiple line
IN SOA ns1.scorvia.or.id. hostmaster.scorvia.or.id. 2007111800 ; serial number
12h ; refresh 15m ; retry
3w ; expiry
DNS Server 449
2h ; minimum
Catatan: Pada penulisan diatas baris “ IN SOA ns1.scorvia.or.id. hostmaster.scorvia.or.id.
“ seperti ditulis dalam dua baris karena keterbatasan lebar buku ini, pada penulisan yang sebenarnya harus ditulis dalam satu baris.
digunakan untuk menggantikan dari domain untuk zona yang bersangkutan. Pada contoh diatas digunakan untuk menggantikan
domain scorvia.or.id., jika ingin ditulis akan menjadi
scorvia.or.id. IN
SOA ns1.scorvia.or.id.
hostmaster.scorvia.or.id. 2007111800 12h 15m 3w 2h
ttl , karena tidak didefenisikan akan menggunakan nilai yang ada pada
direktif dari TTL class
disini digunakan IN untuk Internet. name_server
mendefenisikan primary master dari name server untuk zona tersebut. Pada contoh adalah ns1.scorvia.or.id. , dimana ns1
adalah nama host tempat name server ini dijalankan. email
, untuk alamat administrasi email dari zona. Biasanya digunakan hostmaster, root. Pada contoh ditulis hostmaster.scorvia.or.id.
serial_number , digunakan pada saat transfer zona. Serial number ini
harus di update setiap kali ada perubahan pada domain, agar slave name server bisa mengetahui perubahan yang terjadi dan melakukan
transfer zona file. Format umum nya adalah YYYYMMDDSS YYYY untuk tahun, MM untuk bulan, DD untuk tanggal, SS untuk nomor
urut sebuah zona file dirubah, bisa juga menggunakan nilai jam
refresh , waktu yang digunakan oleh slave name server untuk mencoba
membaca SOA RR pada master name server. retry
, selang waktu yang digunakan oleh slave server untuk menghubungi master name server jika pada waktu refresh yang
ditentukan slave server gagal menghubungi master name server. expiry
, jangka waktu yang menentukan sebuah zona records menjadi tidak valid
450 Pake Ubuntu Yuk Dijamin ga bakalan kena usus buntu
minimumnegativE ttl , digunakan untuk negative respons bisa di cache
oleh slave.
Name Server NS RR. Mendefenisikan name server yang authoritative untuk zona atau domain. Harus terdapat dua atau lebih
NS RR untuk sebuah domain pada zona file. Merupakan RR yang harus ada. Formatnya: name ttl class rr name
Contoh
IN NS ns1.scorvia.or.id. IN NS ns2.scorvia.or.id.
Pada contoh diatas, field untuk name kosong, yang berarti akan digantikan oleh nilai dari name field dari nilai saat ini, disini
merupakan nilai dari SOA RR. Jika ingin ditulis lengkap bisa seperti ini
scorvia.or.id. IN NS ns1.scorvia.or.id. scorvia.or.id. IN NS ns2.scorvia.or.id.
ttl karena tidak didefenisikan akan menggunakan nilai dari direktif
TTL class
, disini menggunakan IN untuk internet name
, untuk name server yang authoritative untuk domain tersebut. Harus menggunakan format FQDN jika tidak menggunakan direktif
ORIGIN.
Mail Exchanger MX RR. Mendefenisikan mail server yang digunakan oleh zona. Berisfat opsional, jadi bisa ada nol atau lebih MX
RR pada sebuah zona file. Formatnya: name ttl class rr preference name
Contoh penulisannya
3w IN MX 10 mail.scorvia.or.id.
name , karena tidak didefenisikan akan digantikan oleh scorvia.or.id.
ttl , disini diberikan nilai 3w untuk 3 minggu
class , disini menggunakan IN untuk Internet.
DNS Server 451
preference , pada contoh diberi nilai 10. Preference berkaitan dengan
prioritas dari sebuah mail server. Semakin kecil nilai preferences akan semakin tinggi prioritasnya.
name , mendefenisikan mail server untuk domain yang bersangkutan.
Address A RR. Untuk mendefenisikan IPv4 address dari semua host atau services yang terdapat pada sebuah zona. Bersifat opsional.
Untuk IPv6 gunakan AAAA RR. Format: name ttl class rr ipv4
Contohnya
ns2 IN A 192.168.0.252
name , bisa menggunakan FQDN atau nama host, pada contoh diatas
bisa ditulis ns2.scorvia.or.id. IN A 192.168.0.252 ttl
, karena tidak didefenisikan akan menggunakan direktif TTL class
, menggunakan IN untuk Internet ipv4
, IP address dari host, disini IP address dari host ns2 yaitu 192.168.0.252
Nama yang didefenisikan pada records NS dan MX RR harus memiliki korespondensi dengan A RR, pada contoh paling atas adalah
ns1, ns2 dan mail harus memiliki A RR.
CNAME RR. Mendefenisikan alias RR, sehingga satu host atau service bisa didefenisikan untuk menjadi nama alias bagi host yang lain.
Bersifat opsional. Format: name ttl class rr canonical-name
Contohnya
www IN CNAME ns1.scorvia.or.id.
name , bisa menggunakan FQDN atau non FQDN, seperti www
ttl , karena tidak didefenisikan akan menggunakan nilai dari TTL
class , menggunakan IN untuk Internet
rr , untuk resource record disini menggunakan CNAME
canonical-name , mendefenisikan bahwa www.scorvia.or.id merupakan
alias untuk host ns1.scorvia.or.id.
452 Pake Ubuntu Yuk Dijamin ga bakalan kena usus buntu
Aturan dalam penggunaan CNAME adalah, jika nama tersebut sudah disebutkan pada bagian kanan dari RR MX dan NS, maka tidak
boleh disebutkan lagi pada bagian kiri dari CNAME RR. Contoh berikut merupakan penulisan CNAME yang salah pada zona file dari
DNS
IN NS ns1.scorvia.or.id. ns1 IN CNAME www.scorvia.or.id.
www IN
A 192.168.0.253
Contoh yang benar adalah
IN NS ns1.scorvia.or.id. ns1 IN A 192.168.0.253
www IN CNAME ns1.scorvia.or.id. Pointer PTR RR, digunakan hanya untuk reverse-mapping zona.
Untuk menterjemahkan IPv4 kedalam sebuah nama. Format: name ttl class rr name
Contohnya
253 IN PTR ns1.scorvia.or.id. 252 IN PTR ns2.scorvia.or.id.
name , berupa angka untuk alamat IP, disini ditulis 253 dalam bentuk
non FQDN, jika ingin ditulis dalam format FQDN format akan menjadi 253.0.168.192.IN-ADDR.ARPA.
ttl , karena tidak didefenisikan, akan menggunakan nilai dari TTL
class , menggunakan IN untuk Internet
rr , menggunakan adalah PTR pointer
name , mendefenisikan nama dari alamat IP. Jika ada query untuk
192.168.0.253, akan memberikan alamat ns1.scorvia.or.id. Nama yang ditulis harus dalam bentuk FQDN
Hanya boleh satu IPv4 yang dimapping kedalam host name menggunakan PTR RR. Contohnya, dari zona file
DNS Server 453
ns1 IN A 192.168.0.253 www IN CNAME ns1.scorvia.or.id.
atau
ns1 IN A 192.168.0.253 www IN A 192.168.0.253
hanya boleh ditulis salah satu dari host tersebut untuk alamat IP nya pada PTR, berikut ini merupakan contoh penulisan yang salah
253 IN PTR ns1.scorvia.or.id. 253 IN PTR www.scorvia.or.id.
Penulisan yang benar adalah
253 IN PTR ns1.scorvia.or.id.
atau
253 IN PTR www.scorvia.or.id.
Penulisan PTR ini harus diperhatikan terutama untuk mail server. Jika host yang digunakan untuk mail server juga digunakan untuk web
server dengan menggunakan CNAME, maka pada PTR RR yang harus didefenisikan adalah mail server bukan CNAME nya. Contoh
nya
mail IN A 192.168.0.253 www IN CNAME mail.scorvia.or.id.
atau
mail IN A 192.168.0.253 www IN A 192.168.0.253
Maka pada PTR RR, harus ditulis
253 IN
PTR mail.scorvia.or.id.
Text TXT RR, untuk mendefenisikan text yang pada zona file. scorvia.or.id
IN TXT
Domain scorvia GuiLd NSEC, RRSIG, DS, DNSKEY, KEY Resource Records, digunakan
untuk konfigurasi secure DNS DNSSEC
454 Pake Ubuntu Yuk Dijamin ga bakalan kena usus buntu
Service SRV RR, digunakan untuk menterjemahkan service kedalam host.
DNS secara default menggunakan port 53 port ini bisa diganti pada konfigurasi dari program name server yang digunakan, dengan block
size dibatasi hingga 512 bytes untuk querynya menggunakan port UDP 53. Sedangkan port TCP 53 biasanya digunakan untuk zona
maintenance. Jenis-jenis query pada DNS:
Recursive queries. Pada query ini name server akan melakukan seluruh operasi yang diperlukan untuk mengembalikan jawaban
secara lengkap untuk client. Menjawab query secara recursive melibatkan banyak name server. Sebuah name server tidak harus
mendukung model query ini. Cara kerja query ini kurang lebih terlihat seperti berikut ini. Client menggunakan aplikasi seperti browser untuk
membuka alamat www.google.com, request ini dikirimkan oleh browser pada resolver yang terdapat pada client. Selanjutnya resolver
akan mengirimkan query pada DNS server lokal yang tercantum pada settingan jaringan dari system yang digunakan oleh client bisa DNS
server LAN atau DNS server dari ISP yang anda gunakan. DNS server lokal akan melihat pada cachenya, jika tidak ada pada cache,
DNS server lokal akan mengirimkan query pada root name server untuk menanyakan alamat IP dari www.google.com. Kita tahu root
name server ada 13, bagaimana DNS server lokal menentukan root name server mana yang akan dihubungi?
Jika ada lebih dari satu name server yang tersedia, maka name server akan dihubungi menggunakan metode round-trip time RTT yang
menyimpan waktu respon untuk query dari setiap name server. Name server dengan RTT terendahlah yang akan dipilih oleh DNS server
lokal. Root name server hanya akan memberikan daftar alamat name server yang authoritative untuk gTLD .com Root name server hanya
mensupport query iterative. Selanjutnya DNS server lokal akan memilih salah satu alamat dari daftar gTLD yang diberikan, dan
mengirimkan query untuk www.google.com pada alamat yang dipilih. gTLDs name server sama seperti root name server hanya
mensupport query iterative dan akan memberikan daftar alamat DNS
DNS Server 455
server yang authoritative untuk google.com. DNS server lokal selanjutnya akan mengirimkan query pada DNS server dari
google.com untuk menanyakan alamat www.google.com
DNS server authoritative dari google.com akan melihat pada zona file untuk alamat IP dari www.google.com, dan memberikan alamat IP
dari www.google.com sebagai jawaban dari query oleh DNS server lokal tadi. DNS server lokal akan mengirimkan jawaban ini kepada
client yang melakukan request. Selanjutnya resolver akan mengirimkan www.google.com=64.233.167.99 pada browser client,
dan browser akan mengirimkan request pada 64.233.167.99 untuk membukan web page dari www.google.com
Iterative Non Recursive queries. Pada query ini, jika name server memperoleh suatu query dari client, jawaban akan diberikan jika
name server tersebut sudah memiliki jawabannya. Jika name server tidak memiliki jawaban terhadap query ini maka akan
mengembalikan informasi yang memberitahukan kepada client. Name server pada iterative mode tidak akan membuat request kepada name
server lain untuk mendapatkan jawaban yang dibutuhkan. Proses dari query iterative kurang lebih seperti ini: Client mengetikkan alamat
www.google.com pada browser, selanjutnya resolver pada client akan mengirimkan query pada DNS server lokal. DNS lokal akan melihat
pada cache, jika tidak tidak ditemukan maka DNS server lokal akan memberikan daftar root name server yang bisa dihubungi DNS server
lokal tidak akan menghubungi root name server, hanya akan memberikan referral saja pada client.
Resolver pada client akan mengirimkan query pada root name server untuk menanyakan alamat IP dari www.google.com. Root name
server akan memberikan daftar alamat name server yang authoritative untuk gTLD .com. Resolver akan memilih salah satu dari daftar yang
diberikan oleh root name server, dan melakukan query. gTLD akan memberikan alamat name server yang authoritative untuk google.com
Dari daftar yang diberikan oleh gTLD name server, resolver akan melakukan query pada name server google.com untuk menanyakan
alamat dari IP www.google.com
456 Pake Ubuntu Yuk Dijamin ga bakalan kena usus buntu
Name server yang authoritative untuk google.com kemudian akan memberikan alamat IP dari www.google.com, resolver kemudian
akan mengirimkan www.google.com=64.233.167.99 pada browser. Selanjutnya browser akan melakukan request pada 64.233.167.99. Dari
proses diatas terlihat bahwa untuk query recursive akan dilakukan oleh DNS server sampai dia mendapatkan jawaban yang lengkap,
berbeda dengan query iterative dimana DNS server hanya akan memberikan referral untuk alamat root name server, dan
mempersilahkan resolver untuk menghubungi sendiri alamat tersebut untuk memperoleh jawaban.
Reverse Mapping
Reverse mapping yaitu pemetaan alamat IP kedalam sebuah nama, seperti melakukan trace terhadap sebuah IP spammer, cracker. Dan
juga mail system menggunakan reverse mapping didalam menyediakan authentication yang sederhana menggunakan DNS
lookup untuk mengkonfirmasi bahwa IP tersebut memang merepresentasikan host yang bersangkutan. Query DNS reverse
mapping dilakukan dengan cara recursive atau iterative query menggunakan spesial domain name yang disebut dengan IN-
ADDR.ARPA gTLD nya adalah .ARPA dan SLD .IN-ADDR, disini ARPA singkatan dari Address and Routing Parameter Area. Seperti
yang telah diketahui, domain ditulis dari kiri ke kanan dari yang terendah sampai yang tertinggi
www.scorvia.or.id. Pada potongan zona file sebelumnya, kita sudah mengetahui IP dari
www.scorvia.or.id adalah 192.168.0.253, agar IP ini bisa digunakan operasi query DNS maka harus di rubah kedalam nama.
192.168.0.253 Berbeda dengan domain name, untuk IP level tertinggi nya adalah
bagian kiri dan level terendah ada di bagian kanan. Pada contoh ini level tertinggi adalah 192, dengan nomor host 253. Untuk bisa
merubah IP ini jadi sebuah nama, maka kita harus membuat domain name dengan menggunakan urutan yang terbalik reverse dan
DNS Server 457
membuat hierarkinya pada IN-ADDR.ARPA. lebih jelasnya bisa dilihat seperti ini
IPv4 address = 192.168.0.253 Class C Network base = 192.168.0 Ingat yang digunakan adalah
alamat network, sehingga nomor host tidak dimasukkan Reversed Class C Network base = 0.168.192
Buat domain untuk IN-ADDR.ARPA = 0.168.192.IN-ADDR.ARPA. Yang perlu diketahui adalah untuk reverse mapping, kita membalik
penulisan IP addres untuk digunakan pada IN-ADDR.ARPA. Selanjutnya buat zona file yang mendeskripsikan semua host pada
reverse mapp menggunakan PTR RR, lihat contoh yang sudah diberikan pada penjelasan mengenai PTR RR.
Gambar 18.2 Reverse Mapping
458 Pake Ubuntu Yuk Dijamin ga bakalan kena usus buntu
Type-Type DNS
Master Name Server
Dikenal juga dengan nama Primary Name Server. DNS yang dikonfigurasi menjadi master name server mengandung satu atau
lebih zona file dimana DNS ini menjadi authoritative untuk zona tersebut. File konfigurasi ini dibaca oleh name server dari lokal file
system. File konfigurasi zona untuk master name server berada pada lokal system dimana name server tersebut berjalan. Pada BIND
menggunakan keyword master didalam menentukan apakah name server tersebut akan menjadi master atau tidak, yang dideklarasikan
pada named.conf atau named.conf.local pada Ubuntu, contohnya
zone scorvia.or.id in { type master ;
file etcbinddb.scorvia.or.id ; allow-transfer { 192.168.0.252 ; } ;
allow-update { none ; } ; } ;
Pada potongan diatas juga terlihat bahwa name server ini hanya mengizinkan transfer zona kepada IP 192.168.0.252 yang menjadi slave
name server. Suatu name server yang dikonfigurasi sebagai master untuk zona authoritative nya apabila menerima query untuk zona
dimana dia tidak menjadi master atau slave, name server ini akan melakukan tindakan sesuai dengan konfigurasi dari name server
tersebut,yaitu
Jika konfigurasi caching diaktifkan dan recursive query diizinkan, name server ini akan memberikan jawaban yang
lengkap kepada user yang melakukan request. Jika caching diaktifkan dan iterative, name server ini akan
memberikan jawaban yang lengkap jika terdapat dalam cache nya, jika tidak hanya akan memberikan refereal
Jika caching tidak diizinkan, server akan memberikan referral pada user yang melakukan request.
DNS Server 459
Slave Name Server
Seperti yang telah diketahui, DNS mengharuskan setiap domain yang terhubung dengan internet untuk memiliki minimal dua name server.
Slave name server menggunakan zona transfer untuk melakukan update terhadap master name server. Informasi mengenai zona pada
slave name server berasal dari master name server, dan akan bertindak sebagai DNS authoritative terhadap zona tersebut. bagi user, tidak
akan bisa mengetahui apakah sebuah name server menjadi master atau slave. BIND menggunakan keyword slave untuk mendefenisikan
name server tersebut bertindak sebagai slave.
zone scorvia.or.id in { type slave ;
file etcbindzonesdb.slave.scorvia.or.id ; masters {192.168.0.253 ; } ;
} ;
keyword masters diatas menentukan dari name server mana zona file akan ditransfer.
Caching Name Server
Pada caching name server akan menjawab query dari user dengan melihat isi dari cache yang dimilikinya. Cache pada sebuah name
server memiliki TTL sesuai dengan TTL pada name server yang authoritative terhadap zona yang ditanyakan oleh caching name
server. Perhatikan hasil nslookup dibawah ini, dimana name server ini mengambil data dari cache nya yang ditandai dengan Non-
authoritative answer:
nslookup www.google.com
Server: 192.168.0.253 Address: 192.168.0.25353
Non-authoritative answer: www.google.com canonical name = www.l.google.com.
Name: www.l.google.com
460 Pake Ubuntu Yuk Dijamin ga bakalan kena usus buntu
Address: 66.249.89.99 Name: www.l.google.com
Address: 66.249.89.104 Name: www.l.google.com
Address: 66.249.89.147 Jika data yang direquest tidak ada pada cache maka caching name
server akan melakukan request secara langsung pada DNS authoritative untuk domain tersebut, dimana outputnya tidak terdapat
Non-authoritative answer. Jika user melakukan request lagi untuk yang kedua dan seterusnya sampai TTL dari cache tersebut expire,
caching name server akan mengambil jawaban dari cache nya yang ditandai dengan Non-authoritative answer. BIND defaultnya akan
meng-cache RR, karena options recursion aktif secara default, jika kita tidak mendeklarasikannya secara spesifik pada named.conf
Forwarding Name Server
Forwarding atau Proxy name server akan memforward seluruh query dari client kepada DNS lain yang di sebutkan pada file konfigurasi
dari name server ini. BIND menggunakan keyword forwarders untuk forwarding name server
forwarders { 202.134.0.155;
202.134.2.5; };
Stealth Name Server
Merupakan name server yang tidak kelihatan pada NS RR yang terlihat oleh publik untuk domain tersebut.
Authoritative Only Name Server
Name server ini hanya memberikan jawaban yang authoritative dan tidak melakukan caching. Umum digunakan pada name server seperti
root name server. DNS ini tidak mensupport query secara recursive.
DNS Server 461
Zona Maintenance
proses zona maintenance dapat berupa transfer zona file dimana satu zona file digunakan untuk mengupdate banyak server. Fitur-fitur yang
digunakan dalam zona maintenance adalah
Full Zona Transfer AXFR
Proses full zona transfer kan dilakukan oleh slave name server SOA RR serial number pada master name server lebih besar daripada SOA
RR serial number pada slave name server. Jika ini terjadi, slave name server akan melakukan request untuk full zona transfer. Hal ini bisa
dilihat dari file log name server baik itu log dari master name server atau slave name server. AXFR menggunakan TCP port 53 dalam
proses transfernya. Log dibawah merupakan log pada master name server
Nov 18
13:18:22 ns1
named[4117]: client
192.168.0.25254251: transfer of scorvia.or.idIN: AXFR started
Nov 18
13:18:22 ns1
named[4117]: client
192.168.0.25254251: transfer of scorvia.or.idIN: AXFR ended
Berikut ini adalah log pada slave name server Nov 18 13:18:29 ns2 named[4421]: zone scorvia.or.idIN:
Transfer started. Nov
18 13:18:29
ns2 named[4421]:
transfer of
scorvia.or.idIN from 192.168.0.25353: connected using 192.168.0.25260883
Nov 18 13:18:29 ns2 named[4421]: zone scorvia.or.idIN: transferred serial 2007111813
Nov 18
13:18:29 ns2
named[4421]: transfer
of scorvia.or.idIN from 192.168.0.25353: end of transfer
Incremental Zona Transfer IXFR
Incremental zona transfer hanya akan melakukan transfer antara master dan slave untuk records yang mengalami perubahan saja. Jika
name server master dan slave mendukung mode IXFR maka proses ini
462 Pake Ubuntu Yuk Dijamin ga bakalan kena usus buntu
akan dilakukan, jika tidak maka proses AXFR yang akan dilakukan. IXFR menggunakan port TCP 53.
NOTIFY
Fitur ini digunakan oleh master name server untuk memberitahu slave name server jika terjadi perubahan dari file zona pada master name
server. Pada saat slave name server menerima notify, maka slave name server akan meminta SOA RR dari master name server, jika serial
number dari SOA RR lebih besar dari yang dimiliki oleh slave, proses transfer akan dilakukan bisa dengan AXFR atau IXFR.
Dynamic Update
Dengan metode ini zona records bisa di update dari satu atau lebih sumber eksternal, akan tetapi domain baru atau zona tidak bisa
ditambah atau didelete secara dynamic, karena SOA RR sangat essensial dalam penambahan atau penghapusan zona. Dynamic
update pada BIND menggunakan keyword allow-update.