Sistem Penamaan Domain ; SNR (bahasa Inggris: (Domain Name
System; DNS)
adalah sebuah sistem yang menyimpan informasi tentang nama host ataupun nama domaindalam bentuk basis data tersebar (distributed
database) di dalam jaringan komputer, misalkan: Internet. DNS menyediakan alamat IP untuk setiap nama
host dan mendata setiapserver transmisi surat (mail exchange
server) yang menerima surel (email) untuk setiap
domain. Menurut browser Google Chrome, DNS adalah layanan jaringan yang
menerjemahkan nama situs web menjadi alamat internet.
DNS menyediakan pelayanan yang cukup penting
untuk Internet, ketika 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 surel. Analogi yang umum
digunakan untuk menjelaskan fungsinya adalah DNS bisa dianggap seperti buku
telepon internet dimana saat pengguna mengetikkan www.indosat.net.id di
peramban web maka pengguna akan diarahkan ke alamat IP 124.81.92.144 (IPv4) dan
2001:e00:d:10:3:140::83 (IPv6).
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, seluruh 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 dengan baik secara baku maupun melalui
cara konfigurasi, dapat melihat Hosts file untuk menyamakan
sebuah nama host menjadi sebuah alamat IP sebelum melakukan
pencarian via DNS). Namun, sistem tersebut di atas 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.
Teori bekerja DNS
Para Pemain Inti
Pengelola dari sistem DNS terdiri dari tiga
komponen:
§ DNS resolver, sebuah program
klien yang berjalan di komputer pengguna, yang membuat permintaan DNS dari
program aplikasi.
§ recursive DNS server, yang melakukan
pencarian melalui DNS sebagai tanggapan permintaan dari resolver, dan mengembalikan
jawaban kepada para resolver tersebut;
dan ...
§ 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)
§
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 praktiknya, 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 praktik, 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 hierarki dari DNS servers. Setiap domain atau
subdomain memiliki satu atau lebih authoritative
DNS Servers (server DNS
otorisatif) yang mempublikasikan informasi 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 keDNS 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 dariwww.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 dariwww.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.
Pengertian pendaftaran domain dan glue records
Membaca contoh di atas, 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 jawaban
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.
DNS dalam praktik
Ketika sebuah aplikasi (misalkan web
broswer), hendak mencari alamat IP dari sebuah nama domain, aplikasi tersebut
tidak harus mengikuti seluruh langkah yang disebutkan dalam teori di atas. Kita akan melihat dulu konsep caching, lalu mengartikan
operasi DNS di "dunia nyata".
Caching dan masa hidup (caching and time to live)
Karena jumlah permintaan yang besar dari
sistem seperti DNS, perancang DNS menginginkan penyediaan mekanisme yang bisa
mengurangi beban dari masing-masing server DNS. Rencana mekanisnya menyarankan
bahwa ketika sebuah DNS
resolver (klien) menerima
sebuah jawaban DNS, informasi tersebut akan di cache untuk jangka waktu
tertentu. Sebuah nilai (yang di-set oleh administrator dari server DNS yang
memberikan jawaban) menyebutnya sebagai time
to live (masa hidup), atau TTL yang mendefinisikan
periode tersebut. Saat jawaban masuk ke dalam cache, resolver akan mengacu kepada jawaban yang
disimpan di cache tersebut; hanya ketika TTL usai (atau
saat administrator mengosongkan jawaban dari memori resolver secara manual) maka resolver menghubungi server DNS untuk informasi
yang sama.
Waktu propagasi (propagation time)
Satu akibat penting dari arsitektur tersebar
dan cache adalah perubahan kepada suatu DNS
terkadang efektif secara langsung dalam skala besar/global. Contoh berikut
mungkin akan menjelaskannya: Jika seorang administrator telah mengatur TTL selama 6 jam untuk
host www.wikipedia.org, kemudian mengganti alamat IP dariwww.wikipedia.org pada pk 12:01,
administrator harus mempertimbangkan bahwa ada (paling tidak) satu individu
yang menyimpan cache jawaban dengan nilai lama pada pk
12:00 yang tidak akan menghubungi server DNS sampai dengan pk 18:00. Periode
antara pk 12:00 dan pk 18:00 dalam contoh ini disebut sebagai waktu propagasi (propagation time), yang bisa
didefiniskan sebagai periode waktu yang berawal antara saat terjadi perubahan
dari data DNS, dan berakhir sesudah waktu maksimum yang telah ditentukan olehTTL berlalu. Ini akan
mengarahkan kepada pertimbangan logis yang penting ketika membuat perubahan
kepada DNS: tidak semua akan
melihat hal yang sama seperti yang Anda lihat. RFC1537 dapat membantu
penjelasan ini.
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 di atas) 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. Namun jika administrator sistem / pengguna telah
mengkonfigurasi sistem untuk menggunakan server DNS selain yang diberikan
secara default oleh ISP misalnya seperti Google Public DNS ataupun OpenDNS[1], maka DNS resolver akan mengacu ke DNS server yang sudah
ditentukan. 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 referensiDNS 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.
Penerapan DNS lainnya
Sistem yang
dijabarkan di atas memberikan skenario yang disederhanakan. DNS meliputi beberapa
fungsi lainnya:
§ Nama host dan alamat
IP tidak berarti terhubung secara satu-banding-satu. Banyak nama host yang
diwakili melalui alamat IP tunggal: gabungan dengan pengasuhan maya(virtual hosting), hal ini
memungkinkan satu komputer untuk malayani beberapa situs web. Selain itu,
sebuah nama host dapat mewakili beberapa alamat IP: ini akan membantu toleransi
kesalahan (fault tolerance dan penyebaran beban
(load distribution), juga membantu suatu situs berpindah dari satu
lokasi fisik ke lokasi fisik lainnya secara mudah.
§ Ada cukup banyak
kegunaan DNS selain menerjemahkan nama ke alamat IP. Contoh:, agen pemindahan
surat Mail
transfer agents(MTA) menggunakan DNS untuk
mencari tujuan pengiriman E-mail untuk alamat
tertentu. Domain yang menginformasikan pemetaan exchange disediakan melalui rekod MX (MX record) yang meningkatkan
lapisan tambahan untuk toleransi kesalahan dan penyebaran beban selain dari
fungsi pemetaan nama ke alamat IP.
§ Kerangka Peraturan
Pengiriman (Sender Policy
Framework)
secara kontroversi menggunakan keuntungan jenis rekod DNS, dikenal sebagai
rekod TXT.
§ Menyediakan keluwesan untuk kegagalan komputer, beberapa server DNS
memberikan perlindungan untuk setiap domain. Tepatnya, tigabelas server akar (root
servers) digunakan oleh seluruh dunia. Program DNS maupun sistem operasi
memiliki alamat IP dari seluruh server ini. Amerika Serikat memiliki, secara
angka, semua kecuali tiga dari server akar tersebut. Namun, dikarenakan banyak
server akar menerapkan anycast, yang memungkinkan beberapa komputer yang berbeda dapat berbagi alamat
IP yang sama untuk mengirimkan satu jenis services melalui area geografis yang luas,
banyak server yang secara fisik (bukan sekedar angka) terletak di luar Amerika
Serikat.
DNS
menggunakan TCP dan UDP di port komputer 53 untuk melayani permintaan DNS. Nyaris semua permintaan DNS berisi
permintaan UDP tunggal dari klien yang dikuti oleh jawaban UDP tunggal dari
server. Umumnya
TCP ikut terlibat hanya ketika ukuran data jawaban melebihi 512 byte, atau
untuk pertukaaran zona DNS zone transfer
Jenis-jenis catatan DNS
Beberapa kelompok penting dari data yang
disimpan di dalam DNS adalah sebagai berikut:
§ AAAA record atau catatan alamat IPv6 memetakan sebuah nama host ke alamat
IP 128-bit (untuk IPv6).
§ CNAME record atau catatan nama kanonik membuat alias untuk nama domain.
Domain yang di-alias-kan memiliki seluruh subdomain dan rekod DNS seperti
aslinya.
§ [MX record]]' atau catatan pertukaran surat memetakan sebuah nama
domain ke dalam daftar mail exchange server untuk domain
tersebut.
§ PTR record atau catatan penunjuk memetakan sebuah nama host ke nama
kanonik untuk host tersebut. Pembuatan rekod PTR untuk sebuah nama host di
dalam domainin-addr.arpa yang mewakili sebuah
alamat IP menerapkan pencarian balik DNS (reverse DNS lookup) untuk alamat
tersebut. Contohnya (saat penulisan / penerjemahan artikel ini), www.icann.net memiliki alamat IP
192.0.34.164, tetapi sebuah rekod PTR memetakan ,,164.34.0.192.in-addr.arpa ke
nama kanoniknya:referrals.icann.org.
§ NS record atau catatan server nama memetakan sebuah nama domain ke dalam
satu daftar dari server DNS untuk domain tersebut. Pewakilan bergantung kepada
rekod NS.
§ SOA record atau catatan otoritas awal (Start of Authority) mengacu
server DNS yang mengediakan otorisasi informasi tentang sebuah domain Internet.
§ Catatan TXT mengijinkan administrator untuk
memasukan data acak ke dalam catatan DNS; catatan ini juga digunakan di
spesifikasi Sender Policy
Framework.
Jenis catatan lainnya semata-mata untuk
penyediaan informasi (contohnya, catatan LOC memberikan letak lokasi fisik dari sebuah host, atau data
ujicoba (misalkan, catatanWKS memberikan
sebuah daftar dari server yang memberikan servis yang dikenal (well-known
service) seperti HTTP atau POP3 untuk sebuah domain.
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
§ MaraDNS
§ Unbound
§ PowerDNS
Bersumber Dari
: www.Wikipedian.com
Belum ada komentar untuk "Sistem Penamaan Domain (DNS)"
Tambahkan komentar anda :