# Sistem Nama Domain

**Sistem Nama Domain** (bahasa Inggeris: *Domain Name System*, dipendekkan sebagai **DNS**) merupakan sistem yang menyimpan maklumat mengenai **nam hos** dan **nama domain** dalam rangkaian seperti di Internet. Peranan paling utamanya adalah memberikan alamat IP bagi setiap nama hos, dan senarai IP (*mail exchange server*) yang menerima mel bagi setiap domain.

DNS memainkan peranan penting bagi Internet, kerana perkakasan memerlukan alamat IP untuk melaksanakan penghalaan (*routing*) namun manusia lebih menggunakan nama hos dan nama domain seperti Penentu Sumber Seragam.

Sistem ini dicipta saintis komputer dari Amerika Syarikat bernama Paul Mockapetris pada tahun 1983 dengan spesifikasi asal sistem tersebut muncul dalam permintaan komen (*Request for Comments*, RFC) 882. Pada tahun 1987, penerbitan RFC 1034 dan RFC 1035 mengemaskini spesifikasi DNS lalu menjadikan RFC 882 dan RFC 883 lapuk. Beberapa RFC terkini telah mengusulkan pelbagai sambungan kepada protokol teras.

## Bagaimana DNS berfungsi

Nama domain terdiri daripada dua atau lebih bahagian (secara teknikal *labels*) dipisahkan oleh titik. Label di sebelah kanan merupakan **domain tahap atas** (sebagai contoh, domain tahap atas untuk www.wikipedia.org adalah org). Setiap label di sebelah kiri menentukan subdivision atau **subdomain** (sebagai contoh, wikipedia.org merupakan subdomain bagi org dan www.wikipedia.org merupakan subdomain kepada wikipedia.org). Secara teori subdivision ini boleh menurun sehingga 127 aras, dan setiap label boleh mengandungi 63 huruf, selagi keseluruhan nama domain tidak melebihi 254 huruf. Tetapi secara penggunaan sesetengah mempunyai had yang kurang dari itu.

DNS mengandungi set hierarki **pelayan DNS**. Setiap domain atau subdomain mempunyai satu atau lebih **pelayan DNS sahih** ( *authoritative DNS servers* ) yang menerbitkan maklumat mengenai domain tersebut. Hierarki mengenai pelayan DNS sahih mempunyai padanan dengan hierarki domain.

Satu analogi yang sering digunakan untuk menerangkan Sistem Nama Domain adalah bahawa ia berfungsi sebagai buku telefon untuk Internet dengan menterjemahkan nama host komputer yang mesra manusia ke alamat IP. Sebagai contoh, nama domain www.example.com diterjemahkan kepada alamat dan . Bagaimanapun, tidak seperti buku telefon, DNS boleh dikemaskini dengan cepat dan ini kemas kini itu cepat diedarkan, membolehkan perubahan lokasi perkhidmatan pada rangkaian tanpa memberi kesan kepada pengguna akhir, yang terus menggunakan nama host yang sama. Pengguna mengambil kesempatan ini apabila mereka membaca Locator bermakna Sumber Seragam (URL) dan alamat e-mel tanpa perlu mengetahui bagaimana komputer sebenarnya menempatkan perkhidmatan.

Sistem Nama Domain mengagihkan tanggungjawab memberikan nama domain dan pemetaan nama-nama tersebut kepada alamat IP dengan menetapkan pelayan nama berwibawa bagi setiap domain. Pelayan nama berwibawa bertanggungjawab untuk domain tertentu, dan seterusnya boleh menetapkan nama pelayan lain yang berwibawa untuk domain sub-mereka. Mekanisme ini telah menjadikan pengagihan DNS dan toleransi kesilapan dan membantu mengelak memerlukan daftar tunggal yang perlu sentiasa dirujuk dan dikemaskini. Selain itu, tanggungjawab untuk mengekalkan dan mengemaskini rekod induk bagi domain diagih di kalangan banyak pendaftar nama domain, yang bersaing bagi, pengguna akhir, pemilik domain, perniagaan. Domain boleh dipindahkan dari pendaftar ke pendaftar pada sebarang masa.

Sistem Nama Domain juga menetapkan fungsi teknikal perkhidmatan pangkalan data ini. Ia mentakrifkan protokol DNS, spesifikasi terperinci struktur data dan pertukaran komunikasi yang digunakan bagi DNS, sebagai sebahagian daripada Suit protokol Internet.

## Struktur

### Ruang nama domain

Ruang nama domain terdiri daripada pokok nama domain. Setiap nod atau daun pada pokok itu mempunyai sifar atau lebih rekod sumber, yang menyimpan maklumat yang berkaitan dengan nama domain. Pokok terpecah pada zon, yang bermula pada zon akar. Zon DNS boleh terdiri hanya satu domain, atau mungkin terdiri daripada banyak domain dan sub-domain, bergantung kepada pihak berkuasa pentadbiran yang diwakilkan kepada pengurus.

Sistem Nama Domain Bertingkat, yang disusun kepada zon, setiap satu dilayan oleh pelayan nama.
Tanggungjawab pentadbiran ke atas mana-mana zon boleh dibahagikan dengan mewujudkan zon tambahan. Pihak berkuasa dikatakan *mewakilkan* bagi sebahagian ruang lama, biasanya dalam bentuk sub-domain,pada pelayan nama dan entiti pentadbiran yang lain. Zon lama terhenti menjadi pihak berwibawa untuk zon baru.

#### Dicadangkan bahagian bawah dihapuskan jika tidak dialih bahasa dalam masa terdekat.

Nama sintaks Domain
Penerangan yang pasti kaedah-kaedah untuk membentuk nama domain muncul dalam RFC 1035, RFC 1123 dan RFC 2181. Nama domain terdiri daripada satu atau lebih bahagian, ditakrifkan sebagai label, yang konvensional berkaskad, dan dihalang oleh titik, seperti example.com.

Label yang betul-paling menyampaikan domain top-level, sebagai contoh, www.example.com nama domain milik com domain top-level. Hierarki domain yang turun dari kanan ke kiri; setiap label di sebelah kiri menyatakan dipecah bahagi, atau subdomain domain ke kanan. Sebagai contoh: contoh label menyatakan subdomain domain com dan www adalah sub domain dari example.com. Ini pokok subdivisi mungkin mempunyai sehingga 127 tahap. Setiap label boleh mengandungi sehingga 63 aksara. Nama domain yang sepenuhnya tidak boleh melebihi panjang sebanyak 253 aksara dalam penentuan luar label bertitik- dalam perwakilan perduaan dalaman DNS panjang maksimum memerlukan 255 octet simpanan. [1] Pada amalannya, beberapa domain pendaftaran mungkin mempunyai had yang pendek. Nama DNS teknikal mungkin terdiri daripada representable apa-apa sifat di dalam perlapanan. Walau bagaimanapun, pembentukan yang dibenarkan nama domain dalam zon akar DNS, dan yang paling domain sub lain, menggunakan format pilihan dan set aksara. Watak-watak yang dibenarkan pada label adalah subset set aksara ASCII, dan termasuklah watak-watak melalui z, A hingga Z, digit 0 hingga 9, dan sempang. Kaedah ini dikenali sebagai kaedah LDH (huruf, angka, sempang). Nama domain ditafsirkan dalam cara kes-bebas. Label tidak boleh memulakan atau menamatkan dengan sempang. Satu nama host adalah nama domain yang mempunyai sekurang-kurangnya satu alamat IP yang berkaitan. Sebagai contoh, nama domain www.example.com dan example.com juga nama host, manakala domain com tidak.

**Pelayan nama jadisemula dan caching**

Pada dasarnya, pelayan nama berwibawa adalah mencukupi untuk operasi Internet. Walau bagaimanapun, dengan nama pelayan operasi hanya berwibawa, setiap query DNS mesti bermula dengan pertanyaan rekursif pada zon akar Sistem Nama Domain dan setiap sistem pengguna perlu melaksanakan perisian resolver mampu operasi rekursi.

Untuk meningkatkan kecekapan, mengurangkan trafik DNS di seluruh Internet, dan meningkatkan prestasi dalam aplikasi pengguna akhir, Sistem Nama Domain menyokong pelayan cache DNS yang kedai keputusan query DNS untuk satu tempoh masa yang ditentukan dalam konfigurasi (masa-untuk-hidup) rekod nama domain dalam soalan. Biasanya, caching DNS server, juga dikenali sebagai cache DNS, juga melaksanakan algoritma perlu rekursi untuk menyelesaikan nama yang diberikan bermula dengan akar DNS melalui pelayan nama yang berwibawa domain disoal. Dengan fungsi ini dilaksanakan di pelayan nama, aplikasi pengguna meningkatkan kecekapan dalam reka bentuk dan operasi.

Gabungan caching DNS dan fungsi rekursi di pelayan nama tidak mandatori; fungsi boleh dilaksanakan secara bebas di pelayan untuk tujuan khas.

Pembekal perkhidmatan internet biasanya menyediakan pelayan nama rekursi dan caching untuk pelanggan mereka. Di samping itu, banyak router rangkaian rumah melaksanakan cache dan recursors yang DNS untuk meningkatkan kecekapan dalam rangkaian tempatan.

**DNS resolver**
Lihat juga: resolv.conf

Sebelah client-DNS dipanggil DNS resolver. Ia bertanggungjawab untuk memulakan dan susunan pertanyaan yang akhirnya membawa kepada resolusi yang penuh (terjemahan) sumber diminta, contohnya, terjemahan nama domain kepada alamat IP.

Query DNS boleh menjadi sama ada pertanyaan bukan rekursi atau pertanyaan rekursi:

```
   Satu pertanyaan yang bukan-rekursi adalah salah satu di mana pelayan DNS menyediakan rekod untuk domain yang mana ia adalah berwibawa itu sendiri, atau ia memberikan hasil yang sebahagian tanpa menyoal pelayan lain.
   Pertanyaan rekursi adalah salah satu yang pelayan DNS sepenuhnya akan menjawab pertanyaan (atau memberikan ralat) dengan pertanyaan pelayan nama lain jika diperlukan. Pelayan DNS tidak diperlukan untuk menyokong pertanyaan rekursif.
```

Resolver, atau lain pelayan DNS bertindak Recursively bagi pihak resolver itu, perundingan penggunaan perkhidmatan rekursi menggunakan bit dalam tajuk yang dicari.

Menyelesaikan biasanya melibatkan iterating melalui beberapa pelayan nama untuk mencari maklumat yang diperlukan. Walau bagaimanapun, sesetengah resolver berfungsi lebih hanya dengan berkomunikasi hanya dengan satu pelayan nama. Ini resolver mudah (yang dipanggil "resolver stub") bergantung kepada pelayan nama rekursi untuk melaksanakan kerja-kerja mencari maklumat untuk mereka.

**Nama domain diantarabangsakan**
Ciri-ciri yang dibenarkan set DNS menghalang perwakilan nama dan kata-kata banyak bahasa dalam abjad skrip asli mereka. ICANN telah meluluskan Nama-nama Domain pengantarabangsaan dalam Applications (IDNA) sistem, yang peta rentetan Unicode ke dalam set aksara yang sah DNS menggunakan Punycode. Pada tahun 2009, ICANN meluluskan pemasangan IDN kod negara domain peringkat atas. Di samping itu, pejabat pendaftaran banyak nama-nama teratas yang sedia ada domain tahap (TLD) telah menerima pakai IDNA.

**Nama pelayan**
Rencana utama: Nameserver

Sistem Nama Domain dikekalkan oleh sistem pangkalan data teragih, yang menggunakan model client-server. Nod pangkalan data ini adalah nama pelayan. Setiap domain mempunyai sekurang-kurangnya satu pelayan DNS sahih yang menerbitkan maklumat mengenai domain tersebut dan pelayan nama mana-mana domain yang lebih rendah daripada ia. Atas hierarki disampaikan oleh mengacu pada pelayan nama akar, pelayan untuk query apabila melihat (menyelesaikan) TLD.

**Nama pelayan berwibawa**

Pelayan nama berwibawa adalah nama pelayan yang memberikan jawapan yang telah dikonfigurasikan oleh sumber asal, sebagai contoh, pentadbir domain atau oleh kaedah dinamik DNS, berbeza dengan jawapan yang diperolehi melalui pertanyaan biasa DNS untuk pelayan nama lain. Pelayan nama berwibawa sahaja hanya mengembalikan jawapan kepada pertanyaan mengenai nama domain yang telah dikhususkan dikonfigurasi oleh pentadbir.

Pelayan nama berwibawa sama ada boleh menjadi pelayan induk atau pelayan hamba. Pelayan induk adalah pelayan yang menyimpan asal (master) salinan semua rekod zon. Pelayan hamba menggunakan satu mekanisme automatik mengemaskini DNS protokol komunikasi dengan tuannya untuk mengekalkan salinan serupa rekod master.

Setiap zon DNS mesti diberikan satu set pelayan nama berwibawa yang dipasang di dalam rekod NS di zon induk, dan perlu dipasang (untuk menjadi rekod yang sahih) sebagai rekod rujukan sendiri NS pada pelayan nama berwibawa.