Cara Membuat Zone File di BIND: Langkah demi Langkah
Pengantar
BIND (Berkeley Internet Name Domain) adalah salah satu DNS server paling populer dan banyak digunakan di server Linux. Fungsinya adalah menerjemahkan nama domain menjadi alamat IP (forward lookup) maupun sebaliknya (reverse lookup).
Untuk menjalankan DNS server, dibutuhkan zone file, yaitu file konfigurasi berisi informasi tentang domain, subdomain, dan alamat IP yang digunakan. Ada dua jenis zone file utama:
-
Forward zone file → menerjemahkan domain ke IP.
-
Reverse zone file → menerjemahkan IP ke domain.
Zone file penting karena menjadi inti pengelolaan DNS—jika salah konfigurasi, layanan domain bisa tidak dapat diakses.
Prasyarat
Sebelum membuat zone file, pastikan:
-
Server Linux sudah terinstal BIND9 (apt install bind9 -y).
-
Memiliki akses root/SSH ke server.
-
Domain aktif, misalnya example.com.
-
IP server publik, misalnya 203.0.113.10.
Langkah-Langkah Membuat Zone File
- Membuat Direktori Zone
sudo mkdir -p /etc/bind/zones
-
Edit named.conf.local
Tambahkan definisi zone:zone "example.com" { type master; file "/etc/bind/zones/db.example.com"; }; zone "113.0.203.in-addr.arpa" { type master; file "/etc/bind/zones/db.203.0.113"; };
- Membuat Forward Zone File
Buat file /etc/bind/zones/db.example.com:
$TTL 604800 @ IN SOA ns1.example.com. admin.example.com. ( 2025091801 ; Serial 604800 ; Refresh 86400 ; Retry 2419200 ; Expire 604800 ) ; Negative Cache TTL ; Name Server @ IN NS ns1.example.com. ; A Records ns1 IN A 203.0.113.10 www IN A 203.0.113.10 ; CNAME Record ftp IN CNAME www.example.com. ; MX Record @ IN MX 10 mail.example.com. mail IN A 203.0.113.11 ; TXT Record @ IN TXT "v=spf1 mx -all"
- Membuat Reverse Zone File
Buat file /etc/bind/zones/db.203.0.113:
$TTL 604800 @ IN SOA ns1.example.com. admin.example.com. ( 2025091801 ; Serial 604800 86400 2419200 604800 ) ; Name Server @ IN NS ns1.example.com. ; PTR Records 10 IN PTR ns1.example.com. 11 IN PTR mail.example.com.
- Atur Permission
sudo chown root:bind /etc/bind/zones/* sudo chmod 644 /etc/bind/zones/*
- Validasi Konfigurasi
named-checkconf named-checkzone example.com /etc/bind/zones/db.example.com named-checkzone 113.0.203.in-addr.arpa /etc/bind/zones/db.203.0.113
- Reload BIND
sudo systemctl restart bind9
- Testing
Gunakan dig untuk uji :
dig @localhost A www.example.com dig @localhost CNAME ftp.example.com dig @localhost -x 203.0.113.10