Membuat DNS resolver stand alone dengan bind pada centos 7.x

0
1468

hello sobat sekolahlinux, jumpa lagi nih kali ini saya akan membuat tutorial bagaimana sih cara membuat DNS Server resolver stand alone pada centos (sebenernya cara ini bisa diterapkan juga pada distro linux ataupun bsd) lalu apa maksudnya dengan “stand alone“, dns stand alone adalah dns yang langsung terhubung ke root server dns untuk meminta querynya, jadi pada dns server ini nantinya tidak akan menggunakan ip dns server lainnya melainkan nantinya menggunakan ip dns  milik dns server itu sendiri (membingungkan ya :p wahahaha)

DNS

TOPOLOGI

DNS Server

  • IP DNS Server: 115.178.128.6
  • OS: Centos 7.x minimal
  • DNS: 202.xxx.xxx.xxx, 203.xxx.xxx.xxx

Client

  • IP Client: 202.148.1.50

ada beberapa persyaratan dalam membuat dns resolver stand alone yaitu

saatnya kita mulai, ouu iya pada awalnya kita memerlukan DNS server yang diberikan isp gunanya tentu untuk mendownload bind nya, tapi nanti ketika kita selesai konfig kita bisa rubah ip dns milik isp menjadi ip milik dns server yang sedang kita buat ini 😀

pertama kita install bind dahulu

yum install bind bind-utils

jika sudah sesuaikan konfig bindnya seperti dibawah

options {
	listen-on port 53 { any; };
	listen-on-v6 port 53 { any; };
	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;
			  202.148.1.50; };
	allow-transfer     { localhost; };
	allow-recursion     { localhost;
			  202.148.1.50; };

	recursion yes;

	dnssec-enable yes;
	dnssec-validation yes;
	dnssec-lookaside auto;

	/* Path to ISC DLV key */
	bindkeys-file "/etc/named.iscdlv.key";

	managed-keys-directory "/var/named/dynamic";

	pid-file "/run/named/named.pid";
	session-keyfile "/run/named/session.key";
};

logging {
        channel default_debug {
                file "data/named.run";
                severity dynamic;
        };
};


zone "." IN {
	type hint;
	file "named.ca";
};

include "/etc/named.rfc1912.zones";
include "/etc/named.root.key";

berikut ini penjelasan dari beberapa option bind diatas

listen-on port 53 =  ##fungsinya agar user manapun dapat berkomunikasi dengan service DNS pada ipv4 dns-server
listen-on-v6 port 53 =  ##fungsinya agar user manapun dapat berkomunikasi dengan service DNS pada ipv6 dns-server
allow-query =  ##ip yang terdaftar pada option ini dapat menggunakan ip dns-server ini sebagai ip dns network mereka
allow-transfer =  ##ip yang terdaftar pada option ini dapat menerima transfer zone dari dns-server ini (tidak dibahas pada tutorial kali ini)
allow-recursion =  ##ip yang terdaftar pada option ini dapat melakukan nslookup/pengecekan domain menggunakan ip dns-server ini

jika sudah jalankan servicenya

systemctl restart  named
rndc reload

lalu aktifkan autostart ketika komputer restart

pada centos 7.x

systemctl enable named

pada centos 6.x

chkconfig named on

lalu selanjutnya adalah merubah ip dns pada dns-server, pada konfig sebelumnya ip dns pada dns-server adalah:

(202.xxx.xxx.xxx, 203.xxx.xxx.xxx) rubah menjadi (115.178.128.6, 127.0.0.1)

untuk memastikan rubah juga dns pada /etc/resolv.conf

[root@server ~]# cat /etc/resolv.conf
# Generated by NetworkManager
search akbaribnu.local
nameserver 115.178.128.6
nameserver 127.0.0.1

jika sudah restart server dns-server. jika sudah restart server dns-server coba test dengan perintah seperti dibawah

[root@server ~]# nslookup google.co.id
Server:		115.178.128.6
Address:	115.178.128.6#53

Non-authoritative answer:
Name:	google.co.id
Address: 74.125.200.94

[root@server ~]# ping google.co.id
PING google.co.id (74.125.200.94) 56(84) bytes of data.
64 bytes from sa-in-f94.1e100.net (74.125.200.94): icmp_seq=1 ttl=45 time=15.9 ms
64 bytes from sa-in-f94.1e100.net (74.125.200.94): icmp_seq=2 ttl=45 time=15.6 ms
64 bytes from sa-in-f94.1e100.net (74.125.200.94): icmp_seq=3 ttl=45 time=15.7 ms
64 bytes from sa-in-f94.1e100.net (74.125.200.94): icmp_seq=4 ttl=45 time=15.7 ms
^C
--- google.co.id ping statistics ---
4 packets transmitted, 4 received, 0% packet loss, time 3001ms
rtt min/avg/max/mdev = 15.687/15.788/15.970/0.110 ms
[root@server ~]#

dan sekarang coba test dari client dengan ip public 202.148.1.50, jangan lupa ganti ip dns client menjadi 115.178.128.6.

jika berhasil meresolved maka kita sudah berhasil membuat dns-server resolver stand alone.

kok bisa dns-servernya meresolve domain tujuan kan dia pakai ip domain ip servernya sendiri.? jadi dns-server ini bisa meresolve dikarenakan meresolve langsung ke root server.

oke sekian tutorial kali ini 😀 , tutorial ini akan diupdate untuk mengoptimasi kecepatan dns-server dalam meresolve suatu alamat jadi stay dan kunjungi terus sekolahlinux.com