Kamis, 16 Oktober 2008

DOMAIN NAME SYSTEM

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.

Pengertian Beberapa Bagian dari Nama Domain

Sebuah nama domain biasanya terdiri dari dua bagian atau lebih (secara teknis disebut label), dipisahkan dengan titik.

  • Label paling kanan menyatakan top-level domain - domain tingkat atas/tinggi (misalkan, alamat www.wikipedia.org memiliki top-level domain org).
  • Setiap label di sebelah kirinya menyatakan sebuah sub-divisi atau subdomain dari domain yang lebih tinggi. Catatan: "subdomain" menyatakan ketergantungan relatif, bukan absolut. Contoh: wikipedia.org merupakan subdomain dari domain org, dan id.wikipedia.org dapat membentuk subdomain dari domain wikipedia.org (pada prakteknya, id.wikipedia.org sesungguhnya mewakili sebuah nama host - lihat dibawah). Secara teori, pembagian seperti ini dapat mencapai kedalaman 127 level, dan setiap label dapat terbentuk sampai dengan 63 karakter, selama total nama domain tidak melebihi panjang 255 karakter. Tetapi secara praktek, beberapa pendaftar nama domain (domain name registry) memiliki batas yang lebih sedikit.
  • Terakhir, bagian paling kiri dari bagian nama domain (biasanya) menyatakan nama host. Sisa dari nama domain menyatakan cara untuk membangun jalur logis untuk informasi yang dibutuhkan; nama host adalah tujuan sebenarnya dari nama sistem yang dicari alamat IP-nya. Contoh: nama domain www.wikipedia.org memiliki nama host "www".

DNS memiliki kumpulan hirarki dari DNS servers. Setiap domain atau subdomain memiliki satu atau lebih authoritative DNS Servers (server DNS otorisatif) yang mempublikasikan informas tentang domain tersebut dan nama-nama server dari setiap domain di-"bawah"-nya. Pada puncak hirarki, terdapat root servers- induk server nama: server yang ditanyakan ketika mencari (menyelesaikan/resolving) dari sebuah nama domain tertinggi (top-level domain).

Sebuah Contoh dari Teori Rekursif DNS

Sebuah contoh mungkin dapat memperjelas proses ini. Andaikan ada aplikasi yang memerlukan pencarian alamat IP dari www.wikipedia.org. Aplikasi tersebut bertanya ke DNS recursor lokal.

  • Sebelum dimulai, recursor harus mengetahui dimana dapat menemukan root nameserver; administrator dari recursive DNS server secara manual mengatur (dan melakukan update secara berkala) sebuah file dengan nama root hints zone (panduan akar DNS) yang menyatakan alamat-alamt IP dari para server tersebut.
  • Proses dimulai oleh recursor yang bertanya kepada para root server tersebut - misalkan: server dengan alamat IP "198.41.0.4" - pertanyaan "apakah alamat IP dari www.wikipedia.org?"
  • Root server menjawab dengan sebuah delegasi, arti kasarnya: "Saya tidak tahu alamat IP dari www.wikipedia.org, tapi saya "tahu" bahwa server DNS di 204.74.112.1 memiliki informasi tentang domain org."
  • Recursor DNS lokal kemudian bertanya kepada server DNS (yaitu: 204.74.112.1) pertanyaan yang sama seperti yang diberikan kepada root server. "apa alamat IP dari www.wikipedia.org?". (umumnya) akan didapatkan jawaban yang sejenis, "saya tidak tahu alamat dari www.wikipedia.org, tapi saya "tahu" bahwa server 207.142.131.234 memiliki informasi dari domain wikipedia.org."
  • Akhirnya, pertanyaan beralih kepada server DNS ketiga (207.142.131.234), yang menjawab dengan alamat IP yang dibutuhkan.

Proses ini menggunakan pencarian rekursif (recursion / recursive searching).

Pengertian Pendaftaran Domain dan Glue Records

Membaca contoh diatas, Anda mungkin bertanya: "bagaimana caranya DNS server 204.74.112.1 tahu alamat IP mana yang diberikan untuk domain wikipedia.org?" Pada awal proses, kita mencatat bahwa sebuah DNS recursor memiliki alamat IP dari para root server yang (kurang-lebih) didata secara explisit (hard coded). Mirip dengan hal tersebut, server nama (name server) yang otoritatif untuk top-level domain mengalami perubahan yang jarang.

Namun, server nama yang memberikan jabawan otorisatif bagi nama domain yang umum mengalami perubahan yang cukup sering. Sebagai bagian dari proses pendaftaran sebuah nama domain (dan beberapa waktu sesudahnya), pendaftar memberikan pendaftaran dengan server nama yang akan mengotorisasikan nama domain tersebut; maka ketika mendaftar wikipedia.org, domain tersebut terhubung dengan server nama gunther.bomis.com dan zwinger.wikipedia.org di pendaftar .org. Kemudian, dari contoh di atas, ketika server dikenali sebagai 204.74.112.1 menerima sebuah permintaan, DNS server memindai daftar domain yang ada, mencari wikipedia.org, dan mengembalikan server nama yang terhubung dengan domain tersebut.

Biasanya, server nama muncul berdasarkan urutan nama, selain berdasarkan alamat IP. Hal ini menimbulkan string lain dari permintaan DNS untuk menyelesaikan nama dari server nama; ketika sebuah alamat IP dari server nama mendapatkan sebuah pendaftaran di zona induk, para programmer jaringan komputer menamakannya sebuah glue record (daftar lekat???)

DNS di Dunia Nyata

Di dunia nyata, user tidak berhadapan langsung dengan DNS resolver - mereka berhadapan dengan program seperti web brower (Mozilla Firefox, Safari, Opera, Internet Explorer, Netscape, Konqueror dan lain-lain dan klien mail (Outlook Express, Mozilla Thunderbird dan lain-lain). Ketika user melakukan aktivitas yang meminta pencarian DNS (umumnya, nyaris semua aktivitas yang menggunakan Internet), program tersebut mengirimkan permintaan ke DNS Resolver yang ada di dalam sistem operasi.

DNS resolver akan selalu memiliki cache (lihat diatas) yang memiliki isi pencarian terakhir. Jika cache dapat memberikan jawaban kepada permintaan DNS, resolver akan menggunakan nilai yang ada di dalam cache kepada program yang memerlukan. Kalau cache tidak memiliki jawabannya, resolver akan mengirimkan permintaan ke server DNS tertentu. Untuk kebanyakan pengguna di rumah, Internet Service Provider(ISP) yang menghubungkan komputer tersebut biasanya akan menyediakan server DNS: pengguna tersebut akan mendata alamat server secara manual atau menggunakan DHCP untuk melakukan pendataan tersebut. Jika administrator sistem telah mengkonfigurasi sistem untuk menggunakan server DNS mereka sendiri, DNS resolver umumnya akan mengacu ke server nama mereka. Server nama ini akan mengikuti proses yang disebutkan di Teori DNS, baik mereka menemukan jawabannya maupun tidak. Hasil pencarian akan diberikan kepada DNS resolver; diasumsikan telah ditemukan jawaban, resolver akan menyimpan hasilnya di cache untuk penggunaan berikutnya, dan memberikan hasilnya kepada software yang meminta pencarian DNS tersebut.

Sebagai bagian akhir dari kerumitan ini, beberapa aplikasi seperti web browser juga memiliki DNS cache mereka sendiri, tujuannya adalah untuk mengurangi penggunaan referensi DNS resolver, yang akan meningkatkan kesulitan untuk melakukan debug DNS, yang menimbulkan kerancuan data yang lebih akurat. Cache seperti ini umumnya memiliki masa yang singkat dalam hitungan 1 menit.

Nama Domain yang Diinternasionalkan

Nama domain harus menggunakan satu sub-kumpulan dari karakter ASCII, hal ini mencegah beberapa bahasa untuk menggunakan nama maupun kata lokal mereka. ICANN telah menyetujui Punycode yang berbasiskan sistem IDNA, yang memetakan string Unicode ke karakter set yang valid untuk DNS, sebagai bentuk penyelesaian untuk masalah ini, dan beberapa registries sudah mengadopsi metode IDNS ini.

Perangkat Lunak DNS

Beberapa jenis perangakat lunak DNS menerapkan metode DNS, beberapa diantaranya:

Utiliti berorientasi DNS termasuk:

  • dig (the domain information groper)

Pendaftar (registrant)

Tidak satupun individu di dunia yang "memiliki" nama domain kecuali Network Information Centre (NIC), atau pendaftar nama domain (domain name registry). Sebagian besar dari NIC di dunia menerima biaya tahunan dari para pengguna legal dengan tujuan bagi si pengguna legal menggunakan nama domain tersebut. Jadi sejenis perjanjian sewa-menyewa terjadi, bergantung kepada syarat dan ketentuan pendaftar. Bergantung kepada beberpa peraturan penamaan dari para pendaftar, pengguna legal dikenal sebagai "pendaftar" (registrants) atau sebagai "pemegang domain" (domain holders)

ICANN memegang daftar lengkap untuk pendaftar domain di seluruh dunia. Siapapun dapat menemukan pengguna legal dari sebuah domain dengan mencari melalui basis data WHOIS yang disimpan oleh beberpa pendaftar domain.

Di (lebih kurang) 240 country code top-level domains (ccTLDs), pendaftar domain memegang sebuah acuan WHOIS (pendaftar dan nama server). Contohnya, IDNIC, NIC Indonesia, memegang informasi otorisatif WHOIS untuk nama domain .ID.

Namun, beberapa pendaftar domain, seperti VeriSign, menggunakan model pendaftar-pengguna. Untuk nama domain .COM dan .NET, pendaftar domain, VeriSign memegang informasi dasar WHOIS )pemegang domain dan server nama). Siapapun dapat mencari detil WHOIS (Pemegang domain, server nama, tanggal berlaku, dan lain sebagainya) melalui pendaftar.

Sejak sekitar 2001, kebanyakan pendaftar gTLD (.ORG, .BIZ, .INFO) telah mengadopsi metode penfatar "tebal", menyimpan otoritatif WHOIS di beberapa pendaftar dan bukan pendaftar itu saja.

Tidak ada komentar:

Posting Komentar