DNS Server WAHYU HERLAMBANG
Konsep & Cara Kerja DNS Suatu host pada jaringan Transmission Control Protocol/Internet Protocol (TCP/IP) harus memiliki alamat IP agar dapat diakses. Alamat IP yang digunakan sekarang (IP versi 4) dibentuk dalam format angka long integer 32- bit yang dikelompokkan menjadi empat kelompok (untuk setiap kelompoknya masing-masing terdiri dari 8 bit). Bila dalam suatu jaringan TCP/IP memiliki banyak sekali host, maka tidak mudah bagi manusia untuk mengingat alamat- alamat IP yang ada (tentu saja bagi komputer hal ini bukan menjadi masalah). Karena itulah alamat-alamat IP tersebut perlu dipetakan menjadi nama yang dapat diingat manusia secara mudah dengan menggunakan DNS. Misalnya seperti IP Address 222.124.194.11 yang dipetakan menjadi www. unsri.ac.id sehingga lebih mudah diingat.
Cont’d Dalam teknologi internet sekarang ini, DNS pun merupakan jantung yang sangat berperan penting. Setiap kali kita meggunakan internet dalam kegiatan kita sehari-hari, maka setiap kali itu pula secara tidak langsung kita menggunakan DNS (Domain Name System). Pengunaan DNS didalam internet tersebut meliputi aplikasi email (electronicmail), browsing, ssh/telnet, ftp, maupun aplikasi yang lain yang ada kaitannya dengan internet. Oleh karena itu Pengetahuan dan pengertian tentang DNS merupakan hal penting yang harus dimiliki oleh operator maupun pengguna internet.
Domain Name System Beberapa pengertian mengenai Domain name system adalah sebagai berikut: Merupakan sistem database yang terdistribusi yang digunakan untuk pencarian nama komputer di jaringan yang menggunakan TCP/IP. DNS mempunyai kelebihan ukuran database yang tidak terbatas dan juga mempunyai performa yang baik. Merupakan aplikasi pelayanan di internet untuk menterjemahkan domain name ke alamat IP dan juga sebaliknya. Komputer yang terhubung dan memiliki tanggung jawab memberikan informasi zona nama domain anda, merubah nama domain menjadi alamat IP dan juga memiliki tanggung jawab terhadap distribusi email di mail server yang menyangkut dengan nama domain. Aplikasi yang membantu memetakan host name sebuah komputer ke IP address pada aplikasi yang terhubung ke Internet seperti web browser atau e-mail.
Cont’d DNS dapat dianalogikan sebagai pemakaian buku telefon dimana orang yang ingin kita hubungi, berdasarkan nama untuk menghubunginya dan menekan nomor telefon berdasarkan nomor dari buku telefon tersebut. Hal ini terjadi karena komputer bekerja berdasarkan angka, dan manusia lebih cenderung bekerja berdasarkan nama. Misalkan domain name yahoo.com mempunyai alamat IP 202.68.0.134, tentu mengingat nama komputer lebih mudah dibandingkan dengan mengingat alamat IP. Didalam DNS, sebuah name server akan memuat informasi mengenai host-host di suatu daerah/zone. Name server ini dapat mengakses server-server lainnya untuk mengambil data-data host di daerah lainnya. Name server akan menyediakan informasi bagi client yang membutuhkan, yang disebut resolvers.
Fungsi utama dari sebuah sistem DNS adalah: menerjemahkan nama-nama host (hostnames) menjadi nomor IP (IP address) ataupun sebaliknya, sehingga nama tersebut mudah diingat oleh pengguna internet. memberikan suatu informasi tentang suatu host ke seluruh jaringan internet.
DNS memiliki keunggulan seperti: Mudah, DNS sangat mudah karena user tidak lagi direpotkan untuk mengingat IP address sebuah komputer cukup host name (nama Komputer). Konsisten, IP address sebuah komputer boleh berubah tapi host name tidak berubah. Contoh:
Cont’d www.unsri.ac.id mempunyai IP 222.124.194.11, kemudian terjadi perubahan menjadi 222.124.194.25, maka disisi client seolah-olah tidak pernah ada kejadian bahwa telah terjadi perubahan IP. Simple, user hanya menggunakan satu nama domain untuk mencari baik di Internet maupun di Intranet.
Konsep dan hirarki DNS DNS adalah suatu bentuk database yang terdistribusi, dimana pengelolaan secara lokal terhadap suatu data akan segera diteruskan ke seluruh jaringan (internet) dengan menggunakan skema client-server. Suatu program yang dinamakan name server, mengandung semua segmen informasi dari database dan juga merupakan resolver bagi client-client yang berhubungan ataupun menggunakannya. Struktur dari database DNS bisa diibaratkan dengan dengan struktur file dari sebuah sistem operasi UNIX. Seluruh database digambarkan sebagai sebuah struktur terbalik dari sebuah pohon (tree) dimana pada puncaknya disebut dengan root node. Pada setiap node dalam tree tersebut mempunyai keterangan (label) misalnya, .org, .com, .edu, .net, .id dan lain- lainnya, yang relatif rerhadap puncaknya (parent).Ini bisa diibaratkan dengan relative pathname pada sistem file UNIX,seperti direktori bin, usr, var, etc dan lain sebagainya. Pada puncak root node dalam sebuah sistem DNS dinotasikan dengan “.” atau “/” pada sistem file UNIX.
Struktur Database DNS Struktur DNS Domain Name Space merupakan hirarki pengelompokan domain berdasarkan nama. Domain ditentukan berdasarkan kemampuan yang ada di struktur hirarki yang disebut level yang terdiri dari : • Root-Level Domains : merupakan level paling atas di hirarki yang di ekspresikan berdasarkan periode dan dilambangkan oleh “.”. • Top-Level Domains : berisi second-level domains dan hosts yaitu : com : organisasi komersial, seperti IBM (ibm.com). edu : institusi pendidikan, seperti U.C. Berkeley (berkeley.edu). org : organisasi non profit, Electronic Frontier Foundation (eff.org). net : organisasi networking, NSFNET (nsf.net). gov : organisasi pemerintah non militer, NASA (nasa.gov). mil : organisasi pemerintah militer, ARMY (army.mil). xx : kode negara (id:Indonesia,au:Australia)
Cont’d • Second-Level Domains : berisi domain lain yang disebut subdomain. Contoh, unsri.ac.id. Second-Level Domains unsri.ac.id bisa mempunyai host www.unsri.ac.id • Third-Level Domains : berisi domain lain yang merupakan subdomain dari second level domain diatasnya. Contoh, ilkom.unsri.ac.id. Subdomain ilkom.unsri.ac.id juga mempunyai host www.ilkom.unsri.ac.id. • Host Name : domain name yang digunakan dengan host name akan menciptakan fully qualified domain name (FQDN) untuk setiap komputer. Contohnya, jika terdapat www. unsri.ac.id, www adalah hostname dan unsri.ac.id adalah domain name.
STRUKTUR HIRARKI DNS
DNS Zone Terdapat dua bentuk Pemetaan DNS Zone, yaitu: Forward Lookup Zone: Melakukan pemetaan dari nama menuju IP address Reverse Lookup Zone: Melakukan pemetaan dari IP address menuju nama Forward Lookup Zone Cara kerja DNS tersebut dengan Forward Lookup Zone dapat kita lihat pada contoh berikut : Misal kita browsing di warnet, dan akan menghubungi www. unsri.ac.id . PC kita mengontak Server DNS lokal (biasanya terletak pada jaringan ISP) untuk menanyakan IP Address www.unsri.ac.id. Server DNS lokal akan melihat ke dalam cache-nya . Jika data itu terdapat di dalam cache server DNS server lokal, maka server tersebut akan memberikan alamat IP tersebut ke Browser. Jika tidak, maka server tersebut mengontak server DNS di atasnya (biasanya disebut Root DNS server “.”) untuk mengetahui alamat IP dari name server yang mengelola Top Level Domain .id.
Cont’d 4. Pada name server yang mengelola Top Level Domain .id, maka server akanb menanyakan IP dari name server pengelola domain ac.id. 5. Kemudian server akan mengontak name server pengelola domain ac.id, disini server akan menanyakan alamat IP dari second level Domain unsri.ac.id. 6. Setelah mendapatkan IP dari name server pengelola second level Domain unsri.ac.id, Pada name server yang mengelola unsri.ac.id, maka DNS server kita akan menanyakan alamat FQDN dari www.unsri.ac.id. 7. Setelah mendapatkan IP dari www.unsri.ac.id, maka server akan memberikan alamat IP tersebut ke PC yang me-request tadi, dan membuat cache terhadap alamat yang telah dicari. Sehingga jika ada permintaan lagi untuk mengakses www.unsri.ac.id, maka DNS Server akan memberikan alamat yang telah disimpan didalam cache tanpa harus menghubungi server diatasnya. Jadi permintaan terhadap server diatasnya hanya jika alamat yang akan diakses belum terdapat pada cache. 8. Setelah PC mendapatkan alamat IP dari www.unsri.ac.id barulah PC tadi bisa mengakses www.unsri.ac.id
Reverse Domain Server Di dalam jaringan TCP/IP diperlukan juga pemetaan dari IP address ke hostname. Pemetaan ini merupakan pemetaan balik dari pemetaan hostname ke IP address yang disebut reverse domain. Tujuannya untuk menyimpan informasi ataupun statistik yang disimpan dalam satu log file. Selain itu juga diperlukan untuk security jaringan (authorization check). Jika menggunakan host table (/etc/hosts) maka pemetaan hostname ke IP address merupakan pemetaan satu ke satu. Resolver akan mencari hostname pada host tabel secara sekuensial. Dengan menggunakan DNS proses pencarian IP address dari suatu hostname dapat dengan mudah dilakukan. Tapi proses pencarian hostname dari suatu host dengan IP address tertentu memerlukan proses pencarian yang cukup lama karena harus dilacak ke seluruh domain name server. Solusi yang digunakan adalah dengan membuat suatu domain dengan menggunakan IP address sebagai domain. Pada jaringan TCP/IP top level domain yang menggunakan IP address sebagai domain diberi nama in-addr. arpa. Pemberian nama sub domain dibawah top level domain ini mengikuti aturan sebagai berikut:
Cont’d 1. Sub domain dibentuk dengan menuliskan sub domain dalam format representasi IP address dalam bentuk dot-octet. 2. Pembentukan sub domain di bawah top level domain dimulai dari oktet pertama dari IP address (IP address terdiri dari 32 bit=4 oktet) dan sub domain selanjutnya dibentuk dari oktet ketiga dan demikian seterusnya. Contoh : Sebuah network dengan IP address 222.124.194.XX (Network Klas C, XX = variable 0 s.d. 255) dikoordininasikan oleh DNS server ns1.unsri.ac.id. Agar DNS ini dapat merupakan server untuk reverse domain pada IP address di atas maka reverse domain yang harus dibuat adalah 194.124.222.in-addr.arpa
Keterangan : Network dengan IP address 222.124.194.XX bila direpresentasikan dalam bentuk dot-octet adalah 222.124.194. Oktet pertama dari IP address network di atas adalah 222, oktet kedua 124, dan octet ketiga 194 maka sub domain di bawah top level domain in-addr.arpa adalah 222.in-addr.arpa. Subdomain berikutnya adalah oktet kedua yaitu 124, maka dibawah sub- domain 222.in-addr.arpa terdapat lagi sub domain 124.222.in-addr.arpa. Kemudian subdomain berikutnya adalah octet ketiga yaitu 180, maka dibawah subdomain 124.222.in-addr.arpa terdapat subdomain 194.124.222.in-addr.arpa
Proses pencarian IP address dengan menggunakan proses reverse domain dapat digambarkan seperti dibawah ini:
INSTALASI DAN KONFIGURASI Sebelum mulai mencoba mempraktikan DNS Server sebaiknya cek terlebih dahulu apakah computer anda sudah terdapat program BIND. Ini merupakan paket utama untuk menjadikan computer anda sebuah DNS Server. Pada distro Kinux Redhat, anda bisa melakukan pengecekan apakah paket BIND sudah terinstalasi dengan mengetikan perintah berikut: # rpm –qa |grep bind Apabila hasinya muncul seri dari BIND artinya program bind sudah terinstal. Apabila hasilnya kosong maka belum terinstall Konfigurasi DNS Ada beberapa file yang harus kita konfigurasikan, yaitu : · /etc/named.conf · /var/named/chroot/var/named (buat sendiri) · /etc/resolv.conf · /etc/hosts
1. Konfigurasi /etc/hosts File ini berisi pengalamata name-to-ip yang biasa digunakan juga untuk resolusi ipto-name. dengan memiliki file ini, mesin linux dapat menggunakan nama yang lebih muda diingat untuk memanggil atau mengakses mesin lain dalam jaringan, dari pada harus menggunakan nomor IP. Dengan menggunakan fasilitas terminal ketikan perintah dibawah ini : # cd /etc # vi hosts #vi /etc/hosts lalu ketikan sintak dibawah ini
Cont’d # Do not remove the following line, or various programs # that require network functionality will fail. 192.168.0.1 ns1.unsri.ac.id ns1 127.0.0.1 localhost.localdomain localhost ::1 localhost6.localdomain6 localhost6 Simpan file tersebut dengan tekan tombol ESC lalu Shift +: ketikan wq tekan enter
2. Konfigurasi /etc/resolv.conf atau DNS Client DNS client bertugas untuk menentukan DNS server yang digunakan untuk meresolusi alamat internet yang perlu dihubungi oleh program dalam mesin client. Dalam system linux DNS client. Mengaktifkan file resolv.conf (perhatikan apakah posisi directory anda berada di directory etc) #cd /etc # vi resolv.conf lalu ketikan file dibawah ini; generated by /sbin/dhclient-script search unsri.ac.id nameserver 192.168.0.1 nameserver 127.0.0.1 Simpan file tersebut dengan tekan tombol ESC lalu Shift +: ketikan wq tekan enter
3. Konfigurasi /etc/named.conf atau Name Server DNS membaca data-data resolusi pada sekumpulan file konfigurasi yang terdapat pada computer local. File-file tersebut antara lain File/var/named/named.local Named.local merupakan file untuk loopback untuk alamat ke diri sendiri yang bernomor IP 127.0.0.1 File/var/named/named.ca Berisi informasi yang berada dalam domain root, digunakan untuk name server jika ada resolver yang meminta nama domain di luar domain local. Pertama kita mengedit file mengedit file /etc/named.conf untuk menambahkan baris berikut:
Cont’d # cd /etc/ # vi named.conf lalu ketikan file dibawah ini disembarang tempat di dalam named.conf zone "unsri.ac.id" IN { type master; file "/var/named/unsri.ac.id.host"; }; zone ”0.168.192.in-addr.arpa” IN { file ”/var/named/192.168.0.rev”;
Cont’d Simpan file tersebut dengan shift + : lalu tekan tombol wq dan enter Yang berarti bahwa kita membuat zona domain unsri.ac.id dimana kita adalah penguasa domain tersebut (type master) dan informasi tentang anggota domainnya itu sendiri disimpan di file unsri.ac.id.host di direktori yang ditentukan oleh keyword direktory dari blok options yang berisi /var/named (jika anda tidak mau terhubung dengan internet maka harus ditambah dengan notify no)
4. Konfigurasi /var/named/chroot/var/named File zone merupakan file yang berisi informasi yang berkaitan dengan suatu domain. Pada file zone terdapat informasi untuk suatu domain seperti alamat IP, nama alias dari suatu host atau domain dan nama server DNS yang bertanggung jawab terhadap domain tersebut. File Forward Lookup Zone Pertama kita mengedit file mengedit file /var/named/chroot/var/named untuk membuat file zone: # cd /var/named/chroot/var/named # vi unsri.ac.id.host Lalu ketikan file dibawah ini
Cont’d $ttl 38400 unsri.ac.id. IN SOA ns1.unsri.ac.id. admin.unsri.ac.id. ( 1225384180 10800 3600 604800 38400 ) unsri.ac.id. IN NS ns1.unsri.ac.id. ns1.unsri.ac.id. IN A 192.168.0.1 www.unsri.ac.id. IN A 192.168.0.1
File Reverse Lookup Zone Zone Reverse diperlukan untuk mengubah dari alamat IP menjadi nama. Nama ini digunakan oleh berbagai macam server (FTP, Mail, WWW dsb) untuk menentukan apakah anda diperbolehkan mengakses layanan tersebut atau sejauh mana prioritas yang diberikan kepada anda. Untuk mendapatkan akses yang penuh pada semua layanan di Internet diperlukan zona reverse Tambahkan file reverse di /etc/named/chroot/var/named # cd /var/named/chroot/var/named # vi 192.168.0.rev Lalu ketikan file dibawah ini
Cont’d $ttl 38400 0.168.192.in-addr.arpa. IN SOA ns1.unsri.ac.id. root.unsri.ac.id. ( 1212503093 10800 3600 604800 38400 ) 0.168.192.in-addr.arpa. IN NS ns1.unsri.ac.id. 1.0.168.192.in-addr.arpa . IN PTR ns1.unsri.ac.id. Lalu simpan file tersebut
5. Setting IP Pada aplikasi ini kita asumsikan bahwa IP yang digunakan adalah 192.168.0.1(IP Local /eth0) Buka file ifcfg-eth0 dengan perintah sbb cd /etc/sysconfig/network-scripts/¿ vi ifcfg-eth0 ¿ Lalu edit file tersebut DEVICE= eth0 TYPE= Ethernet ONBOOT=yes BOOTPROTO= none IPADDR= 192.168.0.1 NETMASK= 255.255.255.0 USERCTL=no PEERDNS= yes IPV6INIT=no Simpan file yang telah di edit dengan SHIFT + : wq
6. Menjalankan DNS a. Aktifkan eth0 dengan cara sbb # service network restart b. Jalankan service “named” dengan cara sbb #service named restart c. Lalu gunakan perintah “dig”, perintah ini digunakan untuk mendapatkan section dari authority, commandnya : sbb dig www.unsri.ac.id (bila tidak tampil sesuai dengan gambar diatas coba periksa lagi file di named) d. Kemudian gunakan perintah “nslookup”, digunakan untuk melihat “resolv” dan “reverse” - nslookup >www.ilkom.unsri.ac.id >192.168.0.1 Keluar dari nslookup gunakan perintah ctrl + c Apabila hasil yang anda dapat sesuai dengan seperti yang diatas artinya anda sudah berhasil buat sebuah DNS SERVER Test DNS dengan ping www.unsri.ac.id
SEKIAN