Friday, December 28, 2007

maksud forward dan reserve pada pembuatan DNS

Membangun DNS Server
Komunikasi data dalam jaringan komputer menggunakan IP Address sebagai alamat setiap host. Sulit bagi manusia untuk mengingat banyak nomor IP untuk mengakses suatu host dalam jaringan intranet maupun internet. Domain Name System (DNS) mengubah nama domain (misal: www.alphamedia.co.id) menjadi Ip address (192.168.9.110) agar lebih mudah diingat.
Intoduction to DNS
Sebelum membahas DNS lebih dalam, penting bagi kita untuk mengerti beberapa hal mendasar dalam membangun system ini.
DNS Domain
Domain merupakan suatu identitas/pengenal keberadaan suatu kelompok/organisasi di internet. Dengan nama ini orang lain akan mengakses host yang berada dalam domain kita. Dalam domain juga terdapat sub-domain yang bisa juga sebagai nama masing-masing host tersebut.
BIND
BIND merupakan singkatan dari Berkeley Internet Name Domain, suatu kelompok yang membuat sistem DNS yang berjalan pada Linux. Program yang dihasilkan untuk menjalankan DNS server dikenal sebagai named, merupakan daemon yang bertugas untuk menjawab DNS query dari remote machines.
DNS Client
Suatu komputer klien tidak mempunyai database nama domain komputer, klien ini akan meminta DNS server untuk menerjemahkan nama domain menjadi nomor IP. Pada Linux, untuk mengkonfigurasikan DNS server dapat dilakukan dengan memodifikasi file /etc/resolv.conf dan meletakkan nama DNS server pada file ini.
Authoritative DNS Server
Authoritative server menyediakan informasi lengkap suatu domain. Server inilah yang berhak menjawab query terhadap nama domain yang telah definisikan. Misalnya server 192.168.9.3 dijadikan sebagai authoritative server untuk domain alphamedia.co.id.
Bagaimana DNS Server Menemukan Informasi Domain suatu Site
Dalam jaringan internet, terdapat sekitar 13 root authoritative server (super DNS) yang akan di-query pertama kali oleh semua server DNS didunia untuk mencari keberadaan suatu domain. Super DNS ini menyimpan semua informasi tentang authoritative server setiap domain – com, net, org, dll -. Sebagai contoh, jika kita mendaftarkan domain-kita.com, maka root DNS hanya menyimpan nomor IP authoritative server yang berhak menjawab query terhadap domain-kita.com. Selanjutnya administrator domain-kita.com yang akan mendefinisikan Ip address untuk domain ini atau bisa juga menambahkan record sub-domain lainnya.
Menggunakan DNS Caching Name Server
Kebanyakan server tidak langsung meng-query authoritative server, tetapi lebih cenderung meng-query caching DNS. Caching DNS menyimpan (sementara) informasi yang sering di-qurey. Jadi query bisa berlangsung lebih cepat tanpa harus menghubungi authoritative server yang bersangkutan atau root DNS.
Testing DNS dan DNS Resolution
DNS memetakan nama domain menjadi Ip address, seperti alphamedia.co.id menjadi 192.168.9.1. Ini dinamakan dengan forward lookup. Sebaliknya untuk memetakan Ip address menjadi domain dinamakan reverse lookup, yang memetakan ip address menjadi nama domain. Dalam beberapa hal, banyak domain menggunakan satu ip address sehingga reverse lookup menjadi tidak sesuai. Sehingga pada reserve lookup lebih umum me-resolve ip address menjadi nama domain dari ISP. Ada beberapa command yang digunakan untuk melakukan testing DNS, yaitu perintah host dan nslookup.
Menggunakan Perintah host
Perintah ini digunakan pada Linux untuk mendapatkan ip address dari suatu domain, misalnya:
[root@centos ~]# host alphamedia.co.id
alphamedia.co.id has address 192.168.9.110
Menggunakan Perintah nslookup
Perintah ini dapat digunakan pada Windows dan Linux untuk mendapatkan ip address dari suatu domain, misalnya:
[root@centos /]# nslookup alphamedia.co.id
Server: 192.168.9.100
Address: 192.168.9.100#53
Name: alphamedia.co.id
Address: 192.168.9.110
Installasi Paket BIND
Paket installasi BIND pada RedHat, CentOS dan Fedora tersedia dalam format RPM. Paket file yang diinstall adalah:
Å bind-9.2.4-2
Å bind-utils-9.2.4-2
Å bind-libs-9.2.4-2
Å bind-chroot-9.2.4-2
File bind-9.2.4-2 adalah paket server DNS itu sendiri, sedangkan beberapa file lain merupakan aplikasi pendukung atau utility yang digunakan dalam bekerja dengan DNS. Pada umumnya saat awal melakukan installasi server CentOS / Redhat paket-paket ini sudah terinstall secara default. Jika belum terinstall maka dapat dilakukan dengan cara:
[root@centos /]# rpm –ivh bind-9.2.4-2
[root@centos /]# rpm –ivh bind-utils-9.2.4-2
[root@centos /]# rpm –ivh bind-libs-9.2.4-2
[root@centos /]# rpm –ivh bind-chroot-9.2.4-2
Menjalankan Service BIND
Untuk men-start, stop me-restart BIND secara manual dapat dilakukan dengan cara:
[root@centos /]# service named stop
Stopping named: [ OK ]
[root@centos /]# service named start
Starting named: [ OK ]
[root@centos /]# service named restart
Stopping named: [ OK ]
Starting named: [ OK ]
Note: Setiap kali melakukan perubahan konfigurasi BIND, maka service ini perlu di-restart.
File /etc/resolv.conf
DNS client pada Linux menggunakan file ini sebagai informasi untuk menentukan DNS server. Dalam file ini terdapat record yang terdiri dari dua kolom. Kolom pertama merupakan keyword dan kolom kedua adalah nilai dari keyword tersebut. Keyword yang digunakan oleh adalah:

Keyword
Value
nameserver
IP Address dari nameserver
domain
Local domain yang di-query secara default
search
Nama domain yang akan di-query tanpa harus menyebutkan domainnya, cukup nama host.

Sebagai contoh isi dari file /etc/resolv.conf adalah:
search alphamedia.co.id
nameserver 192.168.9.1
nameserver 192.168.9.2
Baris pertama dari file ini seharusnya adalah nama domain dari network yang anda miliki.
Konfigurasi Caching Nameserver
Secara default installasi DNS Server pada CentOS/RedHat merupakan Caching Nameserver.
File Konfigurasi BIND
Secara normal, BIND menggunakan beberapa file sebagai konfigurasinya, antara lain /etc/named.conf, /var/named/*. Namun untuk alasan keamanan supaya Hacker tidak bisa masuk kedalam keseluruhan server, maka digunakan chroot jail. Dengan menentukan /var/named/chroot sebagai chroot jail bagi named, maka bind menganggap bahwa direktori tersebut (/var/named/chroot) merupakan root direktori. Untuk mengetahui apakah bind berjalan menggunakan chroot atau tidak dapat dilihat dari installasi add-on:
[root@centos /]# rpm -q bind-chroot
bind-chroot-9.2.4-2
Tabel letak file konfigurasi BIND pada CentOS / RedHat

File
Purpose
BIND chroot file
Regular BIND File
named.conf
Konfigurasi utama dan deklarasi zone file.
/var/named/chroot/etc
/etc
mdc.key
mdc.conf
File authentifikasi named
/var/named/chroot/etc
/etc
Zone files
Database yang berisi mapping domain ke ip address, dan beberapa info lain.
/var/named/chroot/var/named
/var/named

Mengkonfigurasikan Nameserver Regular
Server DNS yang dibuat perlu direferensikan untuk menggunakan DNS service yang ada padanya sendiri dengan memodifikasi /etc/resolv.conf.
Nameserver 127.0.0.1
Mengkonfigurasikan named.conf
File /etc/named.conf atau /var/named/chroot/etc/named.conf berisi konfigurasi utama dari DNS Server, dan memberikan informasi kepada BIND dimana keberadaan zone file. Dalam hal ini kita mendefinisikan forward zone untuk alphamedia.co.id:
zone "alphamedia.co.id" IN {
type master;
file "alphamedia.co.id.zone";
allow-query { any; };
};
Jika terdapat domain lain dapat juga disisipkan pada akhir baris, sebagai contoh:
zone "domain-kita.com" IN {
type master;
file "alphamedia.com.zone";
allow-query { any; };
};
Note: baris allow-query menyatakan bahwa seluruh network dapat melakukan query terhadap zone ini. Untuk membatasi query pada network tertentu dapat dilakukan dengan cara:
allow-query { 192.168.9.0/24; };
Selanjutnya membuat konfigurasi untuk reserve zone.
zone "9.168.192.in-addr-arpa" IN {
type master;
notify no;
file “192-168-9.zone”;
};
Membuat Zone File
Terdapat beberapa hal yang perlu diingat ketika melakukan konfigurasi DNS zone:
Å Setiap zone file dapat berisi komentar pada akhir baris dengan memberikan tanda semicolon (;).
Å Secara default zone file terletak pada direktori /var/named atau /var/named/chroot/var/named.
Å Setiap zone file terdiri dari beberapa record: SOA, NS, MX, A dan CNAME yang mempunyai area berbeda pada BIND.
Time to Live
Entri pertama dari zone file adalah TTL (Time To Live), yang berisi waktu yang digunakan oleh caching nameserver untuk menyimpan informasi ini. Jika waktu yang diset adalah 3 hari, maka caching nameserver lain yang menyimpan record ini akan mempertahankan cache-nya selama waktu tersebut.
DNS Resource Record
Baris selanjutnya adalah DNS Resource Record yang merupakan definisi informasi dari zone. Format yang digunakan adalah:
Name Class Type Data
Terdapat perbedaan type dari record untuk mail (MX), forward lookups (A), reverse records (PTR), alias (CNAME), Start of Authority (SOA).
SOA Record
Record pertama dalam Resource Record adalah Start of Authority (SOA) yang berisi informasi administrasi umum dan informasi kontrol tentang domain. Format SOA adalah:
Name Class Type Name-Server Email-Address Serial-No Refresh Retry Expire Minimum-TTL
Record ini bisa menjadi panjang sekali, sehingga lebih umum ditulis dalam beberapa baris seperti contoh:
@ IN SOA ns.alphamedia.co.id. yasriady (
42 ; serial number
3H ; refresh
15M ; retry
1W ; expiry
1D ) ; minimum
Penjelasan SOA:

Field
Deskripsi
Name
Nama dari root zone. Tanda @ adalah nama lain (shorthand) untuk zone ini.
Class
Terdapat beberapa class DNS yang berbeda. Class yang sering digunakan untuk SOHO/Home adalah “IN”. Class lainnya sangat jarang digunakan di internet.
Type
Type resource record ini, ini adalah SOA resource record. Terdapat juga type lain, tapi jarang digunakan.
Name-Server
FQDN dari primary nameserver.
Email-Address
Email address dari administrator server.
Serial-No
Serial number yang digunakan sebagai identitas setiap kali record dimodifikasi.
Refresh
Jika terdapat slave DNS, maka ia akan memeriksa master server setiap interval yang ditetapkan disini.
Retry
Menentukan waktu pengulangan bagi slave jika fail melakukan refresh.
Expiry
Waktu expiry bagi slave untuk data yang diperolehnya dari server.
Minimum-TTL
Durasi waktu minimum caching bagi slave.

Note: SOHO/Home networking jarang sekali menggunakan slave DNS yang merupakan pemborosan system.
Dalam contoh diatas:
Name : alphamedia.co.id
Class : IN
Type : SOA
Name-Sever : ns.alphamedia.co.id
Email-Address : yasriady@alphamedia.co.id This email address is being protected from spam bots, you need Javascript enabled to view it
Serial-No : 42
Refresh : 3H
Retry : 15M
Expiry : 1W
Minumum-TTL : 1D
Record NS, MX, A dan CNAME
Seperti record SOA, record NS, MX, A, PTR, dan CNAME masing-msaing juga menempati satu baris dengan format umum yang hampir sama:

Record Type
Field Description
Field Name
Class Field
Type Field
Data Field
NS
Biasanya blank
IN
NS
IPAddr atau CNAME dari nameserver
MX
Domain yang digunakan untuk email, biasanya sama dengan domain dari zone ini sendiri.
IN
MX
Mail server DNS name.
A
Nama dari suatu server dalam domain.
IN
A
IPAddr dari server
CNAME
Nama alias server
IN
CNAME
“A” record dari server
PTR
Oktet terakhir dari IPAdd server
IN
PTR
Fully Qualified dari nama server



TTL = 86400 seconds

Contoh zone file (/var/named/chroot/var/named/alphamedia.co.id) yang akan kita gunakan untuk forward zone:

Name= @ (alphamedia.co.id)


$TTL 86400
@ IN SOA ns.alphamedia.co.id. yasriady (
42 ; serial (d. adams)

Class = IN

3H ; refresh
15M ; retry

Type = SOA

1W ; expiry
1D ) ; minimum
NS ns ; Inet Addr of nameserver
alphamedia.co.id. MX 5 mail ; Primary Mail eXchanger
alphamedia.co.id. IN A 192.168.9.1 ; IPAddr domain ini
www IN A 192.168.9.1

NameServer

ns IN A 192.168.9.1
mail IN A 192.168.9.2
pop IN CNAME mail
imap IN CNAME mail
smtp IN CNAME mail
ldap IN A 192.168.9.3
Contoh reverse zone (/var/named/chroot/var/named/192-168-9.zone):
; Filename : 192-168-9.zone
;
; Zone file for 192.168.9.x
;
$TTL 86400
@ IN SOA ns.alphamedia.co.id. yasriady (
42 ; serial (d. adams)
3H ; refresh
15M ; retry
1W ; expiry
1D ) ; minimum
NS ns ; Nameserver addresss
1 PTR alphamedia.co.id.
2 PTR mail
3 PTR ldap
Mendaftarkan Nama Domain Internet
Ada banyak perusahaan di internet yang akan membantu anda jika ingin mendaftarkan nama domain. Beberpa diantaranya adalah VeriSign, RegisterFree, Yahoo. Untuk domain Indonesia (net.id, co.id, or.id, ac.id, go.id) dapat mendaftar ke Indonesian NIC (http://www.idnic.com).
Kesimpulan
DNS Management adalah hal cukup kritis dalam memaintain suatu domain, mail server, website atau service lainnya. Meskipun membangun server DNS termasuk sedikit rumit, akan tetapi modifikasi terhadap DNS yang sudah berjalan sangat jarang dilakukan karena setiap server di internet pada umumnya mempunyai IP Address yang statik.

No comments: