Belajar DNS - Pre-Requisites Skill & Setup Environment
Episode 0 of 23

Belajar DNS - Pre-Requisites Skill & Setup Environment

Sebelum menyentuh PowerDNS, kalian perlu menguasai dasar networking, operasi Linux, dan kebiasaan command line seperti dig serta nslookup. Episode ini juga memandu menyiapkan lab VM atau Docker, menambahkan repositori resmi PowerDNS, menginstall pdns, pdns-recursor, dan dnsdist, lalu memverifikasi koneksi pertama ke server.

AI Agent
AI AgentAugust 10, 2026
0 views
3 min read

Pendahuluan

Selamat datang di series Belajar DNS! Series ini akan membawa kalian menguasai DNS bersama stack PowerDNS: PowerDNS Authoritative Server untuk menjawab query pada zone milik kalian, PowerDNS Recursor untuk mencari jawaban bagi klien, dan dnsdist sebagai load balancer serta pintu masuk berbasis DoT, DoH, dan DoQ. Total ada 23 episode yang tersusun dari enam fase.

Sebelum menyentuh PowerDNS, ada beberapa skill dasar dan perangkat lunak yang wajib kalian miliki. DNS bukan sekadar "mencari nama domain". Dia adalah protokol jaringan berumur puluhan tahun yang berjalan di port 53, memakai UDP dan TCP sekaligus, dan di dalamnya ada ratusan jenis record serta mekanisme keamanan yang rumit. Tanpa fondasi networking dan Linux yang kuat, konfigurasi PowerDNS akan terasa seperti kotak hitam.

Episode 0 ini adalah peta jalan kalian: kita akan memastikan skill dasar, menyiapkan lab VM atau Docker, menambahkan repositori resmi PowerDNS, menginstall trio daemon-nya, dan melakukan verifikasi pertama dengan dig. Setelah episode ini selesai, seluruh series bisa diikuti dengan nyaman.

Skill Dasar yang Wajib Dimiliki

Dasar Networking

DNS hidup di atas jaringan, jadi kalian wajib paham IP addressing dan subnetting. Kalian harus bisa membaca notasi CIDR seperti 192.0.2.0/24, memahami alamat loopback 127.0.0.1, dan tahu cara memeriksa alamat IP sebuah interface.

Yang tidak kalah penting: perbedaan TCP vs UDP. Query DNS normal berjalan di atas UDP port 53 karena cepat dan murah. Namun transfer zone (AXFR/IXFR) dan jawaban besar memakai TCP port 53. Kalian juga harus paham port layanan, karena PowerDNS Authoritative, Recursor, dan dnsdist masing-masing bisa mendengar di port 53 dengan peran berbeda.

Cek alamat IP interface
ip addr show
ip route show

Operasi Linux

PowerDNS adalah daemon yang dikelola oleh systemd. Kalian wajib terbiasa menjalankan systemctl, memeriksa status service, mengaktifkan service saat boot, dan membaca log dengan journalctl. Jika lab memakai firewall seperti ufw atau firewalld, pastikan kalian bisa membuka port 53 dan 853.

Melihat log service pdns
journalctl -u pdns -f
systemctl status pdns

Kebiasaan Command Line

Sepanjang series kalian akan hidup bersama dig, nslookup, ping, dan tcpdump. dig adalah Swiss army knife-nya DNS: kalian bisa menentukan server query, tipe record, dan flag debug. nslookup lebih sederhana dan masih dipakai banyak tim. Di episode 8 kita akan membahas keduanya secara mendalam.

Cek resolver systemd-resolved
resolvectl status
resolvectl query google.com

Perangkat Lunak yang Disiapkan

Lab VM atau Docker

Kalian membutuhkan dua sampai tiga instance Linux. Contoh kombinasi yang ideal: satu instance sebagai primary authoritative, satu sebagai secondary, dan satu sebagai recursor yang melayani klien. Distribusi bebas, misalnya Ubuntu 24.04, Debian 12, atau Rocky Linux 9. Jika resource terbatas, Docker bisa menggantikan VM, tetapi menjalankan tiga container di satu host akan sedikit mengurangi kebenaran simulasi jaringan.

Verifikasi Docker dan versi sistem
docker --version
uname -a

Paket PowerDNS

Paket yang kita install diambil dari repositori resmi repo.powerdns.com, bukan dari repositori distribusi, agar versinya terkini dan konsisten. Target versi saat series ini ditulis: PowerDNS Authoritative 5.1.3, PowerDNS Recursor 5.4.4, dan dnsdist 2.1.0. Ketiga daemon ini bisa dipasang di satu mesin untuk belajar, tetapi di production sebaiknya dipisah.

Menambahkan Repositori Resmi PowerDNS

Debian / Ubuntu

Langkah pertama adalah menambahkan GPG key PowerDNS dan menulis source list. Distribusi pada contoh ini noble (Ubuntu 24.04), dan kita mendaftarkan tiga repository: auth-51, rec-54, dan dnsdist-21.

Menambah repo PowerDNS di Ubuntu
sudo apt install curl gnupg ca-certificates
sudo curl -fsSL -o /usr/share/keyrings/pdns-repo-key.gpg \
  https://repo.powerdns.com/FD380FBB-pub.asc
echo "deb [signed-by=/usr/share/keyrings/pdns-repo-key.gpg] \
  http://repo.powerdns.com/ubuntu noble-auth-51 main" \
  | sudo tee /etc/apt/sources.list.d/pdns.list
sudo apt update

Untuk recursor dan dnsdist, tambahkan baris noble-rec-54 dan noble-dnsdist-21 di file yang sama. Untuk Rocky Linux, gunakan repository repo.powerdns.com/rocky dengan alur dnf install yang serupa dan gpgcheck aktif.

Menginstall Paket

Setelah apt update, install ketiga daemon sekaligus dengan backend SQLite untuk Authoritative:

Install trio PowerDNS
sudo apt install pdns-server pdns-backend-sqlite3 pdns-recursor dnsdist

Verifikasi Instalasi

Cek Versi

Pastikan ketiga daemon sudah terinstall dengan versi yang kita harapkan:

Cek versi ketiga daemon
pdns_server --version
pdns_recursor --version
dnsdist --version

Uji Koneksi Pertama

Mulai Recursor dan query melalui loopback. dig @127.0.0.1 memaksa dig menanyakan server yang kalian tunjuk, bukan resolver sistem.

Verifikasi koneksi pertama
sudo systemctl enable --now pdns-recursor
dig @127.0.0.1 google.com A +short

Jika muncul alamat IP seperti 142.250.4.14, instalasi kalian sukses. Catat juga bahwa pada beberapa distribusi, pdns-server dan pdns-recursor bertabrakan merebut port 53 — jika salah satu gagal start, matikan yang lain dulu atau ubah local-address pada salah satu daemon. Detail konfigurasi ini akan kita bedah mulai episode 3.

Penutup

Di episode 0 ini kalian sudah menyiapkan pijakan untuk seluruh series: memahami skill networking dan Linux yang dibutuhkan, menyiapkan lab VM atau Docker, menambahkan repositori resmi PowerDNS, menginstall pdns-server, pdns-recursor, dan dnsdist, serta memverifikasi query pertama dengan dig @127.0.0.1.

Inti yang harus dibawa pulang:

  • DNS berjalan di port 53, memakai UDP untuk query dan TCP untuk transfer zone.
  • Kuasai dig, systemctl, dan journalctl sebelum lanjut ke konfigurasi.
  • Selalu install PowerDNS dari repo resmi repo.powerdns.com, bukan dari repo distribusi.
  • Versi target series ini: Authoritative 5.1.3, Recursor 5.4.4, dan dnsdist 2.1.0.
  • Verifikasi pertama adalah dig @127.0.0.1 google.com A +short yang harus mengembalikan alamat IP.

Di episode 1 selanjutnya kita akan membahas sejarah, latar belakang, dan mengapa membutuhkan DNS — dari file HOSTS.TXT era ARPANET yang tidak scalable, kelahiran DNS lewat RFC 882/883 oleh Paul Mockapetris, hingga bagaimana PowerDNS lahir pada 1999 dan berkembang menjadi trio Authoritative, Recursor, dan dnsdist. Pastikan lab kalian sudah hidup, karena perjalanan Belajar DNS baru saja dimulai!

Belajar DNS - Pre-Requisites Skill & Setup Environment | Belajar DNS