Build DNS Server IPV6 dengan DBNDNS di Kimsufi menggunakan OpenVZ Proxmox
Sebelum membangun DNS server IPV6, kita coba persiapkan terlebih dahulu infrastruktur IPV6 di dalam Proxmox. Karena dalam percobaan kali ini menggunakan Proxmox sebagai host, dan OpenVZ sebagai Guest.
- OpenVZ dengan IPV4.
- OpenVZ dengan IPV6
- Install DBNDNS di OpenVZ.
OpenVZ dengan IPV4
install openvz terlebih dahulu dengan create CT
via Proxmox. setelah itu setting IPV4 misal dengan 10.10.11.2
.
setelah openvz ok. setting Host Proxmox agar dapat berkomunikasi dengan Guest OpenVZ. misal kita set ip host proxmox dengan ip 10.10.11.1
di interface venet0.
ifconfig venet0 10.10.11.1 netmask 255.255.255.0
start OpenVZ dengan perintah:
vzctl start OpenVZ_ID
Gunakan perintah vzlist -a
untuk melihat OpenVZ_ID
Ping dari Host untuk melihat hasilnya:
root@ipv6:~# ping 10.10.11.2
PING 10.10.11.2 (10.10.11.2) 56(84) bytes of data.
64 bytes from 10.10.11.2: icmp_req=1 ttl=64 time=0.106 ms
64 bytes from 10.10.11.2: icmp_req=2 ttl=64 time=0.067 ms
Ping dari Guest OpenVZ untuk test:
root@ipv6:~# vzctl enter 104
entered into CT 104
root@nsX:/# ping 10.10.10.1
PING 10.10.10.1 (10.10.10.1) 56(84) bytes of data.
64 bytes from 10.10.10.1: icmp_req=1 ttl=64 time=0.089 ms
Sampai di sini kita sudah membuat jaringan internal dari Host Proxmox ke Guest OpenVZ atau sebaliknya. Agar Guest OpenVZ dapat ping keluar (internet), maka perlu ditambahkan tabel NAT IPTABLE
:
iptables -t nat -A POSTROUTING -s '10.10.11.0/24' -o vmbr0 -j MASQUERADE
bagian ini adalah optional saja, karena kadangkala ada repository yang belum dapat ngreach dari IPV6, maka kita perlu koneksi IPV4. Jika repostory sudah didukung IPV6. skip saja.
OpenVZ dengan IPV6
Tambahkan di /etc/sysctl.conf
:
net.ipv6.conf.all.forwarding=1
net.ipv6.conf.all.proxy_ndp=1
net.ipv6.bindv6only=1
Reload:
sysctl -p
Untuk menambahkan IPV6 di dalam Guest OpenVZ dari Host Proxmox tinggal ketik perintah:
vzctl set OPENVZ_ID --ipadd 2001:41d0:8:9a2d::d7d7/64 --save
secara default kita akan mendapatkan IPV6 dari Kimsufi sebanyak /64.
Untuk setting DNS Google IPV6 di Guest OpenVZ dari Host Proxmox tinggal ketik:
zctl set OPENVZ_ID --nameserver 2001:4860:4860::8888 --save
Cek Hasilnya, masuk ke kontainer dulu:
root@nsX:/# curl ip.appspot.com;echo
2001:41d0:8:9a2d::d7d7
root@nsX:/#
Terlihat sudah menggunakan ipv6.
Install DBNDNS di OpenVZ
Kenapa pakai DBNDNS ? . Karena berdasarkan informasi dari http://blog.reimus.ca/how-to-install-tinydns-djbdns-on-linux-debian/ , versi djbdns di debian ada 2 paket, yaitu djbdns yang versi asli original + 3 minor patches dan dbndns
yaitu fork dari djbdns + ipv6 support patch.
Sebelum installasi, arahkan dulu repository ke dalam versi sid:
deb http://ftp.debian.org/debian sid main contrib
Install DBNDNS
:
apt-get install dbndns
Konfigurasi:
useradd Gtinydns;
useradd Gdnslog;
tinydns-conf Gtinydns Gdnslog /etc/tinydns7 2001:41d0:e:dc4::d7d7
ip 2001:41d0:e:dc4::d7d7
adalah IPV6 yang kita tambahkan tadi.
Create Symlink agar service dapat jalan:
ln -s /etc/tinydns7 /etc/service/tinydns7
check service
root@ipv6:~# svstat /etc/service/tinydns7
/etc/service/tinydns7: up (pid 4421) 70914 seconds
root@ipv6:~#
untuk menambahkan IPV6 lain tinggal ulangi:
dari Host Proxmox
vzctl set OPENVZ_ID --ipadd 2001:41d0:8:9a2d::d8d8/64 --save
dari Guest OpenVZ:
useradd Gtinydns8;
useradd Gdnslog8;
tinydns-conf Gtinydns8 Gdnslog8 /etc/tinydns8 2001:41d0:e:dc4::d8d8
ln -s /etc/tinydns8 /etc/service/tinydns8
sampai di sini sudah selesai. data.cdb
dari tinydns bisa ditempatkan di dalam directory /etc/tinydnsX/root/
cek terakhir:
root@ipv6:~# dig host @IPV6_DNS_SERVE
Tambahan
Untuk menambahkan IPV6 di Host Proxmox Kimsufi bisa dengan:
ip -6 addr add YOUR_IPV6_ADDRESS/64 dev vmbr0
ip -6 addr add 2001:41d0:8:9a2d::2/64 dev vmbr0
Karena saya memakai promox, default route sudah otomatis didefine. Alamat route default route di Kimsufi :
XXXX:XXXX:X:XXFF:FF:FF:FF:FF
untuk test, bisa test ping6
ke 2001:41d0:8:9a2d::2
atau lihat route dengan command ip -6 route show
root@ipv6:~# ip -6 route show | grep default
default via 2001:41d0:8:9aff:ff:ff:ff:ff dev vmbr0 metric 1024 mtu 1500 advmss 1440 hoplimit 0
root@ipv6:~#
Referensi: