Belajar DNS - Primary & Secondary Server (Master-Slave)
Episode 9 of 23

Belajar DNS - Primary & Secondary Server (Master-Slave)

Episode ini membahas konsep primary dan secondary server DNS: SOA serial sebagai penanda versi zone, alur NOTIFY hingga AXFR dan IXFR, serta implementasinya di PowerDNS dengan primary=yes, allow-axfr-ips, also-notify, dan pembuatan secondary zone.

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

Pendahuluan

Zone yang hanya dijawab satu server adalah risiko besar: jika server mati, seluruh nama dalam zone ikut tidak terurai. Solusinya adalah redundansi dengan secondary servers — satu primary menjadi sumber data, beberapa secondary menyimpan salinannya dan ikut menjawab query.

Episode 9 membahas konsep primary-secondary secara menyeluruh: peran SOA serial sebagai penanda versi, alur NOTIFY menuju AXFR/IXFR, dan implementasi lengkapnya di PowerDNS Authoritative. Di PowerDNS versi 5.x, istilah master/slave digantikan oleh primary/secondary, meskipun opsi lama masih dikenali.

Konsep Primary-Secondary

SOA Serial sebagai Penanda Versi

Setiap perubahan pada zone menaikkan serial di record SOA. Secondary membandingkan serial yang dimilikinya dengan serial di primary: jika serial primary lebih besar, zone secondary sudah usang dan harus diperbarui.

Bandingkan serial antar server
dig @192.0.2.10 example.com SOA +short
dig @192.0.2.20 example.com SOA +short

Jika dua perintah di atas menghasilkan serial yang berbeda, kedua server belum sinkron. dig +nssearch example.com adalah cara cepat melihat serial semua server sekaligus — alat yang sudah kita kenal di episode 8.

Alur NOTIFY hingga Transfer

Sinkronisasi tidak menunggu refresh dari secondary. Ketika primary berubah, dia mengirim NOTIFY ke secondary. Secondary lalu membandingkan serial, dan jika berbeda melakukan AXFR (transfer penuh) atau IXFR (transfer inkremental).

Alur sinkronisasi zone
primary ubah zone -> serial naik
primary -> NOTIFY ke secondary
secondary cek SOA primary
secondary -> AXFR/IXFR ambil salinan baru

Konfigurasi Primary di PowerDNS

pdns.conf untuk Primary

Pada server primary, aktifkan mode primary dan izinkan IP secondary melakukan AXFR:

pdns.conf sisi primary
primary=yes
allow-axfr-ips=192.0.2.20/32
also-notify=192.0.2.20

primary=yes menjadikan server ini sumber otoritas. allow-axfr-ips memberi hak transfer zone. also-notify membuat server ini mengirim NOTIFY ke IP tersebut setiap kali serial berubah.

Membuat Zone Primary

Di PowerDNS 5.x, zone primary dibuat dengan perintah eksplisit:

Buat primary zone
pdnsutil create-primary-zone example.com ns1.example.com ns2.example.com
pdnsutil add-record example.com www A 192.0.2.30
pdnsutil rectify-zone example.com

pdnsutil rectify-zone memperbaiki record yang bersifat derivatif seperti NS dan DS agar konsisten — wajib dijalankan sebelum zone dianggap siap.

Konfigurasi Secondary di PowerDNS

pdns.conf dan Pembuatan Zone

Pada server secondary, aktifkan mode secondary:

pdns.conf sisi secondary
secondary=yes

Lalu daftarkan zone yang akan di-transfer beserta alamat primary-nya:

Buat secondary zone
pdnsutil create-secondary-zone example.com 192.0.2.10

pdnsutil create-secondary-zone example.com 192.0.2.10 mendaftarkan example.com sebagai zone secondary yang mengambil data dari 192.0.2.10. PowerDNS lalu menunggu NOTIFY atau interval refresh untuk memulai transfer.

Transfer Manual dan Verifikasi

Untuk menguji tanpa menunggu NOTIFY, paksa transfer:

Paksa transfer dan verifikasi
pdns_control retrieve example.com
dig @192.0.2.20 example.com SOA +short

pdns_control retrieve example.com memerintahkan secondary menarik zone sekarang juga. Jika serial sudah sama dengan primary dan jawaban memakai flag aa, kalian resmi menjalankan setup primary-secondary pertama.

Hal yang Sering Salah

Serial Tidak Naik

Jika perubahan di primary tidak pernah sampai ke secondary, penyebab paling umum: serial tidak dinaikkan. Pada mode manual, naikkan serial di SOA setiap kali zone diubah, lalu jalankan pdns_control notify example.com dari primary.

NOTIFY Tidak Sampai

Periksa tiga hal: also-notify terisi, firewall membuka port 53 dari primary ke secondary, dan IP secondary terdaftar di allow-axfr-ips. Satu saja terlewat, transfer tidak akan terjadi.

Periksa apakah secondary menerima notify
journalctl -u pdns -n 50 --no-pager | grep -i notify

Penutup

Episode 9 membuat kalian bisa membangun redundansi DNS paling dasar: satu primary sumber kebenaran, satu secondary yang selalu sinkron lewat NOTIFY dan transfer, dan kedua server menjawab query klien.

Inti yang harus dibawa pulang:

  • SOA serial adalah penanda versi zone yang menggerakkan seluruh sinkronisasi.
  • NOTIFY mempercepat deteksi perubahan; AXFR/IXFR membawa data zone ke secondary.
  • Di sisi primary: primary=yes, allow-axfr-ips, dan also-notify.
  • Di sisi secondary: secondary=yes dan pdnsutil create-secondary-zone.
  • pdns_control retrieve dan dig +nssearch adalah alat verifikasi sinkronisasi.
  • Serial yang tidak naik adalah penyebab nomor satu transfer tidak pernah terjadi.

Di episode 10 selanjutnya kita akan membahas zone transfer mendalam (AXFR dan IXFR) — perbedaan transfer penuh versus inkremental, pengamanan transfer dengan TSIG, serta fitur lanjutan seperti ixfrdist dan mode autosecondary.