Glosarium Konfigurasi DNS Server (BIND9)


Glosarium Konfigurasi DNS Server (BIND9)

DNS Server digunakan untuk menerjemahkan nama domain menjadi alamat IP, sehingga pengguna dapat mengakses layanan jaringan tanpa harus menghafal IP Address.

1. Struktur dan File Utama DNS Server

Nama File / Lokasi Fungsi / Keterangan
/etc/bind/named.conf File konfigurasi utama DNS, memanggil file konfigurasi lainnya.
/etc/bind/named.conf.options Menyimpan opsi global seperti forwarder (DNS luar), direktori kerja, dan kebijakan query.
/etc/bind/named.conf.local Digunakan untuk mendefinisikan zona (domain) lokal yang dikelola server.
/etc/bind/named.conf.default-zones Berisi zona default seperti localhost dan 127.in-addr.arpa untuk pengujian lokal.
/etc/bind/db.example.com File zona untuk domain example.com, berisi record A, NS, MX, dan lainnya.
/etc/bind/db.192 File zona reverse, digunakan untuk mengonversi alamat IP menjadi nama domain.

2. Contoh 

zone "sekolah.local" {
    type master;
    file "/etc/bind/db.sekolah.local";
};


Sintaks / Baris Fungsi / Penjelasan
zone "sekolah.local" Mendefinisikan nama domain (zona) yang dikelola DNS Server.
type master; Menyatakan bahwa server ini adalah master DNS untuk zona tersebut (memiliki file aslinya).
file "/etc/bind/db.sekolah.local"; Menentukan lokasi file zona yang berisi record DNS dari domain.


3. Isi File Zona: /etc/bind/db.sekolah.local

Contoh isi file zona dan arti tiap bagian:


$TTL    604800
@       IN      SOA     ns1.sekolah.local. admin.sekolah.local. (
                        2         ; Serial
                        604800    ; Refresh
                        86400     ; Retry
                        2419200   ; Expire
                        604800 )  ; Negative Cache TTL

; Name Server
@               IN      NS      ns1.sekolah.local.

; A Record
ns1             IN      A       192.168.10.1
www          IN      A       192.168.10.2
ftp              IN      A       192.168.10.3

; MX Record
@              IN      MX 10   mail.sekolah.local.
mail           IN      A       192.168.10.4



Sintaks / Elemen Fungsi / Penjelasan
$TTL 604800 Menentukan waktu hidup cache (Time To Live) untuk record DNS (dalam detik).
@ IN SOA ns1.sekolah.local. admin.sekolah.local. Menunjukkan Start of Authority (server DNS utama dan email admin).
Serial Nomor versi konfigurasi zona (ubah setiap kali file diperbarui).
Refresh Waktu update data dari server master ke slave.
Retry Waktu tunggu sebelum mencoba sinkronisasi ulang jika gagal.
Expire Lama waktu server slave menyimpan data sebelum kadaluarsa.
Negative Cache TTL Lama waktu kesalahan query disimpan dalam cache.
@ IN NS ns1.sekolah.local. Menentukan Name Server utama untuk domain.
ns1 IN A 192.168.10.1 Menetapkan alamat IP untuk server DNS.
www IN A 192.168.10.2 Menetapkan alamat IP untuk web server.
ftp IN A 192.168.10.3 Menetapkan alamat IP untuk server FTP.
@ IN MX 10 mail.sekolah.local. Menunjukkan mail exchanger (server email) untuk domain.


4. Konfigurasi Zona Reverse: /etc/bind/db.192

$TTL 604800
@   IN  SOA ns1.sekolah.local. admin.sekolah.local. (
        1   ; Serial
        604800 ; Refresh
        86400  ; Retry
        2419200 ; Expire
        604800 ) ; Negative Cache TTL
@   IN  NS  ns1.sekolah.local.
1   IN  PTR ns1.sekolah.local.
2   IN  PTR www.sekolah.local.
3   IN  PTR ftp.sekolah.local.

Sintaks / Baris Fungsi / Penjelasan
PTR Menentukan nama domain untuk IP tertentu (kebalikan dari record A).
1 IN PTR ns1.sekolah.local. IP 192.168.10.1 menunjuk ke ns1.sekolah.local.
2 IN PTR www.sekolah.local. IP 192.168.10.2 menunjuk ke www.sekolah.local.
3 IN PTR ftp.sekolah.local. IP 192.168.10.3 menunjuk ke ftp.sekolah.local.

5. Konfigurasi Opsi Global di named.conf.options

Contoh isi file dan fungsinya:

options {

    directory "/var/cache/bind";

    forwarders {

        8.8.8.8;

        8.8.4.4;

    };

    allow-query { any; };

    recursion yes;

    dnssec-validation auto;

    listen-on-v6 { any; };

};

Sintaks / Baris Fungsi / Penjelasan
directory "/var/cache/bind"; Menentukan lokasi penyimpanan cache DNS.
forwarders { 8.8.8.8; 8.8.4.4; }; Menetapkan DNS eksternal (Google DNS) untuk query luar domain lokal.
allow-query { any; }; Mengizinkan semua perangkat melakukan query ke DNS ini.
recursion yes; Mengaktifkan fitur recursive lookup untuk klien.
dnssec-validation auto; Mengaktifkan validasi DNSSEC untuk keamanan.
listen-on-v6 { any; }; Mengizinkan server mendengarkan koneksi IPv6.

6. Perintah Administratif DNS Server


Perintah / Sintaks Fungsi / Keterangan
named-checkconf Mengecek kesalahan pada file konfigurasi DNS utama.
named-checkzone sekolah.local /etc/bind/db.sekolah.local Memeriksa kesalahan di file zona tertentu.
systemctl restart bind9 Menjalankan ulang layanan DNS agar perubahan diterapkan.
systemctl status bind9 Menampilkan status aktif atau tidaknya layanan DNS.
nslookup sekolah.local Menguji apakah DNS berhasil menerjemahkan domain ke IP.
dig www.sekolah.local Melakukan query DNS secara detail (mengganti nslookup).
tail -f /var/log/syslog Melihat log real-time aktivitas BIND.

7. Contoh Alur Pengujian DNS

Langkah Perintah Tujuan / Hasil yang Diharapkan
1 ping www.sekolah.local DNS berhasil menerjemahkan domain ke IP (reply sukses).
2 dig sekolah.local Menampilkan detail record A dan NS.
3 host 192.168.10.2 Menguji reverse lookup (menampilkan nama www.sekolah.local).
4 cat /etc/resolv.conf Pastikan klien menunjuk ke IP DNS Server.

8. Tips & Kesalahan Umum

Masalah Penyebab Umum Solusi
“SERVFAIL” saat query DNS Salah format file zona atau serial belum diubah Jalankan named-checkzone lalu restart BIND
Domain tidak dikenali Klien belum diarahkan ke IP DNS Server Tambahkan nameserver 192.168.10.1 di /etc/resolv.conf
Reverse lookup gagal File zona PTR belum dikonfigurasi Tambahkan file /etc/bind/db.192 dan daftarkan di named.conf.local
Tidak bisa mengakses internet Forwarder belum diset Tambahkan DNS publik di named.conf.options


No comments:

Post a Comment