FreeBSD ISC Bind - Konfigurasi DNS Master dan Slave
· 2 min read · Label UnixBSD
Server DNS atau Domain Name System merupakan salah satu komponen terpenting dalam dunia IT dan internet modern. Dengan DNS, Anda dapat menggunakan nama domain yang mudah diingat sebagai pengganti alamat IP. Terutama karena IPv6 semakin populer, DNS tetap menjadi bagian yang sangat penting dari jaringan Anda.
Artikel ini akan menjelaskan cara menyiapkan server DNS Master dan DNS Slave yang akan mereplikasi data dari server induk.
Sebelum kita melangkah lebih jauh, Anda harus melihat gambar topologi server DNS master dan slave yang akan kita bahas dalam artikel ini.
Dengan menyiapkan server DNS, satu sebagai master dan yang lainnya sebagai slave, slave akan mereplikasi data zona dari master ke dirinya sendiri. Dengan cara ini, ketika perubahan dilakukan pada beberapa zona di master, slave akan diberi tahu dan mengambil alih perubahan hampir seketika tanpa konfigurasi apa pun di sisi slave.
Dengan 2 server DNS, sekunder dan primer, ketika server DNS sekunder "mati", server DNS primer bekerja penuh waktu. Demikian pula, ketika server DNS primer "mati", kebutuhan DNS akan ditangani oleh server DNS sekunder.
Langkah pertama adalah membuat key "rndc.key", (Remote Name Daemon Control). Key ini digunakan untuk mengelola daemon bernama DNS Bind. Oke, sekarang mari kita buat key rndc.key (lakukan ini hanya pada server master).
Untuk mengonfigurasi DNS Master, silakan buka file konfigurasi Bind utama, yaitu "/usr/local/etc/namedb/named.conf".
Cara konfigurasinya tidak jauh berbeda dengan DNS master, hanya ada beberapa perubahan saja. Oke, langsung saja kita edit file konfigurasi DNS slave utama, yaitu "/usr/local/etc/namedb/named.conf".
Jika Anda mengikuti semua petunjuk di atas, dan tidak ada yang salah dalam penulisan skrip, kini Anda dapat menikmati dua server DNS untuk kebutuhan jaringan internet Anda. Nikmati kecepatan internet dengan DNS pribadi di server FreeBSD Anda.
Artikel ini akan menjelaskan cara menyiapkan server DNS Master dan DNS Slave yang akan mereplikasi data dari server induk.
Sebelum kita melangkah lebih jauh, Anda harus melihat gambar topologi server DNS master dan slave yang akan kita bahas dalam artikel ini.
A. Mengapa Anda Harus Menggunakan Server DNS Master dan Slave
Tidak ada sistem atau instalasi yang memiliki uptime 100% sempurna dan karena DNS dapat menjadi komponen penting jaringan internet kita, sebaiknya kita memiliki dua server DNS. Server DNS sekunder untuk menyediakan cadangan jika DNS primer gagal. Anda cukup menyiapkan dua server DNS yang identik dengan konfigurasi dan data yang sama. Meskipun ini akan berfungsi dengan baik, Anda perlu membuat semua perubahan dua kali. Sekali di server primer dan sekali di server sekunder.Dengan menyiapkan server DNS, satu sebagai master dan yang lainnya sebagai slave, slave akan mereplikasi data zona dari master ke dirinya sendiri. Dengan cara ini, ketika perubahan dilakukan pada beberapa zona di master, slave akan diberi tahu dan mengambil alih perubahan hampir seketika tanpa konfigurasi apa pun di sisi slave.
Dengan 2 server DNS, sekunder dan primer, ketika server DNS sekunder "mati", server DNS primer bekerja penuh waktu. Demikian pula, ketika server DNS primer "mati", kebutuhan DNS akan ditangani oleh server DNS sekunder.
B. Konfigurasi DNS Master
Pada artikel ini, kami tidak akan menjelaskan proses instalasi Bind. Kami berasumsi bahwa Anda telah menginstal Bind pada server FreeBSD dan aplikasi Bind berjalan normal. Jadi, mari kita langsung membahas konfigurasi DNS Master.Langkah pertama adalah membuat key "rndc.key", (Remote Name Daemon Control). Key ini digunakan untuk mengelola daemon bernama DNS Bind. Oke, sekarang mari kita buat key rndc.key (lakukan ini hanya pada server master).
Create rndc.key
root@router1:~ # rndc-confgen -a
wrote key file "/usr/local/etc/namedb/rndc.key"
root@router1:~ # chown -R bind:bind /usr/local/etc/namedb/rndc.key
root@router1:~ # chmod 440 /usr/local/etc/namedb/rndc.key
/usr/local/etc/namedb/named.conf
root@router1:~ # ee /usr/local/etc/namedb/named.conf
key "rndc-key" {
algorithm hmac-sha256;
secret "sLhSyJAo609lksFnU2Z0y5MbiSnoVJfTMz21foPVv3g=";
};
controls {
inet 192.168.5.9 port 953 allow { 192.168.5.5; } keys { "rndc-key"; };
inet 127.0.0.1 port 953 allow { 127.0.0.1; } keys { "rndc-key"; };
};
acl clients {
192.168.5.0/24;
127.0.0.1;
};
acl IP_LAN { 192.168.5.5; };
options {
directory "/tmp";
version "dns foo.kursor.my.id";
listen-on port 53 { IP_LAN; };
#listen-on-v6 { any; };
allow-recursion { clients; };
allow-query { clients; };
allow-query-cache { clients; };
allow-transfer { localhost; 192.168.5.9; };
notify yes;
empty-zones-enable yes;
recursion yes;
auth-nxdomain no;
dnssec-validation yes;
};
zone "localhost" {
type master;
file "standard/localhost";
allow-transfer { 127.0.0.1; };
};
zone "127.in-addr.arpa" {
type master;
file "standard/loopback";
allow-transfer { 127.0.0.1; };
};
zone "." {
type forward;
forward first;
forwarders { 1.1.1.1; 8.8.8.8; };
};
zone "kursor.my.id" in {
type master;
file "master/internal.lan";
};
zone "5.168.192.in-addr.arpa" in {
type master;
file "master/insternal.rev";
};
a. Menambahkan file Zona
Setelah Anda selesai mengonfigurasi file named.conf, kita lanjutkan dengan membuat zona. Kita bagi pembuatan zona ini menjadi 2. Pertama kita buat zona untuk domain dan kedua kita buat zona untuk reverse (alamat IP).
script in zone file
root@router1:~ # ee /usr/local/etc/namedb/master/internal.lan
$ORIGIN .
$TTL 86400 ; 24 hours
kursor.my.id IN SOA router1.kursor.my.id. root.router1.kursor.my.id. (
2010022201 ; Serial
86400 ; Refresh (24 hours)
3600 ; Retry (1 hour)
172800 ; Expire (48 hours)
3600 ; Minimum (1 hour)
)
kursor.my.id. IN NS router1.kursor.my.id.
kursor.my.id. IN NS router2.kursor.my.id.
$ORIGIN kursor.my.id.
router1.kursor.my.id. IN A 192.168.5.5
router2.kursor.my.id. IN A 192.168.5.9
Add script in zone file
root@router1:~ # ee /usr/local/etc/namedb/master/insternal.rev
$ORIGIN .
$TTL 86400 ; 24 hours
5.168.192.in-addr.arpa IN SOA router1.kursor.my.id. root.router1.kursor.my.id. (
2010022201 ; Serial
86400 ; Refresh (24 hours)
3600 ; Retry (1 hour)
172800 ; Expire (48 hours)
3600 ; Minimum (1 hour)
)
IN NS router1.kursor.my.id.
IN NS router2.kursor.my.id.
$ORIGIN 5.168.192.in-addr.arpa.
100 IN PTR router1.kursor.my.id.
200 IN PTR router2.kursor.my.id.
Setelah itu Anda restart server Bind DNS, dengan perintah berikut.Restart Bind
root@router1:~ # service named restart
C. Setup DNS Slave
Setelah server DNS master kita berfungsi dengan baik, saatnya menambahkan server DNS slave ke server DNS master. Dalam artikel ini, server DNS slave dijalankan di komputer lain, tetapi masih menggunakan FreeBSD sebagai sistem operasinya.Cara konfigurasinya tidak jauh berbeda dengan DNS master, hanya ada beberapa perubahan saja. Oke, langsung saja kita edit file konfigurasi DNS slave utama, yaitu "/usr/local/etc/namedb/named.conf".
/usr/local/etc/namedb/named.conf
root@router2:~ # ee /usr/local/etc/namedb/named.conf
key "rndc-key" {
algorithm hmac-sha256;
secret "sLhSyJAo609lksFnU2Z0y5MbiSnoVJfTMz21foPVv3g=";
};
controls {
inet 192.168.5.5 port 953 allow { 192.168.5.9; } keys { "rndc-key"; };
inet 127.0.0.1 port 953 allow { 127.0.0.1; } keys { "rndc-key"; };
};
acl clients {
192.168.5.0/24;
127.0.0.1;
};
acl IP_LAN { 192.168.5.9; };
options {
directory "/tmp";
version "dns foo.kursor.my.id";
listen-on port 53 { IP_LAN; };
#listen-on-v6 { any; };
allow-recursion { clients; };
allow-query { clients; };
allow-query-cache { clients; };
allow-transfer { localhost; 192.168.5.5; };
notify yes;
empty-zones-enable yes;
recursion yes;
auth-nxdomain no;
dnssec-validation yes;
};
zone "localhost" {
type slave;
file "standard/localhost";
allow-transfer { 127.0.0.1; };
};
zone "127.in-addr.arpa" {
type slave;
file "standard/loopback";
allow-transfer { 127.0.0.1; };
};
zone "." {
type forward;
forward first;
forwarders { 1.1.1.1; 8.8.8.8; };
};
zone "kursor.my.id" in {
type slave;
masters { 192.168.5.5; };
file "master/internal.lan";
};
zone "5.168.192.in-addr.arpa" in {
type slave;
masters { 192.168.5.5; };
file "master/insternal.rev";
};
a. Menambahkan file Zona (slave)
Membuat file zona untuk DNS slave hampir sama dengan DNS master. Berikut adalah file zona untuk DNS slave.Tambahkan skrip di file zona
root@router2:~ # ee /usr/local/etc/namedb/master/internal.lan
$ORIGIN .
$TTL 86400 ; 24 hours
kursor.my.id IN SOA router2.kursor.my.id. root.router2.kursor.my.id. (
2010022201 ; Serial
86400 ; Refresh (24 hours)
3600 ; Retry (1 hour)
172800 ; Expire (48 hours)
3600 ; Minimum (1 hour)
)
kursor.my.id. IN NS router2.kursor.my.id.
kursor.my.id. IN NS router1.kursor.my.id.
$ORIGIN kursor.my.id.
router2.kursor.my.id. IN A 192.168.5.9
router1.kursor.my.id. IN A 192.168.5.5
Tambahkan skrip di file zona
root@router2:~ # ee /usr/local/etc/namedb/master/insternal.rev
$ORIGIN .
$TTL 86400 ; 24 hours
5.168.192.in-addr.arpa IN SOA router2.kursor.my.id. root.router2.kursor.my.id. (
2010022201 ; Serial
86400 ; Refresh (24 hours)
3600 ; Retry (1 hour)
172800 ; Expire (48 hours)
3600 ; Minimum (1 hour)
)
IN NS router2.kursor.my.id.
IN NS router1.kursor.my.id.
$ORIGIN 5.168.192.in-addr.arpa.
100 IN PTR router2.kursor.my.id.
200 IN PTR router1.kursor.my.id.
Setelah itu Anda restart server Bind DNS, dengan perintah berikut.Restart Bind
root@router1:~ # service named restart
Silahkan Berkomentar, Kakak...! Bunda...!
Posting Komentar