DNS Forwarding adalah suatu cara yang dilakukan oleh DNS server mengubah arah pencarian dari permintaan DNS query yang dia sendiri tidak bisa menjawabnya. Jika anda menugaskan sebuah DNS server di site anda sebagai DNS forwarder, semua permintaan dan pertanyaan masalah DNS akan dikirim ke DNS forwarder terlebih dahulu.
DNS forwarding dalam DNS server dari Windows versi terdahulu mengurai / menjawab sendiri semua pertanyaan mengenai DNS yang dia sendiri tidak bisa menjawabnya secara local. Semua pertanyaan mengenai DNS yang tidak bisa dijawabnya secara local akan dikirim ke DNS forwarder yang ada. Akan tetapi dalam Windows 2003 keatas, anda bisa menggunakan Conditional Forwarder tergantung pada domain name dalam pencarian. Lihat juga memahami DNS naming system.
DNS forwarder adalah sangat penting sekali dalam suatu jaringan berskala besar yang mempunyai banyak site dan multi-domain. Perlu juga dipahami terlebih dahulu mengenai Default gateway sebelum lebih jauh membahas mengenai DNS forwarder.
Memahami Default Gateway
Jika suatu host TCP/IP ingin berkomunikasi dengan host lainnya dalam suatu jaringan yang lain, maka biasanya dia melakukannya melewati sebuah router. Router memiliki beberapa interface yang masing-masing terhubung ke jaringan yang terpisah, sementara routing adalah suatu proses menerima IP packet pada satu interface dan mengirimnya / melewatkannya ke interface lainnya menuju alamat akhir tentunya sesuai dengan routing table yang ada dalam router itu sendiri. Lihat juga memahami routing protocol disini. Untuk suatu host / komputer tertentu yang ada dalam jaringan TCP/IP maka default gateway adalah IP address dari suatu router yang ada, yang ada dalam broadcast range, yang memang di konfigurasi untuk meneruskan IP traffic ke jaringan lainnya.
Perhatikan pada diagram diatas, misalkan pada jaringan sederhana di rumahan yang mempunyai koneksi ke internet. Jika suatu komputer ingin browsing ke internet untuk suatu nama katakan www.wireless-router-net.com maka jika komputer local tidak mengetahui alamat IP address dari website tersebut, maka permintaan IP address ini akan dikirim ke ISP, tentunya harus melewati gateway yang di setting pada konfigurasi TCP/IP pada komputer tersebut.
Jika sebuah komputer mencoba berkomunikasi dengan host lain pada jaringan lain, maka komputer akan menggunakan subnet mask untuk menentukan apakah host yang diminta berada pada local atau remote. Jika tujuan host tersebut adalah berada pada segment jaringan yang sama alias local jaringan, maka komputer tersebut cukup mengirim paket kepada local jaringan dengan cara broadcast paket. Akan tetapi jika tujuannya adalah host remote site, komputer akan mem-forward paket keluar melalui default gateway yang didefinisikan pada property TCP/IP. Router yang dispesifikasikan di dalam default gateway kemudian bertanggung jawab untuk meneruskan paket kepada jaringan yang tepat. DNS forwarding juga mempunyai konsep yang sama dengan default gateway ini. Pada skala jaringan yang besar dengan multi-domain maka DNS forwarders dapat di set menurut kondisi tergantung domain name dalam permintaan.
Konfigurasi Property DNS Server
Begitu anda selesai instalasi DNS server, anda mungkin perlu memodifikasi setting default nya menurut kebutuhan jaringan anda. Setting DNS bisa dilakukan melalui property dialog box pada console DNS. Setting yang anda lakukan pada property dialog box ini tidaklah diaplikasikan ke suatu zone tertentu akan tetapi berlaku hanya pada server tersebut secara umum. Lihat juga artikel cara setting DNS server.
Membangun Cache Site Yang Besar Dengan DNS Forwarders
Sebagai administrator jaringan tentunya anda tidak ingin membiarkan pengiriman traffic dengan volume yang besar ke luar site, baik karena koneksi jaringan adalah link yang lambat dengan delay yang tinggi, atau karena koneksi melalui sambungan satellite ke remote site. Untuk itulah anda perlu memanage traffic DNS dengan jalan setting DNS forwarders dan jika perlu anda bisa menggunakan DNS forwarders bersyarat – conditional forwarders yang merupakan fitur baru dari Windows server 2003 keatas. Server yang menerima permintaan dari server yang mem-forward permintaan disebut Forwarder.
Jika anda menugaskan sebuah atau lebih server pada site anda sebagai forwarders, semua permintaan off-site akan dikirim ke forwarder terlebih dahulu. Ide ini dimaksudkan untuk menghandel semua permintaan off-site yang dihasilkan di site anda, membangun cache informasi yang besar. Untuk segala permintaan off-site ada kemungkinan besar bisa dijawab oleh DNS forwarders lewat cache yang sudah dibangun olehnya, sehingga menghindari traffic keluar site.
Cara / modus eperasi adanya suatu primary dan secondary name server sedikit berbeda jika diarahkan menggunakan suatu DNS forwarder. Jika informasi yang diminta sudah ada di dalam database dari data authority dan cache data, maka ia menjawab dengan informasi yang ada ini, bagian operasi ini yang tidak ada perubahan. Akan tetapi jika informasi tidak ada dalam database, maka name server mengirim query kepada DNS forwarder (yang di konfigurasikan) dan menunggu beberapa saat untuk jawaban sebelum melanjutkan operasi normalnya dan menghubungi remote server sendiri. Perbedaan apa yang dilakukan oleh name server ini adalah mengirim query yang recursive kepada DNS forwarder, mengharapkan suatu jawaban. Diluar itu semua name server mengirim query non-recursive kepada name server yang lain dan melakukan deal dengan respon yang merujuk hanya kepada name server lainnya.
Micorosoft memperkenalkan suatu fitur baru yang disebut sebagai conditional forwarding yang membuat DNS forwarding menjadi lebih fleksibel dibawah Windows server 2003 keatas. Pada versi DNS server Windows sebelumnya, semua permintaan yang tidak bisa dijawab secara local dikirim kepada sekelompok DNS forwarder yang sama (yang sudah disetup). Dengan menggunakan Conditional forwarding, anda bisa melakukan konfigurasi DNS server untuk menggunakan sekelompok DNS server yang berbeda tergantung domain name dalam query.
DNS conditional forwarders adalah sangat bermanfa’at dalam suatu jaringan yang sangat besar dengan suatu security policy yang ketat yang membatasi konektivity internet kepada host-host tertentu.
DNS forwarding di configure dengan memilih tab forwarders pada window property server. perlu diingat bahwa forwarding dikonfigure pada setiap name server kecuali forwarders itu sendiri.
Untuk meng-enable DNS forwarding, anda perlu menspesifikasikan DNS forwarders untuk suatu domain tertentu atau defaultnya adalah semua DNS domains (All other DNS domains). Default ini berlaku jika tidak ada kesamaan dari domain yang dikonfigurasikan. Anda bisa menspesifikasikan sampai 6 forwarder untuk setiap domain. Name server meneruskan kepada mereka menurut urutan dalam list, menggunakan default time-out sebesar 5 detik per forwarder, jika forwarder pertama tidak ada respon dalam 5 detik, maka urutan forwarder berikutnya yang mencoba, begitu seterusnya. Time-out forwarder ini bisa diubah dengan mengubah kolom “the number of seconds before forward queries time out”.
Jika anda menggunakan DNS forwarders, cobalah untuk menjaga konfigurasi site anda sederhana. Kalau tidak, anda akan mengalami konfigurasi yang sangat berbelit-belit. Berikut adalah tip-tip yang perlu dipertimbangkan:
- Jangan melakukan konfigurasi forwarding pada mid-level name server. mid-level server kebanyakan merujuk name server kepada sub-domain name server. jika mereka telah dikonfigurasikan untuk meneruskan paket, apakah mereka merujuk kepada sub-domain name server, ataukah mereka menghubungi sub-domain name server untuk mendapatkan jawaban? Yang manapun berjalan, anda kemungkinan membuat konfigurasi site anda menjadi susah untuk dimengerti.
- Hindari forwarder berantai. Jangan configure server A untuk meneruskan ke server B, server B meneruskan ke server C, dan yang paling buruk jika kembali lagi ke server A.
Forwarding Name Server Yang Lebih Ketat
Anda bisa saja membuat konfigurasi lebih ketat name server anda – menyetop layanan bahkan untuk mencoba contact ke suatu server off-site sekalipun, jika server forwarder sedang down atau tidak respon. Anda bisa melakukannya dengan memberi sinyal kepada server untuk tidak melakukan fall-back untuk menggunakan proses resolusi recursive jika tidak ada respon dari satupun forwarders. Contreng kotak Do not use recursion for this domain pada tab konfigurasi forwarders. Terminology ini membingungkan sebenarnya: contrengan ini tidak ada hubungannya dengan query yang dikirim kepada forwarders. Name server yang melakukan forwarding selalu mengirim suatu query yang recursive kepada forwarders. Apa yang dilakukan dalam checkbox ini adalah apa yang terjadi setelah query recursive dikirim. Jadi bukannya melarang melakukan query yang recursive.
Suatu forward-only server adalah variasi pada suatu server yang mem-forward. Ia masih menjawab query dari data authoritative dan chache data. Akan tetapi ia bergantung sepenuhnya kepada forwarder nya; ia tidak akan berusaha mengontact server manapun jika ia tidak mendapatkan informasi dari server forwarder.
Anda harus benar-benar mempertimbangkan perlunya adanya forward-only server ini, apa memang suatu keharusan. Karena keberadaan server ini se-mata-mata tergantung kepada forwarders. Konfigurasi yang serupa (dengan tidak menjalankan forward-only server sama sekali) adalah dengan mengkonfigure host resolver mengarah kepada forwarders yang anda gunakan. Dengan begitu anda masih menyandarkan kepada forwarders, aplikasi yang melakukan query kontak langsung kepada forwarders ketimbang harus kontak ke forward-only server. anda kehilangan local caching yang harus dilakukan forward-only server akan tetapi anda mengurangi keruwetan konfigurasi site anda dengan menjalankan lebih sedikit “restricted” name server.