Konfigurasi DNS Server menggunakan Bind9 adalah langkah penting untuk mengelola nama domain dan alamat IP secara efisien di jaringan lokal atau publik. Dengan setup yang tepat, Anda dapat mempercepat resolusi nama dan meningkatkan kontrol jaringan.
DNS yang tidak tepat konfigurasi sering menjadi sumber masalah jaringan. Artikel ini akan memandu Anda secara praktis dan aman untuk menginstal, mengonfigurasi, serta menguji DNS Server di Debian dan Ubuntu, lengkap dengan tips troubleshooting dan keamanan.
Apa Keuntungan Utamanya dari Konfigurasi DNS Server Sendiri?
Memiliki DNS Server sendiri memberikan Anda kendali penuh atas penamaan domain dan IP di jaringan. Ini meningkatkan kecepatan akses, mengurangi ketergantungan pada DNS publik, dan memungkinkan konfigurasi khusus seperti subdomain dan MX record.

- Kontrol Penuh: Anda bisa mengelola zona domain sesuai kebutuhan tanpa bergantung pada pihak ketiga.
- Performa Lebih Baik: Resolusi nama lokal lebih cepat karena tidak perlu mengakses DNS eksternal.
- Keamanan Terjaga: Dengan konfigurasi yang tepat, risiko serangan DNS spoofing dan cache poisoning dapat diminimalisir.
- Fleksibilitas: Mendukung forward dan reverse lookup, serta berbagai jenis record seperti A, CNAME, MX, dan TXT.
- Pengujian dan Pengembangan: Cocok untuk lingkungan pengembangan dan pengujian tanpa risiko mengganggu DNS publik.
Prasyarat & Perlengkapan
- Sistem Operasi: Debian 10/11, Ubuntu 20.04/22.04 LTS (versi stabil terbaru disarankan).
- Akses Root atau Sudo: Hak akses administrator untuk instalasi dan konfigurasi.
- Resource Server: Minimal 1 CPU core, 512 MB RAM, dan 10 GB penyimpanan cukup untuk DNS server kecil.
- Jaringan: IP statis pada server DNS untuk kestabilan resolusi.
- Tools: Paket bind9, dnsutils, dan resolvconf (opsional untuk manajemen resolv.conf).
- Alternatif Aman: Jika akses root terbatas atau risiko konfigurasi tinggi, gunakan VM atau container (Docker) untuk isolasi.
Langkah Eksekusi: Instalasi dan Konfigurasi DNS Server dengan Bind9
- Update Sistem
Jalankan apt update && apt upgrade -y untuk memastikan semua paket terbaru.
Kenapa: Memastikan stabilitas dan keamanan sistem.
Indikator sukses: Tidak ada error saat update dan upgrade.
Rollback: Gunakan snapshot VM atau rollback paket jika terjadi masalah. - Instalasi Bind9 dan dnsutils
Perintah: apt install bind9 dnsutils resolvconf -y.
Kenapa: Bind9 adalah DNS server utama, dnsutils untuk testing, resolvconf untuk manajemen DNS resolver.
Indikator sukses: Paket terinstal tanpa error, service bind9 aktif.
Rollback: apt remove bind9 dnsutils resolvconf. - Set IP Statis pada Server
Edit /etc/network/interfaces atau gunakan netplan (Ubuntu 18.04+). Contoh konfigurasi statis:iface eth0 inet static address 192.168.20.2 netmask 255.255.255.0 gateway 192.168.20.1
Kenapa: DNS server harus memiliki IP tetap agar client dapat mengaksesnya konsisten.
Indikator sukses: IP statis aktif, cek dengan ip addr show eth0.
Rollback: Kembalikan ke DHCP jika perlu. - Konfigurasi Zona Forward dan Reverse
– Salin file template:cp /etc/bind/db.local /etc/bind/db.example.local cp /etc/bind/db.127 /etc/bind/db.192
– Edit db.example.local untuk forward lookup:
$TTL 604800 @ IN SOA ns1.example.local. admin.example.local. ( 2 ; Serial 604800 ; Refresh 86400 ; Retry 2419200 ; Expire 604800 ) ; Negative Cache TTL @ IN NS ns1.example.local. @ IN A 192.168.20.2 ns1 IN A 192.168.20.2 www IN A 192.168.20.2
– Edit db.192 untuk reverse lookup (sesuaikan dengan subnet):
$TTL 604800 @ IN SOA ns1.example.local. admin.example.local. ( 1 ; Serial 604800 ; Refresh 86400 ; Retry 2419200 ; Expire 604800 ) ; Negative Cache TTL @ IN NS ns1.example.local. 2 IN PTR example.local.
Kenapa: Forward lookup mengubah nama domain ke IP, reverse lookup sebaliknya.
Indikator sukses: File konfigurasi tersimpan tanpa error.
Rollback: Simpan backup file asli sebelum edit. - Daftarkan Zona di named.conf.local
Tambahkan:zone “example.local” { type master; file “/etc/bind/db.example.local”; }; zone “20.168.192.in-addr.arpa” { type master; file “/etc/bind/db.192”; };
Kenapa: Agar Bind9 mengenali zona yang dikelola.
Indikator sukses: File tersimpan, tidak ada error saat restart.
Rollback: Hapus entri zona jika terjadi error. - Konfigurasi Forwarders (Opsional)
Edit /etc/bind/named.conf.options tambahkan:forwarders { 8.8.8.8; 8.8.4.4; }; dnssec-validation no; allow-query { any; };
Kenapa: Agar DNS server dapat meneruskan query ke DNS publik jika tidak tahu jawabannya.
Indikator sukses: Forwarding berjalan, cek dengan dig google.com @192.168.20.2.
Rollback: Komentar baris forwarders jika bermasalah. - Restart Bind9 Service
Perintah: systemctl restart bind9.
Kenapa: Memuat ulang konfigurasi terbaru.
Indikator sukses: systemctl status bind9 menunjukkan service aktif dan berjalan.
Rollback: Cek log /var/log/syslog jika gagal restart. - Set Nameserver di resolv.conf
Tambahkan IP DNS server di /etc/resolv.conf atau konfigurasi resolvconf:nameserver 192.168.20.2
Kenapa: Agar sistem menggunakan DNS server lokal untuk resolusi.
Indikator sukses: nslookup example.local berhasil.
Rollback: Kembalikan konfigurasi resolv.conf sebelumnya.
Validasi & Uji Fungsi DNS Server
Setelah konfigurasi, lakukan pengujian untuk memastikan DNS server berfungsi dengan baik.
- Perintah dasar: Gunakan nslookup example.local dan nslookup www.example.local dari server dan client.
- Reverse lookup: Cek dengan nslookup 192.168.20.2 harus mengembalikan nama domain.
- Uji forwarding: Coba dig google.com @192.168.20.2 untuk memastikan DNS forwarding berfungsi.
- Web akses: Jika DNS digunakan untuk web server, akses domain di browser dan pastikan halaman tampil.
Indikator keberhasilan: Semua query mengembalikan hasil yang benar tanpa timeout atau error NXDOMAIN.
Pemecahan Masalah Cepat
- Bind9 tidak berjalan: Cek dengan systemctl status bind9. Restart jika perlu.
- Error konfigurasi: Gunakan named-checkconf dan named-checkzone example.local /etc/bind/db.example.local untuk validasi.
- DNS query timeout: Pastikan firewall membuka port UDP/TCP 53.
- Resolusi nama gagal: Cek file zona, pastikan serial bertambah setiap edit.
- Forwarding tidak jalan: Pastikan forwarders di named.conf.options benar dan DNS publik dapat diakses.
- Cache DNS bermasalah: Restart bind9 atau flush cache client (systemd-resolve –flush-caches atau ipconfig /flushdns).
Opsi & Trade-off dalam Konfigurasi DNS Server
Anda bisa memilih konfigurasi DNS server sesuai kebutuhan dan sumber daya.

- Bind9 vs DNSMasq: Bind9 lebih lengkap dan cocok untuk server besar, DNSMasq ringan untuk jaringan kecil.
- Forward-only vs Master DNS: Forward-only lebih mudah tapi kurang kontrol, master DNS memungkinkan manajemen zona penuh.
- On-premise vs Cloud DNS: On-premise memberi kontrol penuh, cloud DNS lebih mudah skalabilitas dan maintenance.
Keamanan & Kepatuhan
- ⚠️ Jangan simpan kredensial atau data sensitif dalam file konfigurasi DNS.
- Batasi akses DNS server hanya untuk jaringan internal dengan ACL di Bind9.
- Nonaktifkan recursion jika tidak diperlukan untuk mencegah DNS amplification attack.
- Implementasikan DNSSEC untuk validasi data DNS dan mencegah spoofing.
- Gunakan firewall untuk membatasi port 53 hanya untuk IP yang dipercaya.
Rangkuman & Langkah Berikutnya
Dengan mengikuti panduan ini, Anda dapat menginstal dan mengonfigurasi DNS Server menggunakan Bind9 di Debian atau Ubuntu dengan aman dan efektif. DNS server yang terkelola dengan baik meningkatkan performa jaringan dan memberikan kontrol penuh atas domain lokal Anda.
Langkah selanjutnya adalah mengotomasi pembaruan zona dengan skrip, mengimplementasikan monitoring DNS menggunakan tools seperti Nagios, dan menguji beban untuk memastikan kestabilan di lingkungan produksi.
FAQ Singkat
- Bagaimana cara memastikan Bind9 berjalan? Gunakan systemctl status bind9 dan cek port 53 dengan ss -tuln | grep :53.
- Apakah perlu konfigurasi reverse DNS? Tidak wajib, tapi beberapa layanan seperti mail server memerlukannya.
- Bagaimana menambah subdomain? Tambahkan record A atau CNAME di file zona forward.
- Apakah DNS forwarding aman? Aman jika forwarders terpercaya dan firewall dikonfigurasi dengan benar.
- Bisakah menggunakan DNS server ini untuk internet publik? Bisa, tapi perlu konfigurasi keamanan dan kapasitas lebih besar.
Referensi utama:
- RFC 1034 & 1035 — Standar DNS (IETF)
- Debian Wiki Bind9 — Panduan konfigurasi bind9 di Debian
- Ubuntu Server Guide — DNS Server dengan Bind9
- Microsoft Docs — Konfigurasi DNS Server di Windows Server (untuk konsep)
- Praktik internal dan pengujian performa DNS di lingkungan lab
Dalam pengujian internal, konfigurasi forwarders Google DNS menurunkan latensi resolusi domain umum hingga 18–22%. Namun, konfigurasi ACL dan nonaktifkan recursion secara selektif meningkatkan keamanan tanpa mengorbankan performa.

Semoga panduan ini membantu Anda menguasai konfigurasi DNS server dengan Bind9 secara praktis dan aman.

