Pernahkah Anda membayangkan harus menghafal deretan angka rumit seperti 142.250.193.206 hanya untuk membuka sebuah website? Untungnya, internet memiliki sistem bernama DNS (Domain Name System) yang bekerja seperti buku telepon menerjemahkan nama domain yang mudah diingat menjadi alamat IP. Sehari-hari, kita mungkin terbiasa menggunakan layanan DNS siap pakai dari tempat pendaftaran domain atau layanan publik seperti Cloudflare.
Daripada hanya mengandalkan pihak ketiga, kita bisa belajar membangun sistem pengarah domain kita sendiri dari nol. Di sinilah peran perangkat lunak bernama BIND9. Dengan BIND9, kita akan menyulap sebuah VPS biasa menjadi DNS Server yang sepenuhnya berada di bawah kendali kita.
Apa itu BIND9?
Bayangkan internet tanpa BIND9 itu seperti menggunakan ponsel tapi aplikasi “Kontak” Anda dihapus. Anda harus menghafal sederet angka (IP Address) hanya untuk menelpon teman.
BIND9 (Berkeley Internet Name Domain) adalah perangkat lunak open-source yang berfungsi sebagai buku telepon internet tersebut (DNS Server). Tugas utamanya adalah menerjemahkan nama domain yang mudah diingat manusia (seperti namadomain.com) menjadi alamat IP yang dipahami komputer (seperti 103.10.X.X). BIND9 adalah standar industri yang hingga kini menjadi tulang punggung infrastruktur DNS di seluruh dunia.
Apa itu Private Nameserver dan Child Nameserver (Glue Record)?
Saat Anda belajar membangun DNS Server, Anda tidak lagi menggunakan nameserver bawaan registrar. Anda akan membuat Private Nameserver, yaitu menjadikan domain Anda sendiri sebagai nama dari peladen pengarah tersebut.
-
DNS Publik (Bawaan):
ns1.domainregistrar.com -
Private Nameserver (Milik Anda):
ns1.domainbelajar.comdanns2.domainbelajar.com
Mengapa kita perlu mempraktikkan ini?
- Pemahaman Cara Kerja Internet: Daripada menjadikan DNS sebagai “kotak hitam” yang tinggal pakai, Anda jadi paham bagaimana hierarki routing internet bekerja dari hulu ke hilir.
- Kemandirian dan Kendali Penuh: Anda memegang kendali 100% atas pemetaan server. Anda bisa bebas bereksperimen mengarahkan traffic, membuat subdomain, atau memanipulasi record (A, TXT, MX) langsung dari VPS Anda tanpa batasan fitur dari pihak ketiga.
Lalu, apa hubungannya dengan Child Nameserver? Logikanya begini: Anda tidak bisa tiba-tiba menamai VPS Anda ns1.domainbelajar.com lalu berharap seluruh dunia otomatis tahu di mana letaknya. Anda harus melapor ke tempat Anda membeli domain untuk memberi tahu registri pusat: “Mulai sekarang, server ns1.domainbelajar.com berlokasi di IP 103.10.X.X“.
Laporan inilah yang disebut Child Nameserver (di beberapa sistem disebut Glue Record). Ia berfungsi sebagai “lem” yang menempelkan nama server Anda ke alamat IP aslinya. Setelah Child Nameserverini didaftarkan, barulah BIND9 di dalam VPS Cloudaja Anda siap menyambut dan mengatur semua permintaan kueri yang masuk.
Mari kita mulai instalasinya!
Langkah-langkah Instalasi dan Konfigurasi BIND9
Panduan ini menggunakan lingkungan Ubuntu/Debian. Jika Anda menggunakan AlmaLinux/CloudLinux, logikanya sama persis (hanya berbeda nama paket menjadi bind dan service menjadi named).
Skenario Topologi:
-
IP VPS Anda:
103.10.X.X -
Domain Anda:
domain.com
Langkah 1: Instalasi BIND9
Pertama, kita install paket utama BIND9 beserta tools pelengkapnya untuk troubleshooting jaringan.
sudo apt update
sudo apt install bind9 bind9utils bind9-doc dnsutils -y
Langkah 2: Konfigurasi Global (Forwarder & ACL)
Kita perlu memberi tahu BIND9 ke mana ia harus bertanya jika ada klien yang mencari website di luar domain kita, dan membatasi akses keamanan.
Buka file konfigurasi utama:
sudo nano /etc/bind/named.conf.options
Sesuaikan isinya menjadi seperti berikut (ganti IP dengan IP VPS Anda):
acl "trusted" {
127.0.0.0/8;
103.10.X.X; # Masukkan IP VPS Anda di sini
};
options {
directory "/var/cache/bind";
recursion yes;
allow-query { any; }; # Izinkan internet melihat domain kita
allow-recursion { trusted; }; # Hanya IP kita yang boleh numpang resolve ke luar
forwarders {
1.1.1.1;
8.8.8.8;
};
dnssec-validation auto;
listen-on-v6 { any; };
};
Langkah 3: Mendaftarkan “Zone” Domain
Daftarkan domain Anda ke dalam daftar wilayah (Zone) yang dikuasai oleh BIND9. Buka file konfigurasi lokal:
sudo nano /etc/bind/named.conf.local
Tambahkan konfigurasi berikut di baris paling bawah:
zone "domain.com" {
type master;
file "/etc/bind/zones/db.domain.com";
};
Langkah 4: Membuat File Database (DNS Record)
Buat direktori dan file untuk menyimpan A Record dan CNAME domain Anda:
sudo mkdir /etc/bind/zones
sudo nano /etc/bind/zones/db.domain.com
Masukkan format standar BIND9 berikut (Pastikan mengganti IP 103.10.X.X):
$TTL 604800
@ IN SOA ns1.domain.com. admin.domain.com. (
3 ; Serial
604800 ; Refresh
86400 ; Retry
2419200 ; Expire
604800 ) ; Negative Cache TTL
;
; Name Servers
@ IN NS ns1.domain.com.
@ IN NS ns2.domain.com.
; A Records untuk Name Server
ns1 IN A 103.10.X.X
ns2 IN A 103.10.X.X
; A Record Utama
@ IN A 103.10.X.X
www IN CNAME domain.com.
Langkah 5: Pengecekan Sintaks dan Restart
Lakukan pengecekan untuk memastikan tidak ada kesalahan ketik (typo):
sudo named-checkconf
sudo named-checkzone domain.com /etc/bind/zones/db.domain.com
Jika hasilnya OK, jalankan service BIND9:
sudo systemctl restart bind9
sudo systemctl enable bind9
Verifikasi Keberhasilan
Untuk mengetes apakah BIND9 sudah bekerja, jalankan perintah ini dari dalam VPS:
dig @127.0.0.1 domain.com
Jika pada bagian ANSWER SECTION muncul IP 103.10.X.X, selamat! VPS Anda resmi beroperasi sebagai Private Nameserver yang mandiri. Langkah terakhir, Anda tinggal masuk ke panel registrar domain Anda. Pertama, daftarkan IP VPS Anda di menu Child Name Servers (atau Glue Records) dengan nama ns1 dan ns2. Kedua, ubah Nameserver (NS) utama domain Anda agar mengarah ke ns1.domain.com dan ns2.domain.com
Kesimpulan
Membangun Private Nameserver menggunakan BIND9 di VPS memang membutuhkan sedikit usaha ekstra dibandingkan sekadar memakai layanan pihak ketiga. Namun, melalui proses ini, kita tidak lagi melihat sistem DNS sebagai “sihir” atau kotak hitam yang bekerja secara misterius. Kita telah membedah anatominya, memahami peran Authoritative Server, dan melihat langsung bagaimana Child Nameserver menjadi jembatan pengenal domain kita ke seluruh dunia.
Dengan beroperasinya BIND9 di VPS Anda, Anda kini memiliki kendali infrastruktur DNS yang 100% mandiri, bebas dari batasan registrar, dan siap dikembangkan untuk skenario routing yang lebih kompleks di masa depan. Selamat bereksperimen dengan server DNS baru Anda!