DNS (Domain Name System) — Web Fundamentals

DNS (Domain Name System) adalah "buku telepon" internet. Ia menerjemahkan nama domain yang mudah diingat manusia (seperti google.com) menjadi alamat IP yang…

DNS (Domain Name System) adalah sistem yang menerjemahkan nama domain, misalnya belajarweb.dev, jadi alamat IP, misalnya 203.0.113.10. Manusia gampang mengingat nama, sedangkan komputer butuh alamat IP untuk mengirim paket. Mirip daftar kontak di HP: kamu cari namanya, HP yang tahu nomornya.

🧪 Tebakan cepat: kamu membuka website yang sama dua kali dalam semenit. Apa DNS ditanya lagi dari awal? Tebak dulu, jawabannya ada di bagian "Dari nama ke alamat IP".

Dari nama ke alamat IP

Ini yang terjadi waktu browser mencari IP belajarweb.dev untuk pertama kali:

Cari: belajarweb.dev

1. Cache browser      belum ada
2. Cache OS           belum ada
3. Resolver           "aku carikan"
     Root server      "tanya server .dev"
     Server TLD .dev  "tanya ns1.belajarweb.dev"
4. Authoritative      "belajarweb.dev = 203.0.113.10"

Hasil: 203.0.113.10, disimpan di cache

Jadi urutan besarnya: cache browser, cache OS, resolver, lalu authoritative server. Root dan server TLD ditanya oleh resolver di tengah jalan. Jawaban yang ketemu disimpan di cache, jadi kunjungan berikutnya langsung dijawab cache browser. Itu jawaban tebakannya: gak perlu bertanya dari awal.

Alamat IPv4 dan IPv6

Alamat IPv4 terdiri dari empat angka yang dipisah titik, misalnya 192.168.1.1. Tiap angka disebut oktet, nilainya dari 0 sampai 255. Jadi IPv4 selalu punya 4 oktet. Jumlah alamat IPv4 cuma sekitar 4,3 miliar dan sudah gak cukup, makanya ada IPv6: 8 kelompok angka heksadesimal yang dipisah titik dua, misalnya 2001:db8:0:0:0:0:0:1, yang boleh disingkat jadi 2001:db8::1.

Record dan TTL

Data sebuah domain disimpan sebagai record. Empat yang paling sering dipakai:

Record Isinya Contoh
A alamat IPv4 belajarweb.dev → 203.0.113.10
AAAA alamat IPv6 belajarweb.dev → 2001:db8::10
CNAME nama lain (alias) www.belajarweb.dev → belajarweb.dev
MX server email belajarweb.dev → mail.belajarweb.dev

Tiap record punya TTL (time to live): berapa detik jawabannya boleh disimpan di cache. TTL 300 artinya 5 menit. Setelah itu cache membuang jawabannya, dan pencarian berikutnya bertanya lagi.

⚠️ Jebakan yang sering ketemu

TL;DR: DNS menerjemahkan nama domain jadi alamat IP. Urutan pencariannya: cache browser, cache OS, resolver, lalu authoritative server, dengan root dan server TLD ditanya resolver di tengah jalan. Jawabannya disimpan di cache selama TTL. IPv4 punya 4 oktet, misalnya 192.168.1.1. Record A menunjuk ke IPv4, AAAA ke IPv6, CNAME ke nama lain, MX ke server email.

Yang akan kamu pelajari