2 DNS Server Master & Slave

17
Program Studi : TKJ DNS SERVER MASTER & SLAVE Nama : Rahadian Wahid Exp : Admin Server Kelas : XII TKJ B No. Exp : 2 Instruktur : 1. Dodi Permana 2. Trimans Yogiana TUJUAN Siswa dapat memahami tentang materi DNS Server master dan slave. Siswa dapat melakukan konfigurasi DNS Server dimana satu komputer menjadi master dan satunya lagi menjadi slave. Siswa dapat mengetahui perbedaan konfigurasi antara DNS Master dan DNS Slave. PENDAHULUAN Domain Name System (DNS) Sebelum berkenalan dengan BIND, kita harus tahu mengenai DNS. DNS merupakan sistem berbentuk database terdistribusi yang akan memetakan/mengkonversikan nama host/mesin/domain ke alamat IP (Internet Protocol) dan sebaliknya dari alamat IP ke nama host yang disebut dengan reverse-mapping. DNS sangat berguna sekali dalam jaringan terutama Internet, sistem ini akan memetakan nama mesin misal pikachu.indolinux.com ke alamat IP misal 202.123.45.6 selain itu juga penggunaannya sangat luas misal, untuk routing e-mail, telnet, ftp, web, dan lain-lain. Bagaimana jika tidak ada DNS, kepala kita bisa pecah jika harus mengingat ratusan, ribuan, bahkan jutaan alamat IP di Internet. Kita manusia lebih mudah untuk mengingat nama daripada alamat IP dengan panjang 32 bit itu. Komputer menggunakan alamat IP untuk berkomunikasi dan berinteraksi. Bagaimana menjembataninya? Disitulah gunanya Domain Name System (DNS).

description

dns server

Transcript of 2 DNS Server Master & Slave

Page 1: 2 DNS Server Master & Slave

Program Studi : TKJ

DNS SERVER MASTER & SLAVE

Nama : Rahadian Wahid

Exp : Admin Server

Kelas : XII TKJ B

No. Exp : 2

Instruktur : 1. Dodi Permana 2. Trimans Yogiana

TUJUAN

Siswa dapat memahami tentang materi DNS Server master dan slave.

Siswa dapat melakukan konfigurasi DNS Server dimana satu komputer

menjadi master dan satunya lagi menjadi slave.

Siswa dapat mengetahui perbedaan konfigurasi antara DNS Master dan

DNS Slave.

PENDAHULUAN

Domain Name System (DNS)

Sebelum berkenalan dengan BIND, kita harus tahu mengenai DNS. DNS merupakan sistem berbentuk database terdistribusi yang akan memetakan/mengkonversikan nama host/mesin/domain ke alamat IP (Internet Protocol) dan sebaliknya dari alamat IP ke nama host yang disebut dengan reverse-mapping. DNS sangat berguna sekali dalam jaringan terutama Internet, sistem ini akan memetakan nama mesin misal pikachu.indolinux.com ke alamat IP misal 202.123.45.6 selain itu juga penggunaannya sangat luas misal, untuk routing e-mail, telnet, ftp, web, dan lain-lain.

Bagaimana jika tidak ada DNS, kepala kita bisa pecah jika harus mengingat ratusan, ribuan, bahkan jutaan alamat IP di Internet. Kita manusia lebih mudah untuk mengingat nama daripada alamat IP dengan panjang 32 bit itu. Komputer menggunakan alamat IP untuk berkomunikasi dan berinteraksi. Bagaimana menjembataninya? Disitulah gunanya Domain Name System (DNS).

Page 2: 2 DNS Server Master & Slave

Dengan adanya DNS, informasi host menjadi mungkin untuk diakses oleh komputer di jaringan maupun Internet.

Implementasi DNS pada sistem operasi Linux yang sering digunakan adalah BIND meskipun ada juga salah satu implementasi yang cukup baru dan juga banyak dipakai yaitu djbdns. Walaupun banyak sejarah mengenai isu keamanan dan vulnerability-nya, banyak server DNS di dunia masih menggunakan BIND. Alasan yang mungkin adalah kebanyakkan para administrator server DNS tersebut lebih familiar dengan BIND daripada server DNS lain. Seperti halnya dengan penggunaan sendmail yang notabene merupakan server-mail yang punya konfigurasi cryptic daripada server-mail lain tetapi masih tetap digunakan dengan alasan familiar dan kebiasaan administratornya. Pandangan mengenai hal ini saya kembalikan pada administrator masing-masing lembaga atau perusahaan.

Sejarah DNS

Sebelum adanya DNS, pertama kali tepatnya tahun 1970-an dalam jaringan ARPAnet (cikal bakal jaringan Internet yang ada sekarang) digunakan pemetaan dengan bentuk tabel host pada berkas HOSTS.TXT.

Jaringan dengan HOSTS.TXT pada tiap host-nya

Berkas ini berisi nama host dan alamat IP serta pemetaannya dari seluruh mesin/komputer yang terhubung dalam jaringan. Ketika ada komputer lain yang terhubung ke jaringan ARPAnet maka masing-masing komputer dalam jaringan tersebut harus memperbaharui berkas HOSTS.TXT-nya. Pada saat itu cara meng-update berkas HOSTS.TXT dengan menggunakan ftp setiap satu atau dua minggu sekali. Masalah muncul ketika jaringan ARPAnet yang tadinya kecil tersebut kemudian menjadi Internet yang semakin hari semakin besar. Kesulitan meng-update isi berkas HOSTS.TXT karena jumlah nama mesin/komputer yang harus dituliskan ke berkas tersebut sudah terlalu besar dan tidak efisien. Lalu muncul ide untuk membuat sistem database terdistribusi yang mempunyai data

Page 3: 2 DNS Server Master & Slave

mengenai pemetaan nama host ke alamat IP dan sebaliknya. Dengan adanya pendistribusian database nama host dan alamat IP, maka tiap organisasi yang memiliki jaringan di dalam domain tertentu hanya bertanggung jawab terhadap database informasi pemetaan nama host dan alamat IP pada jaringannya saja yang biasa disebut zone. Administrasi domain tersebut dilakukan secara lokal tetapi informasi itu dapat diakses oleh semua komputer di Internet. Karena sifat database yang terdistribusi ini, maka dibutuhkan suatu mekanisme pengaksesan informasi bagi host lain pada database yang terdistribusi untuk menemukan informasi host atau jaringan yang dipunyai oleh suatu organisasi. Dan pada tahun 1984, Paul Mockapetris mengusulkan sistem database terdistribusi ini dengan Domain Name System (DNS) yang dideskripsikan dalam RFC 882 dan 883. Sistem ini digunakan sampai sekarang pada jaringan khususnya Internet.

Sistem DNS yang terdistribusi

Struktur dan Cara Kerja DNS

Struktur database DNS sangat mirip dengan sistem-berkas/filesystem UNIX yaitu berbentuk hierarki atau pohon. Tingkat teratas pada DNS adalah root yang disimbolkan dengan titik/dot (.) sedangkan pada sistem berkas UNIX, root disimbolkan dengan slash (/). Setiap titik cabang mempunyai label yang mengidentifikasikannya relatif terhadap root (.). Tiap titik cabang merupakan root bagi sub-tree/tingkat bawahnya. Tiap sub-tree merupakan domain dan dibawah domain terdapat sub-tree lagi bernama subdomain. Setiap domain mempunyai nama yang unik dan menunjukkan posisinya pada pohon DNS, pengurutan/penyebutan nama domain secara penuh dimulai dari domain paling bawah menuju ke root (.). Masing-masing nama yang membentuk suatu domain dipisahkan dengan titik/dot (.) dan diakhiri dengan titik yang merupakan nama absolut relatif terhadap root (.).

Page 4: 2 DNS Server Master & Slave

Contoh: raichu.cs.mit.edu. "." merupakan root domain edu merupakan Top Level Domain mit merupakan Second Level Domain cs merupakan Third Level Domain raichu merupakan nama komputer/mesin yang bersangkutan Sistem penulisan nama secara absolut dan lengkap ini disebut FQDN (Fully Qualified Domain Name).

Hierarki/pohon DNS dan sistem berkas UNIX

Page 5: 2 DNS Server Master & Slave

Tiap organisasi yang telah mendaftar ke Network Information Center(NIC) akan mendapatkan nama domain sesuai dengan organisasi tersebut. Nama domain tersebut bisa dibagi lagi menjadi subdomain sesuai dengan kebutuhan organisasi tersebut sesuai dengan otorisasi domain. Contoh: InterNIC mempunyai semua Top Level Domain termasuk com, perusahaan indolinux akan mendaftarkan nama domain indolinux.com (komersial), maka indolinux diberikan/didelegasikan oleh InterNIC untuk mengelola domain indolinux.com yang merupakan sub domain dari com. Indolinux dapat membagi lagi domain indolinux.com ke beberapa sub domain misal pikachu.indolinux.com, raichu.indolinux.com. Setiap server DNS pada suatu jaringan mempunyai informasi tentang host-host dalam jaringan tersebut yaitu alamat IP, routing email, server ftp, server web, dsb. Selain itu tiap host dalam otorisasi suatu domain juga bisa mendapatkan alias dari nama host-nya dalam domain di atasnya. misal: iwan.indolinux.com bisa saja mempunyai alias (canonical name) pikachu.indolinux.com, dimana kedua domain tersebut mengacu ke mesin/host yang sama.

Dengan adanya sistem berbentuk hierarki/pohon ini maka tidak ada nama host yang sama pada domain/subdomain yang sama, karena masing-masing dari node/titik-cabang mempunyai nama unik dan tidak boleh ada yang menyamainya kecuali berbeda sub-tree/sub pohon. Tidak akan ada konflik antar organisasi karena masing-masing organisasi mempunyai domain yang berbeda-beda dan ini diatur oleh InterNIC untuk TLD. Misal: indolinux menginginkan nama mesin/host di bawah domain indolinux.com dengan nama pikachu (pikachu.indolinux.com), sedang 5leaps Software juga menginginkan nama yang sama untuk salah satu host-nya dengan domain 5leaps.org. Disini tidak akan terjadi konflik karena masing-masing mempunyai domain sendiri-sendiri. Indolinux mempunyai pikachu.indolinux.com dan 5leaps Software mempunyai pikachu.5leaps.org.

Seperti dijelaskan di atas, tidak boleh suatu nama/label sama yang berada dalam domain sama atau mempunyai parent atau sub-tree atas yang sama karena ini akan membuat konflik pada penamaan domain. Coba bayangkan jika orang tua yang sama mempunyai dua orang anak dengan nama yang sama. Bagaimana mereka memanggil satu dari dua anak tersebut? anda pasti tahu jawabannya. Ini sangat menyulitkan.

Konflik domain

Kedalaman pohon dibatasi sampai level 127, akankah anda menembus batas ini untuk domain anda? sepertinya tidak.

Page 6: 2 DNS Server Master & Slave

Sebuah nama domain adalah nama sub-tree dari domain name-space. Suatu host diwakili dengan nama domain yang full/penuh termasuk nama mesin/komputer tersebut, dan host mengacu pada suatu host/komputer secara individu. Sedangkan domain berisi semua host yang berada dibawahnya. Individual host yang berada pada suatu domain menunjukkan informasi mengenai alamat jaringan, perangkat keras, routing mail, dsb. Untuk membedakan nama domain dan subdomain kita ambil contoh:

pikachu.indolinux.com adalah subdomain dari indolinux.com. stwn.raichu.domain.net adalah subdomain dari raichu.domain.net. dst.

Top Level Domain (TLD)

Top Level Domain adalah domain pada level teratas di bawah root (.). Ada tiga pengelompokkan Top Level Domain:

1. Domain Generik

Terdiri atas 7 domain yaitu

1. com Untuk organisasi komersial. contoh: ibm.com, sun.com.

2. net Untuk organisasi/perusahaan penyedia layanan jaringan/Internet. contoh: internic.net, nsf.net.

3. gov Untuk lembaga/organisasi pemerintahan. contoh: whitehouse.gov, nasa.gov.

4. mil Untuk badan/organisasi militer. contoh: army.mil.

5. org Untuk organisasi non-komersial. contoh: linux.org.

6. edu Untuk lembaga pendidikan. contoh: mit.edu, berkeley.edu.

7. int Untuk organisasi Internasional. contoh: nato.int.

Selain 7 domain di atas ada lagi 7 domain baru dari ICANN (www.icann.org) yaitu:

8. aero Untuk industri atau perusahaan udara.

9. biz Untuk perusahaan atau lembaga bisnis.

10. coop Untuk perusahaan atau lembaga kooperatif

11. info Untuk penggunaan umum.

Page 7: 2 DNS Server Master & Slave

12. museum Untuk museum.

13. name Untuk registrasi bagi penggunaan individual/personal.

14. pro Untuk para profesional seperti: akuntan, dan lain-lain.

2. Domain Negara Merupakan standar pembagian geografis berdasarkan kode negara. Contoh: id untuk Indonesia, au untuk Australia, uk untuk Inggris, dan lain-lain. Domain negara ini dapat dan umumnya diturunkan lagi ke level-level di bawahnya yang diatur oleh NIC dari masing-masing negara, untuk Indonesia yaitu IDNIC. Contoh level bawah dari id yaitu net.id, co.id, web.id.

3. Domain Arpa Merupakan domain untuk jaringan ARPAnet. Tiap domain yang tergabung ke Internet berhak memiliki name-space .in-addr.arpa sesuai dengan alamat IP-nya.

Name-Server dan Zone

Name-server adalah program server yang memiliki informasi mengenai host di bawah domain tertentu. Name-server mempunyai bagian-bagian informasi mengenai domain name-space yang dikenal dengan zone. Zone ini akan dimuat dari berkas yang disimpannya atau dari server DNS lain. Sebagai contoh domain id bisa dibagi menjadi beberapa zone yaitu ac.id, net.id dan dari zone tersebut bisa dibagi lagi menjadi zone-zone yang lebih kecil misal undip.ac.id, dst. Disini yang bertanggung jawab ialah organisasi/lembaga yang memiliki domain tersebut.

Pembagian zone

Page 8: 2 DNS Server Master & Slave

Ada dua tipe dari name-server yaitu:

1. Primary Master

Primary Master name-server bertanggung jawab terhadap suatu zone dengan memuat informasi dari berkas database pada dirinya sendiri.

2. Secondary Master (Slave)

Secondary Master name-server memuat informasi zone dari server lain yang otoritatif pada suatu zone yang disebut Master Server. Secondary Master akan melakukan zone-transfer dari Master Server untuk mendapatkan data/informasi pada suatu zone yang dikelolanya.

Primary Master dan Secondary Master server DNS

Untuk dapat bekerja name-server membutuhkan resource-record untuk domain yang dikelola. Resource-record adalah data yang mengacu/menunjukkan pada informasi mengenai host pada jaringan atau domain tertentu.

Komponen DNS

DNS sebenarnya merupakan suatu sistem server-client, jadi ada suatu mekanisme dari client untuk meminta informasi dari server yang akan memberikan informasi yang diminta sang client. Seperti yang disebutkan di atas program pada server tersebut sering disebut dengan name-server. Pada client sering disebut dengan resolver. DNS mempunyai beberapa komponen yaitu:

1. Resolver Resolver yaitu suatu rutin pustaka yang akan membuat suatu permintaan/query dan mengirimkannya lewat jaringan ke sebuah name-server. Program tersebut berjalan pada host yang menginginkan informasi mengenai suatu host di Internet. Resolver juga menginterpretasikan respon dari name-server apakah informasi yang diminta merupakan record ataupun kesalahan.

2. Resolution Resolution yaitu proses pencarian name-server yang mempunyai tanggung jawab terhadap suatu domain yang akan diminta. Setelah name-server yang dicari ditemukan maka server akan memberikan informasi name-server yang bersangkutan kepada pemintanya.

Page 9: 2 DNS Server Master & Slave

3. Caching Caching yaitu suatu rutin yang akan menyimpan hasil pencarian domain dalam database dari name-server yang pernah diminta. Time To Live (TTL) merupakan batas waktu dimana server DNS dapat menyimpan/caching infomasi yang pernah dicari.

Resolver, caching, dan resolution

BIND (Berkeley Internet Name Domain)

BIND merupakan salah satu implementasi dari DNS yang paling banyak digunakan pada server di Internet. Implementasi DNS pertama adalah JEEVES buatan Paul Mockapetris. BIND dibuat untuk sistem operasi BSD UNIX 4.3 oleh Kevin Dunlap, tapi kemudian banyak di-porting ke banyak turunan UNIX termasuk Linux. BIND sampai sekarang masih dikoordinasi oleh Internet Software Consortium. Program utama dari BIND adalah bernama named yaitu sebuah daemon yang bila dijalankan akan menunggu koneksi pada port 53 (default). Koneksi pada port 53 ini adalah koneksi permintaan informasi pemetaan dari nama domain/mesin ke alamat IP dan sebaliknya. Jika sebuah server DNS mempunyai otorisasi terhadap suatu domain maka si server DNS tersebut akan memberikan informasi mengenai nama-nama mesin/domain yang berada di bawah domain yang dipegangnya. Misal: server DNS penulis mempunyai otorisasi terhadap domain indolinux.com, maka ketika ada sebuah komputer dari Internet ingin mengakses pikachu.indolinux.com, maka sang komputer itu akan menghubungi server DNS penulis untuk mengetahui informasi alamat IP dari pikachu.indolinux.com. Sang server DNS akan menjawab permintaan/query dari komputer peminta tersebut dengan alamat IP yang sesuai kemudian komputer tersebut dapat mengakses pikachu.indolinux.com melalui alamat IP yang diberikan oleh name-server tersebut.

Pencarian host pikachu.indolinux.com

Page 10: 2 DNS Server Master & Slave

Versi terakhir pada saat artikel ini dibuat adalah BIND versi 9.2.1. Sebagian besar distribusi Linux menyertakan paket BIND. Jadi anda tinggal konfigurasi dan aktifkan saja jika sudah terinstal. BIND secara umum terdiri dari beberapa berkas yang mendukung yaitu:

1. /etc/resolv.conf Berkas konfigurasi berisi domain atau alamat IP name-server yang pertama dicari oleh resolver ketika sebuah domain/nama mesin diminta untuk dipetakan ke alamat IP.

2. /etc/nsswitch.conf Berkas konfigurasi sistem untuk melakukan mekanisme switch sistem database dan name-service. Switch dapat melalui berkas, name-server, atau NIS server.

3. /etc/named.conf Berkas konfigurasi dari BIND yang utama, berisi informasi mengenai bagaimana klien DNS mengakses port 53, letak dan jenis berkas database yang diperlukan. Umumnya berisi letak berkas konfigurasi name-server root, domain, localhost/loopback, dan reverse-mapping.

4. /var/named/named.ca Berkas database name-server root yang bertanggung jawab terhadap Top Level Domain di Internet. Digunakan untuk mencari domain di luar domain lokal. Nama berkas ini bisa anda definisikan sendiri tetapi tetap harus mengacu ke named.conf sebagai berkas konfigurasi utama dari BIND.

5. /var/named/named.local Berkas database name-server untuk alamat loopback/host lokal/alamat diri sendiri. Nama berkas ini bisa anda definisikan sendiri tetapi tetap harus mengacu ke named.conf sebagai berkas konfigurasi utama dari BIND.

6. /var/named/db.domain-kita.com Berkas database name-server untuk domain domain-kita.com yang berisi resource record, informasi nama host dan alamat IP yang berada di bawah domain domain-kita.com. Berkas ini bisa lebih dari satu tergantung jumlah domain yang kita kelola. Nama berkas ini bisa anda definisikan sendiri tetapi tetap harus mengacu ke named.conf sebagai berkas konfigurasi utama dari BIND.

7. /etc/rndc.conf Berkas konfigurasi program rndc yaitu suatu program untuk administrasi dan kontrol operasi name-server BIND.

Page 11: 2 DNS Server Master & Slave

ALAT & BAHAN

1 unit komputer

Aplikasi virtualisasi (Virtual Box)

OS Ubuntu Server

Koneksi internet

LANGKAH KERJA

DNS Server Master

1. Pastikan bind9 sudah terpasang pada server dan konfigurasi interface dengan

ketentuan sebagai berikut untuk DNS Server master

Interface : eth1

Address : 192.168.0.22

Netmask : 255.255.255.0

Gateway : 192.168.0.1

2. Pindahlah ke direktori bind dengan perintah cd /etc/bind dan lihat isi direktori

tersebut dengan perintah ls

3. Buatlah file db untuk konfigurasi DNS yang akan kita buat dengan menggandakan

konfigurasi local yang sudah ada dan memodifikasinya dengan perintah cp db.local

db.rahadian dan cp db.127 db.192 (untuk reverse)

4. Lakukan konfigurasi zone pada named.conf.local dengan perintah nano

named.conf.local

Page 12: 2 DNS Server Master & Slave

5. Buatlah konfigurasi seperti gambar di bawah ini :

6. Setelah itu lakukan konfigurasi file db.rahadian dan db.192 dengan perintah nano

db.rahadian dan nano db.192 seperti gambar dibawah :

File db.rahadian

Page 13: 2 DNS Server Master & Slave

File db.192

7. Restart bind dengan perintah service bind9 restart

8. Ubah konfigurasi nameserver pada /etc/resolv.conf dengan perintah nano

/etc/resolv.conf dan ubah IP dengan IP DNS server yang telah dibuat (IP DNS Server

master)

DNS Server Master

1. Pastikan bind9 sudah terpasang pada server dan konfigurasi interface dengan

ketentuan sebagai berikut untuk DNS Server master

Interface : eth1

Address : 192.168.0.23

Netmask : 255.255.255.0

Gateway : 192.168.0.1

2. Lakukan konfigurasi zone pada named.conf.local dengan perintah nano

named.conf.local

Page 14: 2 DNS Server Master & Slave

3. Buatlah konfigurasi seperti gambar di bawah ini :

4. Restart bind dengan perintah service bind9 restart

5. Lihatlah hasil dari transfer yang dilakukan master terhadap slave pada direktori

/var/cache/bind/ dengan perintah ls /var/cache/bind/

6. Ubah konfigurasi nameserver pada /etc/resolv.conf dengan perintah nano

/etc/resolv.conf dan ubah IP dengan IP DNS server yang telah dibuat (IP DNS Server

master)

Page 15: 2 DNS Server Master & Slave

HASIL PENGAMATAN

Pengecekan pada DNS server master menggunakan nslookup pada rahadian.net dan

IP 192.168.0.22

Pengecekan DNS server master menggunakan dig pada rahadian.net

Page 16: 2 DNS Server Master & Slave

Pengecekan DNS server slave menggunakan nslookup pada rahadian.net dan IP

192.168.0.23

Pengecekan DNS server slave menggunakan dig pada rahadian.net

Page 17: 2 DNS Server Master & Slave

KESIMPULAN

Sistem master dan slave pada DNS memudahkan admin dalam melakukan

pengaturan record. Dalam hal ini admin tidak harus membuat record satu per satu

pada setiap DNS server, karena hal ini akan sangat tidak efektif dan menghabiskan

waktu.

Pada sistem master dan slave sangat perlu diperhatikan pembuatan record yang

dilakukan pada DNS master server. Karena jika ada kesalahan di dalamnya maka

semua DNS slave server pun akan mengalami kesalahan dari sisi record. Karena DNS

slave server hanya akan mengambil record dari master tanpa melakukan solving jika

ada kesalahan.