Cara membuat private nameserver (child name server) atau dikenal dengan name server dengan domain sendiri di server Linux Ubuntu menggunakan BIND9 hanya dengan 1 IPv4.
Metode ini juga dikenal dengan vanity nameserver yaitu name server dengan branding domain yang anda tentukan sendiri. Nah untuk mewujudkan hal tersebut, kita akan melakukan konfigurasi BIND DNS server.
Hasilnya nanti Anda akan mempunyai nameserver seperti:
- ns1.domainanda.com
- ns2.domainanda.com
Pada panduan ini, sebagai contoh domain yang digunakan adalah idnetter.com dengan IPv4 192.168.0.1, jadi silahkan diganti dengan nama domain dan IP server anda.
Informasi update:
- Artikel diperbarui pada 04 September 2018, Uji coba menggunakan Linux CentOS 7
- Diperbarui pada Sabtu, 22 September 2018, Uji coba Ubuntu 18.04 Bionic Beaver
Cara install BIND di Ubuntu/Debian
Sebelum install BIND9 pastikan sistem sudah terupdate
apt-get update -y
apt-get install bind9 bind9utils -yBuka konfigurasi default bind9 dan edit
nano /etc/default/bind9Set BIND ke mode IPv4, tambahkan -4 pada baris kode seperti berikut:
# startup options for the server
OPTIONS="-4 -u bind"Simpan perubahan.
Konfigurasi DNS server
Karena IP hanya satu maka ns2 juga akan memakai IP yang sama dengan ns1 yaitu 192.168.0.1 sebagai contoh.
nano /etc/bind/named.conf.options
Tambahkan blok baru bernama trusted di baris paling atas, dan set sesuai IP aktual.
acl "trusted" {
	192.168.0.1; # ns1, daftarkan IP slave (ns2, ns3 dst.) disini
};
options {
	directory "/var/cache/bind";
	recursion yes;
	allow-recursion {trusted; }; 
	listen-on { 192.168.0.1; };
	allow-transfer { none; };
	version "Onde onde"; # menyamarkan versi
	forwarders {
		8.8.8.8;
		8.8.4.4;
	};
	dnssec-validation auto;
	auth-nxdomain no; # conform to RFC1035
	# listen-on-v6 { any; }; # kita ingin IPv4 saja
};Catatan:
Setiap awal baris pada di dalam konfigurasi block seperti ada spasi kan? tapi itu bukan karakter spasi melainkan karakater Tab,  kalau pakai spasi nanti terdeteksi sebagai option, kalau dicek nanti kelihatan error unknown option ' '
Menambahkan forward dan reverse zone
Langkah selanjutnya menambahkan forward dan reverse lookup zone, buka file /etc/bind/named.conf.local
nano /etc/bind/named.conf.localTambahkan baris berikut, jangan lupa di sesuaikan dengan domain dan IPv4 server Anda
zone "idnetter.com" {
     type master;
     file "/etc/bind/zones/db.idnetter.com";
     allow-transfer { 192.168.0.1; }; # catatan: ini IP slave (ns2), jika ada
};
zone "168.192.in-addr.arpa" {
     type master;
     file "/etc/bind/zones/db.168.192";
     allow-transfer { 192.168.0.1; }; # ns2
};Konfigurasi forward lookup dan reverse lookup zone
Buat folder baru bernama zones untuk menyimpan file konfigurasi forward dan reverse zone BIND.
mkdir /etc/bind/zonesBuat file db.idnetter.com di dalam folder /etc/bind/zones
nano /etc/bind/zones/db.idnetter.comIsi dengan konfig berikut, sesuaikan
$TTL 604800
@	IN	SOA	ns1.idnetter.com.	admin.idnetter.com. (
	3	; Serial
	604800	; Refresh
	86400	; Retry
	2419200	; Expire
	604800)	; Negative Cache TTL
;
; name servers - NS records
@	14400	IN	NS	ns1.idnetter.com.
@	14400	IN	NS	ns2.idnetter.com.
; name servers - A records
@	14400	IN	A	192.168.0.1
ns1	14400	IN	A	192.168.0.1
ns2	14400	IN	A	192.168.0.1
mail	14400	IN	A	192.168.0.1
; CNAME
www	14400	IN	CNAME	idnetter.com.
; MX records - paling tidak ada 2 mx (backup)
@	14400	IN	MX	10	idnetter.com.
@	14400	IN	MX	20	mail.idnetter.com.
; TXT value - SPF
@	14400	IN	TXT	"v=spf1 a mx ip4:192.168.0.1 ~all"
; DMARC1
_dmarc  14400	IN	TXT	"v=DMARC1; p=none"
Kemudian membuat file reverse zone
nano /etc/bind/zones/db.168.192Isinya sebagai berikut, sesuaikan :
$TTL 604800
@	IN	SOA	ns1.idnetter.com.	admin.idnetter.com. (
	3	; Serial
	604800	; Refresh
	86400	; Retry
	2419200	; Expire
	604800)	; Negative Cache TTL
; Name servers
@	14400	IN	NS	ns1.idnetter.com.
@	14400	IN	NS	ns2.idnetter.com.
; PTR Records
1.0	14400	IN	PTR idnetter.com.	; 192.168.0.1
1.0	14400	IN	PTR ns1.idnetter.com.	; 192.168.0.1
1.0	14400	IN	PTR ns2.idnetter.com. 	; 192.168.0.1
1.0	14400	IN	PTR mail.idnetter.com.	; 192.168.0.1Sampai pada titik ini BIND sudah selesai disetup. Untuk mengetahui berhasil tidaknya sebelum service BIND direstart, sebaiknya cek konfigurasi satu persatu agar dapat diketahui jika ada kesalahan pada konfigurasi.
Cek konfigurasi BIND
Cek konfigurasi BIND dengan perintah berikut:
named-checkconf
Kalu tidak ada output apa-apa berarti konfigurasi sudah benar.
Cek konfigurasi file named forward lookup zone
named-checkzone idnetter.com /etc/bind/zones/db.idnetter.com
Hasilnya
zone idnetter.com/IN: loaded serial 3
OKCek konfigurasi reverse zone file
named-checkzone 168.129.in-addr.arpa /etc/bind/zones/db.168.192
kalau berhasil, jawabanya
zone 168.129.in-addr.arpa/IN: loaded serial 3
OKRestart BIND
Setiap kali mengedit konfigurasi named, jangan lupa restart service bind9 dengan menjalankan perintah berikut:
service bind9 restart
Selesai..
Sekarang saatnya menuju panel domain, kemudian membuat child nameserver ns1.idnetter.com dan ns2.idnetter.com yang diarahkan ke IP VPS. Berikutnya arahkan nameservernya ke ns1.idnetter.com dan ns2.idnetter.com , tentunya ganti dengan nama domain milik Anda sendiri.
Selamat mencoba, semoga berhasil. Tapi seandainya gagal, jangan ragu untuk order jasa setting VPS di idnetter.com ya.
Mantap bang tutorialnya ,
tapi kenapa ya pas di step Cek konfigurasi file named forward lookup zone
ada warning ignoring out-of-zone data, gitu
saya udah googling tapi bingung 😀
btw saya pake redhat bang
Maaf mas Andry, saya baru sadar, ini memang ada kesalahan pada tutorial. Perintah cek zone pada parameter pertama
168.129.in-addr.arpagak cocok sama zone"189.206.in-addr.arpa". Sekali lagi minta maaf, tutorial akan saya uji coba ulang dan akan saya update segera.Waktu saya set ns nya di panel domain, is not valid Nameserver, padahal semua sudah sesuai dari awal sampai akhir.
Itu disebabkan domain Nameserver belum diregisterkan. Cara register nameserver (dengan domain sendiri) dilakukan di panel domain, biasanya nama menunya: Child nameserver / Private nameserver / Personal nameserver.
1. Daftarkan
ns1.domainanda.comke IP server dan jugans2.domainanda.comke IP server2. Setelah berhasil mendaftarkan domain nameserver ns1 dan ns2 baru bisa mengganti Nameserver domain
saya memakai server fisik(pakai vmware untuk ns1 dan ns2) rencana saya pakaikan IP publik 2 2 nya, saya masih setting 1 ip saja dan sukses sampai akhir, yang saya bingung kemana selanjutnya? panel domain itu dimana? saya pakai ISP MLD.
Panel domain umumnya di provider tempat Anda membeli nama domain, bisa diakses melalui Client Area.
misal saya ingin membuat semuanya sendiri membuat dns server sendiri supaya bisa membuan child domain sendiri gimana mas?
panel domain misal mungkin pakai ISPConfig, ns1 dan ns2, ke 3nya itu di pasang di 3 server yg berbeda2?
misal saya punya 3 ip public ,192.168.111.1,192.168.111.2,192.168.111.3,
dan 3 server fisik siap pakai.
apa yg bisa saya lakukan?
Tutorial ini untuk 1 IP publik (Primary/Master) pada Virtual Private Server (VPS), jadi tidak ada backup. Kalau mau setup Master dan slave (backup), caranya sama. Ketiga server semua diinstall BIND, misal: Server1 sebagai tipe Master (primary), server2 sebagai tipe Slave (secondary) dan server3 sebagai Slave juga (tertiary). Kemudian untuk Name server domain, alurnya seperti ini:
‘options’ redefined near ‘options’ error ini terus di conf.options nya bang, butuh pencerahannya
ganti spasi dengan TAB
$TTL 604800
@ IN SOA ns1.idnetter.com. admin.idnetter.com. (
3 ; Serial
604800 ; Refresh
86400 ; Retry
2419200 ; Expire
604800) ; Negative Cache TTL
;
Itu subdomain admin.idnetter.com untuk apa ya? Harus sama membuat subdomain admin juga?
Itu adalah SOA record (A Start of Authority record)
admin.idnetter.com.adalah RNAME representasi administratornya, atau sama dengan[email protected]Coba cek lengkapnya disini.