IPv6: BIND DNS Operation
sumber: http://what-when-how.com/ipv6-advanced-protocols-implementation/ipv6-dns-operation-with-bind-part-1/
BIND (Berkeley Internet Name Domain) adalah aplikasi DNS server yang paling banyak digunakan. Di kembangkan oleh Internet Systems Consortium, Inc. (ISC), dan tersedia secara bebas di
Versi terakhir saat tulisan ini dibuat adalah versi 9. Semua versi BIND9 mendukung IPv6.
Secara umum ada tiga (3) operasi DNS:
- Authoritative servers
- Caching servers
- Stub resolvers
Package BIND berisi ke tiga (3) fungsi tersebut.Daemon named dapat berfungsi sebagai authoritative server saja, atau caching server saja, atau ke dua-nya sekaligus. Sebuah library portable resolver, biasanya dikenal sebagai libbind, dapat memberikan fungsi stub resolver.
BIND9 Secara Umum
Fitur teknis BIND9, secara umum mempunyai karakteristik berikut:
- Full compliance pada standard protocol DNS terakhir
- IPv6 support, untuk transport maupun content
- Support DNS security extension (DNSSEC)
- Thread-based software architecture untuk mendukung mesin dengan multiprocessor
Memperoleh BIND9
Secara gratis, bisa di peroleh melalui
- ISC Web
- FTP ftp://ftp.isc.org/isc/bind9/VERSION/
Build & Install BIND9
Cara paling gampang di Ubuntu menggunakan perintah
apt install bind9
BIND9 untuk operasi IPv6
File named.conf
File /etc/bind/named.conf bisa di edit untuk mengatur, hal seperti,
- Run-time parameter dari named
- Mendefinisikan zone
- dll.
Address Match List
- Untuk mengontrol DNS transport, daftar address yang match yang bisa berisi IPv4 address, IPv4 prefix, IPv6 address, IPv6 prefix.
- Untuk address IPv6 link-local atau prefix, ikita mengunkan notasi "%". Misalnya sebuah local link IPv6 address fe80::1 yang tersambung ke interface fxp0, maka penulisnya adalah fe80::1%fxp0. Dengan cara yang sama untuk satu subnet fe80::%fxp0/10.
Enable Accept Query IPv6
Untuk membuka akses agar BIND dapat di query menggunakan IPv6, kita dapat menggunakan opsi listen-on-v6. sebagai berikut,
listen-on-v6 { any; };
atau kalau kita ingin membatasi (hanya localhost), bisa,
listen-on-v6 { ::1; );
Access Control
BIND9 named mendukung beberapa opsi untuk kebutuhan access control. Teknik yang digunakan biasanya adalah address match list, contoh
allow-query { 192.0.2.0/24; 2001 :db8:1::/64; );
atau kalau hanya local subnetwork aja, bisa,
allow-query { localnets; };
Cara yang sama berlaku untuk opsi : allow-notify, allow-transfer, allow-recursion, dan allow-update-forwarding.
Spesifikasi Source Address
BIND9 memungkinkan user untuk menggunakan source address tertentu untuk DNS transport. Secara umum, opsi untuk IPv6 transport menggunakan konvensi penamaan xxx-source-v6 dimana xxx mengidentifikasikan operasi yang dilakukan. Penggunaannya sama dengan IPv4 yang equivalen.
Contoh, untuk menset source address DNS query yang dikirim dari sistem misalnya dari 2001:db8::1 maka kita dapat menggunakan perintah berikut,
query-source-v6 address 2001:db8::1;
Untuk source address untuk domain transfer,
transfer-source-v6 2001:db8::1;
Set Server Address
Dalam beberapa kasus IP address remote DNS Server harus di set dalam file konfigurasi. Ini terutama dibutuhkan pada saat melakukan zone transfer dimana IP address master (primary) server harus di set.
Berikut adalah contoh setup IP master server menggunakan IPv4 dan IPv6 sekaligus,
masters { 192.0.2.1; 2001:db8::1; };
Kita juga bisa men-spesifikasikan untuk statement server yang mendefinisikan karakteritik sebuah remote server. Disini remote server tidak menggunakan EDNS0,
server 2001:db8::1 { edns no; };
Masih ada beberapa opsi terkait IPv6 seperti preferred-glue dll yang bisa digunakan dalam operasi DNS.
Referensi
- http://what-when-how.com/ipv6-advanced-protocols-implementation/ipv6-dns-operation-with-bind-part-1/