Episode ini membahas validasi DNSSEC di sisi Recursor: konfigurasi dnssec process dengan bootstrap trust anchors dari IANA, pengujian memakai dig +dnssec dan flag AD, manajemen trust anchor, penanganan delta root KSK, serta perilaku terhadap zone unsigned dan signature yang rusak.

Di episode 13, zone kalian ditandatangani. Sekarang giliran sisi penerima: Recursor harus memverifikasi bahwa tanda tangan itu valid. Inilah yang membedakan sekadar "berdoa jawaban benar" dengan "membuktikan jawaban benar secara kriptografi".
Episode 14 membahas validasi DNSSEC di Recursor: mengaktifkannya, memahami trust anchors dari IANA, menguji dengan dig +dnssec, membaca flag AD, dan menangani situasi sulit seperti zone unsigned atau signature yang rusak.
Recursor memvalidasi ketika mode DNSSEC diaktifkan:
dnssec:
process: trueSetelah restart, Recursor memverifikasi setiap jawaban yang melewatinya. Pengaturan dnssec.process: true adalah langkah tunggal yang mengubah recursor biasa menjadi validator.
Untuk memverifikasi, Recursor butuh trust anchor — titik awal kepercayaan. Recursor mengambilnya dari IANA (https://data.iana.org/root-anchors/) saat instalasi pertama:
rec_control get dnssec
rec_control get root-key-sentinel
journalctl -u pdns-recursor -n 20 --no-pager | grep -i anchorLog menampilkan proses bootstrap: Recursor mengambil XML tanda tangan dari IANA, memverifikasinya, dan memuat KSK root. Setelah itu rantai kepercayaan terbentuk dari root sampai ke setiap zone.
Cara paling cepat melihat validasi bekerja adalah flag AD (Authenticated Data):
dig @127.0.0.1 example.com A +dnssec +noall +comments
dig @127.0.0.1 cloudflare.com A +dnssec +noall +commentsPerhatikan flag pada output: jika validasi berhasil, muncul flag ad. Untuk zone yang ditandatangani, dig +dnssec juga menampilkan record RRSIG. Ketika kalian melihat ad, jawaban itu telah diverifikasi rantai tanda tangannya dari trust anchor sampai record.
Jawaban yang gagal validasi ditandai dengan status: SERVFAIL, bukan jawaban palsu:
dig @127.0.0.1 broken-dnssec.example A +noall +commentsRecursor menolak memberikan data yang tidak bisa diverifikasi. Ini perilaku yang benar: lebih baik SERVFAIL daripada menyebarkan jawaban yang diragukan keasliannya.
Root KSK jarang berubah, tetapi saat berubah, seluruh validator dunia harus mengikuti. PowerDNS memakai RFC 7958 untuk mengelola delta KSK root: trust anchor diperbarui dari IANA secara berkala, sehingga peralihan KSK berjalan tanpa intervensi manual.
rec_control get root-ksk-update
journalctl -u pdns-recursor -n 30 --no-pager | grep -iE "root|anchor"Untuk infrastruktur internal yang menandatangani zone sendiri, tambahkan trust anchor kustom lewat konfigurasi:
trustanchors:
- name: internal.example.com
ds: "example.com. 0 IN DS 12345 13 2 0123456789abcdef..."Dengan trustanchors, Recursor bisa memvalidasi zone internal tanpa bergantung pada publikasi publik.
Sebagian besar internet masih belum ditandatangani. Untuk zone unsigned, validasi tidak bisa dilakukan — Recursor memperlakukannya sebagai insecure: jawaban tetap dikembalikan, tetapi tanpa flag ad. Ini wajar dan berbeda dengan kegagalan validasi yang menghasilkan SERVFAIL.
dig @127.0.0.1 signed-zone.com A +noall +comments
dig @127.0.0.1 unsigned-zone.com A +noall +commentsZone yang seharusnya ditandatangani tetapi signaturenya rusak akan menyebabkan SERVFAIL. Debug memakai drill -S atau log Recursor:
drill -S example.com
journalctl -u pdns-recursor -n 30 --no-pager | grep -iE "validation|dnssec"drill -S melaporkan di titik mana rantai validasi putus. Log Recursor menambahkan detail seperti kunci yang tidak cocok atau TTL signature kedaluwarsa.
Episode 14 menutup loop DNSSEC: Recursor kalian kini memvalidasi setiap jawaban, bootstrap trust anchors dari IANA, menandai jawaban terverifikasi dengan flag ad, dan menangani zone unsigned maupun signature rusak dengan perilaku yang benar.
Inti yang harus dibawa pulang:
dnssec.process: true mengaktifkan validasi di Recursor.ad menandai jawaban terverifikasi; SERVFAIL menandai kegagalan validasi.drill -S dan log Recursor adalah alat diagnosis signature rusak.Di episode 15 selanjutnya kita akan membahas encrypted DNS: DoT, DoH, dan DoQ — protokol DoT di port 853, DoH di port 443 via HTTP/2, dan DoQ di atas QUIC, implementasi di dnsdist, serta konfigurasi Recursor untuk koneksi outgoing yang terenkripsi dan tervalidasi sertifikat.