Cara Kerja DNS: Dari Mengetik URL Sampai Mendapat Alamat IP

Penjelasan langkah demi langkah resolusi DNS: stub resolver, recursive resolver, root, TLD, authoritative server, caching TTL, dan cara memeriksanya dengan dig.

DNS (Domain Name System) menerjemahkan nama domain seperti harau.dev menjadi alamat IP yang dipakai komputer untuk terhubung. Saat Anda mengetik URL, perangkat Anda bertanya ke recursive resolver. Jika jawabannya belum ada di cache, resolver bertanya berurutan ke root server, lalu ke server TLD (.dev), lalu ke authoritative name server milik domain tersebut. Server terakhir inilah yang memberikan alamat IP. Semua jawaban disimpan di cache sesuai TTL, sehingga permintaan berikutnya jauh lebih cepat.

Resolusi DNS lengkap (cache kosong). Langkah 2–7 hanya terjadi di recursive resolver.

Para pemain dalam resolusi DNS

  • Stub resolver: komponen kecil di sistem operasi Anda. Ia tidak mencari sendiri, hanya meneruskan pertanyaan ke recursive resolver yang dikonfigurasi (dari DHCP router, atau manual seperti 1.1.1.1 / 8.8.8.8).
  • Recursive resolver: “detektif” yang melakukan pencarian sebenarnya atas nama Anda, lalu menyimpan hasilnya di cache.
  • Root server: puncak hierarki DNS. Ada 13 identitas root server (a.root-servers.net sampai m.root-servers.net) yang dioperasikan 12 organisasi independen. Secara total, identitas ini dilayani lebih dari seribu instance di seluruh dunia lewat anycast.
  • Server TLD: mengelola satu top-level domain seperti .com, .id, atau .dev. Server ini tahu name server mana yang bertanggung jawab atas setiap domain di bawahnya.
  • Authoritative name server: sumber jawaban final untuk sebuah domain. Server ini biasanya disediakan registrar atau penyedia DNS seperti Cloudflare.

Langkah demi langkah

  1. Browser memeriksa cache-nya sendiri, lalu cache OS. Jika belum ada, stub resolver mengirim pertanyaan “harau.dev IP-nya berapa?” ke recursive resolver.
  2. Resolver (dengan cache kosong) bertanya ke salah satu root server.
  3. Root server tidak tahu jawabannya, tetapi membalas dengan rujukan (referral): “tanyakan ke server TLD .dev berikut”.
  4. Resolver bertanya ke server TLD .dev.
  5. Server TLD merujuk ke name server authoritative untuk harau.dev (record NS).
  6. Resolver bertanya ke authoritative name server.
  7. Authoritative server menjawab dengan record A (IPv4) dan/atau AAAA (IPv6).
  8. Resolver menyimpan jawaban di cache dan mengembalikannya ke perangkat Anda. Browser kemudian membuka koneksi TCP/TLS ke alamat IP tersebut.

Caching dan TTL: kenapa DNS terasa instan

Setiap record DNS punya TTL (time to live) dalam detik. Selama TTL belum habis, resolver menjawab langsung dari cache tanpa mengulang langkah 2–7. Record NS untuk TLD populer hampir selalu sudah ada di cache resolver besar, sehingga pencarian nyata sering hanya butuh satu atau dua lompatan.

TTL juga menjelaskan kenapa perubahan DNS “butuh waktu untuk propagasi”. Sebenarnya tidak ada yang dipropagasikan; resolver di seluruh dunia hanya menunggu cache lama mereka kedaluwarsa.

Jenis record DNS yang paling sering dipakai

Record Fungsi Contoh nilai
A Nama → alamat IPv4 104.21.x.x
AAAA Nama → alamat IPv6 2606:4700::…
CNAME Alias ke nama lain www → harau.dev
MX Server penerima email untuk domain 10 mail.example.com
TXT Teks bebas: verifikasi domain, SPF, DKIM v=spf1 include:… ~all
NS Name server authoritative untuk domain/zona ns1.example.com

Melihatnya sendiri dengan dig

Perintah dig menampilkan jawaban DNS secara mentah. Opsi +trace membuat dig melakukan resolusi iteratif sendiri dari root, persis seperti diagram di atas:

# Jawaban singkat
dig +short harau.dev A

# Telusuri dari root → TLD → authoritative
dig +trace harau.dev

# Bertanya langsung ke resolver tertentu
dig @1.1.1.1 harau.dev AAAA

Kolom angka di setiap baris jawaban dig adalah sisa TTL dalam detik. Jalankan dua kali ke resolver yang sama, dan Anda akan melihat angkanya berkurang karena jawaban diambil dari cache.

Ringkasan

  • DNS adalah sistem hierarkis: root → TLD → authoritative.
  • Recursive resolver melakukan kerja berat dan menyimpan cache, sedangkan server lain hanya memberi rujukan.
  • TTL mengatur berapa lama jawaban disimpan, sekaligus menjelaskan “waktu propagasi”.
  • Gunakan dig +trace untuk men-debug masalah DNS langkah demi langkah.
  • #dns
  • #networking
  • #internet