Jaringan

Cara Membuat DNS Server Menggunakan BIND9 di CentOS

Diterbitkan tanggal 25 April 2016 oleh michael

Domain Name System (DNS) merupakan sebuah sistem yang digunakan untuk menyimpan informasi tentang host dan domain yang terhubung di jaringan. Digunakan untuk mapping dari alamat IP Address agar mudah dikenali. Server yang digunakan untuk menerjemahkan IP Address juga disebut sebagai DNS Server.

Setelah memberikan penjabaran tentang Cara Membuat DNS Server Menggunakan BIND9 di Ubuntu, kini kami juga akan memberikan uraian tentang cara membuat DNS Server di CentOS dengan tools yang sama, yakni BIND (Berkeley Internet Name Domain versi 9).


PERSIAPAN AWAL

Seperti biasa, perbarui dulu sistem operasi CentOS ke versi terkini, dengan memasukkan perintah:

yum update


INSTALLASI

Seperti di Ubuntu, Anda dapat menginstall aplikasi BIND dari repository bawaan CentOS secara langsung. Masukkan perintah:

yum install bind bind-chroot bind-libs bind-utils caching-nameserver


KONFIGURASI RNDC

cd /var/named/chroot/etc
rndc-confgen > rndc.key
chown root:named rndc.key


Jika sudah membuat direktori dan membuat file tersebut, buka dan edit kembali file rndc.key. Kemudian tambahkan garis perintah berikut sepert di bawah ini:

key "rndckey" {
algorithm hmac-md5;
secret "O1ned3AkbibfKgooJjZIaQ==";
};

Lalu hilangkan semua konfigurasi dengan tanda pagar (#). Untuk rndc.key akan dibuatkan symlink di direktori /etc/ dan menunjuk ke file rndc.key yang baru saja Anda buat. Named akan memperkirakan file tersebut ada agar dapat terotentikasi terhadap rndc.


KONFIGURASI named.conf

Konfigurasi file named.conf yang terletak di direktori /var/named/chroot/etc/named.conf

Kemudian tambahkan baris perintah berikut yang disalin dari rndc.key.

key "rndckey" {
algorithm hmac-md5;
secret "O1ned3AkbibfKgooJjZIaQ==";
};
options {
listen-on port 53 { 127.0.0.1; xx.xx.xx.xx;};
listen-on-v6 port 53 { ::1; };
directory "/var/named";
dump-file "/var/named/data/cache_dump.db";
statistics-file "/var/named/data/named_stats.txt";
memstatistics-file "/var/named/data/named_mem_stats.txt";
allow-query { localhost; xx.xx.xx.0/24; any;};
recursion yes;
allow-recursion {
127.0.0.1;
xx.xx.xx.xx; //IP anda
};
listen-on{
127.0.0.1;
xx.xx.xx.xx; //IP anda
};
};
logging {
channel default_debug {
file "data/named.run";
severity dynamic;
};
};
zone "." IN {
type hint;
file "named.ca";
};
//Forward zone
zone "cobacoba.com" IN {
type master;
file "cobacoba.com.fwd";
allow-update {none;};
};
//Reverse zone
zone "0.168.192.in-addr.arpa" IN {
type master;
file "cobacoba.com.rev";
allow-update {none;};
};


BUAT ZONE

Buat Zone yang nantinya akan diteruskan ke dalam direktori /var/named/chroot/etc, lanjutkan proses dengan memasukkan perintah:

vi /var/named/cobacoba.com.fwd
$ORIGIN cobacoba.com.
$TTL 10800
cobacoba.com. IN SOA dns.cobacoba.com. hostmaster.cobacoba.com. (
2013040200 ; Serial number
3600 ; Refresh
1800 ; Retry
604800 ; Expire
86400 ) ; Minimum TTL
cobacoba.com. IN NS ns1.cobacoba.com.
cobacoba.com. IN MX 1 mx.cobacoba.com.
www.cobacoba.com. IN A xx.xx.xx.xx
ns1.cobacoba.com IN A xx.xx.xx.xx
mx.cobacoba.com. IN A xx.xx.xx.xx
mail.cobacoba.com. IN CNAME mx.cobacoba.com.
Save dan keluar. Kemudian buat lagi untuk file reverse
# vi /var/named/cobacoba.com.rev
$ORIGIN 22.23.103.in-addr.arpa.
$TTL 10800
22.23.103.in-addr.arpa. IN SOA ns1.cobacoba.com. hostname.cobacoba.com (
2013040200 ;Serial
3600 ;Refresh
1800 ;Retry
604800 ;Expire
86400 ) ;Minimum TTL
22.23.103.in-addr.arpa. IN NS ns1.cobacoba.com.
51.22.23.103.in.addr.arpa. IN PTR mx.cobacoba.com.
51.22.23.103.in-addr.arpa. IN PTR www.cobacoba.com.


MENJALANKAN SERVICE

Tahap ini merupakan tahap eksekusi untuk mengetahui apakah layanan siap pakai. Masukkan perintah berikut ini:

service named restart
chkconfig named on


Kemudian tambahkan baris perintah berikut di file resolv.conf yang tadi:

vi /etc/resolv.conf
search cobacoba.com
nameserver 127.0.0.1
nameserver xx.xx.xx.xx <== IP anda


TEST DNS SERVER

# rndc status
number of zones: 2
debug level: 0
xfers running: 0
xfers deferred: 0
soa queries in progress: 0
query logging is OFF
recursive clients: 0/1000
tcp clients: 0/100
server is up and running
# nslookup mx.cobacoba.com 127.0.0.1
Server: 127.0.0.1
Address: 127.0.0.1#53
Name: mx.cobacoba.com
Address: xx.xx.xx.xx <== IP anda
# nslookup <a href="http://www.google.com">www.google.com</a> 127.0.0.1
Server: 127.0.0.1
Address: 127.0.0.1#53
Non-authoritative answer:
Name: <a href="http://www.google.com">www.google.com</a>
Address: 74.125.236.114
Name: <a href="http://www.google.com">www.google.com</a>
Address: 74.125.236.115
Name: <a href="http://www.google.com">www.google.com</a>
Address: 74.125.236.116
Name: <a href="http://www.google.com">www.google.com</a>
Address: 74.125.236.112
Name: <a href="http://www.google.com">www.google.com</a>
Address: 74.125.236.113

(Baca juga: Cara Membuat DNS Server Menggunakan BIND9 di Ubuntu)

Demikian cara membuat DNS server menggunakan Bind9 di sistem operasi CentOS. Bagi para pengguna web hosting Indonesia, seharusnya bisa memanfaatkan pelajaran ini untuk mempersiapkan sistem jika dibutuhkan. Namun jika masih terdapat kendala dan saran, silakan menuju kanal Twitter kami di @CloudKilat.


Tags: bind9, DNS server