Rabu, 23 Oktober 2013

DNS

DNS (Domain Name System, bahasa Indonesia: Sistem Penamaan Domain) adalah sebuah sistem yang menyimpan informasi tentang nama host maupun nama domain dalam bentuk basis data tersebar (distributed database) di dalam jaringan komputer, misalkan: Internet. DNS menyediakan alamat IP untuk setiap nama host dan mendata setiap server transmisi surat (mail exchange server) yang menerima surat elektronik (email) untuk setiap domain.

DNS menyediakan servis yang cukup penting untuk Internet, bilamana perangkat keras komputer dan jaringan bekerja dengan alamat IP untuk mengerjakan tugas seperti pengalamatan dan penjaluran (routing), manusia pada umumnya lebih memilih untuk menggunakan nama host dan nama domain, contohnya adalah penunjukan sumber universal (URL) dan alamat e-mail. DNS menghubungkan kebutuhan ini.

DNS server merupakan server yang digunakan untuk me-resolve nama-nama sistem ke dalam IP address atau sebaliknya (reverse lookup).

Pengelola dari sistem DNS terdiri dari tiga komponen :

1. DNS resolver, sebuah program klien yang berjalan di komputer pengguna, yang membuat permintaan DNS dari program aplikasi.
2. recursive DNS server, yang melakukan pencarian melalui DNS sebagai tanggapan permintaan dari resolver, dan mengembalikan jawaban kepada para resolver tersebut;
3. authoritative DNS server yang memberikan jawaban terhadap permintaan dari recursor, baik dalam bentuk sebuah jawaban, maupun dalam bentuk delegasi (misalkan: mereferensikan ke authoritative DNS server lainnya).
Sejarah Singkat DNS

Penggunaan nama sebagai pengabstraksi alamat mesin di sebuah jaringan komputer yang lebih dikenal oleh manusia mengalahkan TCP/IP, dan kembali ke zaman ARPAnet. Dahulu, setiap komputer di jaringan komputer menggunakan file HOSTS.TXT dari SRI (sekarang SIR International), yang memetakan sebuah alamat ke sebuah nama (secara teknis, file ini masih ada - sebagian besar sistem operasi modern menggunakannya baik secara baku maupun melalui konfigurasi, dapat melihat Hosts file untuk menyamakan sebuah nama host menjadi sebuah alamat IP sebelum melakukan pencarian via DNS). Namun, sistem tersebut diatas mewarisi beberapa keterbatasan yang mencolok dari sisi prasyarat, setiap saat sebuah alamat komputer berubah, setiap sistem yang hendak berhubungan dengan komputer tersebut harus melakukan update terhadap file Hosts.

Dengan berkembangnya jaringan komputer, membutuhkan sistem yang bisa dikembangkan: sebuah sistem yang bisa mengganti alamat host hanya di satu tempat, host lain akan mempelajari perubaha tersebut secara dinamis. Inilah DNS.

Paul Mockapetris menemukan DNS di tahun 1983; spesifikasi asli muncul di RFC 882 dan 883. Tahun 1987, penerbitan RFC 1034 dan RFC 1035 membuat update terhadap spesifikasi DNS. Hal ini membuat RFC 882 dan RFC 883 tidak berlaku lagi. Beberapa RFC terkini telah memproposikan beberapa tambahan dari protokol inti DNS.


Cara Kerja DNS Sebagai Berikut

* Saat kita merequest suatu alamat, misalnya phinguind.com dari host kita, maka host kita akan mengontak name server lokal untuk menanyakan dimanakah phinguind.com berada.
* Name server akan mencari request tersebut di database lokal. Karena tidak ada, maka name server akan mengontak root DNS servernya, siapa yang memegang domain untuk .com
* Domain .com berada pada level TLD (Top level domain), merupakan kode kategori organisasi atau negara misalnya: .com dipakai untuk perusahaan komersial; .edu dipakai untuk perguruan tinggi; .gov dipakai oleh badan pemerintahan. Selain itu untuk membedakan nama yang dipakai oleh suatu negara dengan negara lain digunakan tanda mislanya .id untuk Indonesia atau .au untuk Australia.Root server akan memberitahu IP address dari server DNS dari phinguind.com Kemudian DNS server lokal akan mengontak server DNS yang mengelola phinguind.com Kemudian DNS server tersebut akan memberitahu IP address dari phinguind.com Sehingga host kita merequest phinguind.com dengan IP address tersebut.


Resource Record

Resource Record merupakan record yang terdapat dalam database DNS untuk menerjemahkan IP Address ke nama dan dari Nama ke IP Address.
Ada beberapa resource Record :

1. A Record : berisi nama host dan IP Address, menunjukkan alamat Ipv4. Nama owner akan ekuivalen dengan IP address yang didefinisikan setelah record A.
2. SOA (Start of Authority) Record : siapa yang bertanggung jawab atas suatu zone.

SOA MNAME รข€“ SOA: Start Of Authority SOA MNAME> adalah field yang menunjukkan master server pada puncak/root dari zona authority. Hanya diperbolehkan terdapat satu master server tiap zona authority. Contohnya domain jagoanhosting.com memiliki SOA MNAME ns1.jagoanhosting.com

SOA Serial Number SOA Serial Number adalah field yang menunjukkan serial number dari DNS server. Format yang paling populer dalam penamaan serial number ini adalah yyyymmddss dengan yyyy adalah tahun, mm adalah bulan, dd adalah tanggal, dan ss adalah jumlah perubahan yang dilakukan pada hari itu. Nilai dari field ini harus diubah ketika terjadi perubahan pada zone file.

SOA REFRESH> SOA REFRESH adalah field yang menunjukkan waktu slave server akan merefresh zona dari master server.

SOA RETRY SOA RETRY adalah field yang menunjukkan berapa lama waktu jeda antara percobaan slave server mengkontak master server jika kontak pertama mengalami kegagalan ketika slave master me-refresh cache dari master server.

SOA EXPIRE SOA EXPIRE adalah field yang menunjukkan berapa lama zona-data masih authoritative. Field ini hanya berlaku untuk slave atau secondary server. Ketika nilai ini telah expired, maka slave master akan mengontak master server untuk membaca SOA record pada zona dan merequest AXFR/IFXR jika serial number berubah. Jika slave gagal mengontak master, maka slave akan terus mencoba mengontak master dan masih melayani query hingga waktu SOA EXPIRE habis. Setelah itu slave akan berhenti melayani query hingga kontak ke master server berhasil. RFC 1912 merekomendasikan 1209600 hingga 2419200 (2-4 minggu).

SOA MINIMUM TTL SOA MINIMUM TTL adalah nilai default TTL (Time To Live) untuk semua record pada zone file. Field ini dalam satuan detik.

3. NS (Name Server) Record: name server yang bertanggung jawab atas suatu zone

4. CNAME (Canonical Name) Record : nama alias untuk suatu host, dan sebuah record yang menjelaskan primary name untuk owner. Nama ownernya disebutkan dalam alias.

Struktur DNS

Domain Name System merupakan sebuah hirarki pengelompokan domain berdasarkan nama, yang terbagi menjadi beberapa bagian diantaranya:

Root-Level Domain

Domain ditentukan berdasarkan tingkatan kemampuan yang ada di struktur hirarki yang disebut dengan level. Level paling atas di hirarki disebut dengan root domain. Root domain di ekspresikan berdasarkan periode dimana lambang untuk root domain adalah (“.”).

Top-Level Domain

Pada bagian dibawah ini adalah contoh dari top-level domains:

* com Organisasi Komersial
* edu Institusi pendidikan atau universitas
* org Organisasi non-profit
* net Networks (backbone Internet)
* gov Organisasi pemerintah non militer
* mil Organisasi pemerintah militer
* num No telpon
* arpa Reverse DNS
* int Organisasi internasional, seperti NATO
* xx dua-huruf untuk kode negara (id:Indonesia, sg:singapura, au:australia, dll)

Top-level domains dapat berisi second-level domains dan hosts. Pada jaringan Internet top level domain untuk Indoenesia adalah id. Pada saat ini telah ada kesepakatan di antara provider dan pengelola jaringan di Indonesia untuk pengaturan sub-domain di bawah top level domain id. Kesepakatan ini ditujukan untuk mempermudah pengaturan routing dan manajemen jaringan. Kesepakatan tentang sub-domain di bawah top level domain id adalah :

* go.id Sub-domain untuk organisasi pemerintahan, mis LIPI (lipi.go.id), BPPT (bbpt.go.id).
* co.id Sub-domain untuk organisasi komersial, mis LEN (len.co.id), PT.Agung Teknik (atw.co.id).
* ac.id Sub-domain untuk organisasi pendidikan, mis UIN Alauddin (uin-alauddin.ac.id.), UI (ui.ac.id), UGM (ugm.ac.id).
* net.id Sub-domain untuk provider network, mis IndoInternet (indo.net.id), Radnet (radnet.net.id), Idola (idola.net.id).
* or.id Sub-domain untuk organisasi kemasyarakatan, mis WALHI (walhi.or.id).

Penamaan sub-domain di bawah sub-domain di atas diserahkan sepenuhnya kepada pengelola jaringan di domain tersebut. Misalkan UIN Alauddin dapat memilih domain uin-alauddin.ac.id ataupun uinalauddin.ac.id. Yang perlu dipertahankan adalah konsistensi penamaan domain. Sebaiknya domain yang digunakan bersifat permanen, tidak berganti-ganti. Karena pergantian domain akan memerlukan updating pada seluruh jaringan. Perluasan domain (domain expanding) di bawah suatu domain juga diserahkan sepenuhnya kepada pengelola jaringan di masing-masing sub-domain. Misalkan di domain uin-alauddin.ac.id terdapat beberapa subdomain lagi yang lebih kecil seperti Fakultas Sains dan Teknologi di lingkungan UIN Alauddin digunakan sub domain fst.uin-alauddin.ac.id, di lingkungan jurusan Teknik Informatika digunakan domain tin.fst.uin-alauddin.ac.id.

Second-Level Domains

Second-level domains dapat berisi host dan domain lain, yang disebut dengan subdomain. Untuk contoh: Domain akademik, ac.id terdapat komputer (host) seperti uin-alauddin.ac.id dan subdomain kuliah.uin-alauddin.ac.id. Subdomain kuliah.uin-alauddin.ac.id juga bisa terdapat komputer (host) misalnya jarkom.kuliah.uin-alauddin.ac.id.