Konfigurasi yang
akan dibicarakan di sini adalah versi 8.1.2, bukan 4.x. Kedua versi ini sedikit
mempunyai perbedaan. Konfigurasi ini akan dibagi-bagi lagi menjadi jenis-jenis
DNS yaitu cache, primary dan secondary.
Secara umum file-file yang perlu
dibuat adalah :
·
Named.conf
File ini merupakan
file konfigurasi utama dari named. Di file ini akan dinyatakan file-file
database yang akan digunakan untuk menterjemahkan IP address ke Hostname atau
sebaliknya.
·
File
database domain
File ini berisikan
nama-nama host dari sebuah domain yang
di mapping ke ip addressnya .
·
File
database reverse domain
Kebalikan dari file
database domain, file ini memuat daftar ip address yang dimapping ke host name
dari domain tertentu.
Ketiga file ini mutlak
dibutuhkan untuk membuat name server. Untuk DNS tipe cache, hanya file pertama
yang dibutuhkan. Sedangkan file kedua dan ketiga diperlukan untuk primary dan
secondary server.
Konfigurasi File Named.conf
File ini merupakan
file utama dan yang pertama dibaca sewaktu memulai named. File ini berisikan
jenis server apa yang akan dibuat, apa saja nama-nama file database domain dan
reverse-nya ( kebalikannya ). Berikut diterangkan beberapa optionsnya :
1. Letak file konfigurasi
Syntax :
options {
directory /nama/direktori ;
};
Contoh : options {
directory /var/named;
};
2. Pengaturan zone
Syntax :
zone "nama.zone.com" {
type
jenis_type_server;
file
"nama_file_database_host" ;
};
Contoh :
zone "salman.itb.ac.id" {
type master;
file "db.salman.itb.ac.id ";
};
Jika jenis server yang akan
digunakan adalah secondary atau dalam versi 8 ini disebut slave, maka sintaks
yang digunakan :
zone "salman.itb.ac.id" {
type slave;
masters {
167.205.206.100;
};
};
IP address yang disebutkan
diatas merupakan IP address Domain Name Service
Untuk zone root atau dengan kata
lain ".", cara penggunaannya :
zone "." {
type
hint;
file
"named.root";
};
Zone-zone resolve, dapat
dituliskan sebagai berikut :
zone "9.205.167" {
type master;
file
"9.205.167.in-addr.arpa";
};
Pada contoh di atas, zone
“9.205.167” merupakan kumpulan ip address yang berada pada ip kelas C
167.205.9.x, mulai dari 167.205.9.0-167.205.9.255.
3. ACL (Access Control List)
ACL adalah daftar alamat ip atau
host. Daftar ini diperlukan bila ada rule yang mengharuskan. Misalnya DNS
server ini hanya boleh dipakai oleh sekelompok tertentu saja, sisanya di tolak.
Hal ini diperlukan untuk membuat DNS server yang diquery dari dalam firewall
acl name {
daftar_list_nama;
};
Query
Dengan query ini, named dapat di
set untuk memenuhi permintaan query dari host-host dengan ip tertentu saja.
Selain ip-ip tersebut akan ditolak.
allow-query {
167.205/16;
}
Transfer
Seperti sudah dibicarakan
sedikit di atas, hubungan antara primary ( master ) dengan secondary ( slave )
diperlukan sebuah sinkronisasi. Untuk melakukan transfer zone , master harus
memberikan izinnya kepada slave seperti demikian :
allow-transfer {
167.205.15.7;
}
CONTOH FILE NAMED.CONF
Dalam contoh kali
ini kita mengunakan domain salman.itb.ac.id, dan diasumsikan jaringan pada
domain salman.itb.ac.id mempunyai network address 167.205.206.96.
options {
directory
“/var/named/”;
fetch-glue
no;
recursion no;
allow-query
{167.205.206.96/26;127.0.0/8;};
allow-transfer
{167.205.206.99;};
zone "." {
type hint;
file "db.cache";
};
zone
"0.0.127.in-addr.arpa" {
type master;
file "db.127.0.0";
};
zone “salman.itb.ac.id” in {
type
master;
file
“db.salman.itb.ac.id”;
};
zone “206.205.167.in-addr.arpa”
in{
type
master ;
file
“db.167.205.206”;
};
Option “fetch-glue no” digunakan bersama dengan option “recursion
no” untuk menjaga cache server dari
“pertambahan” atau “terkorupsi”. Selain itu men-disable recursion membuat
server kita menjadi mode pasif, tidak pernah mengirim request ke name server
yang lain. Mode ini sulit di-spoof.
Option “allow-query”
menyebutkan bahwa hanya komputer pada network address 167.205.206.96 dan
komputer local saja yang bisa mengakses DNS server.
Option “allow-transfer “
menyebutkan IP address host yang menjadi
secondary name server.
Pada konfigurasi
diatas kita terlihat bahwa kita mempunyai 4 file database yang terletak dibawah
direktori /var/named/. File tersebut antara lain:
1. db.cache
Berisi daftar root DNS yang ada di seluruh dunia.
2. db.127.0.0
Berisi mapping local
hostname ke IP address
3.
db.salman.itb.ac.id
Berisi mapping IP
address ke hostname pada domain salman.itb.ac.id
4. db.167.205.206
Berisi mapping hostname ke IP address pada domain salman.itb.ac.id
Konfigurasi File Database Name
Server
Selain membuat file
named.conf, file yang perlu kita buat adalah file database domain dan file
reverse database domain Pada modul kali in akan dibahas tentang kedua file
tersebut.
Konfigurasi
File Database Domain
Dalam file ini
terdapat satu set informasi untuk setiap domain. Set informasi untuk suatu
domain bisa berupa IP address, nama alias , nama sever yang bertanggung jawab
atas domain tersebut dan lain-lain.
Masing-masing
informasi dalam satu set informasi disebut “resource record”.
Format standart untuk setiap
resource record dalam file database domain adalah :
<hostname
atau zona> <ttl> <address class> <tipe> <catatan
spesifik>
Keterangan :
1.
Field pertama ialah nama
domain atau bisa juga namat host
yang akan diresolve. Penulisan field ini selalu dimulai pada kolom pertama.
Untuk semua
resource record selain resource record pertama dalam suatu file, field ini
boleh dikosongkan. Jika field ini dikosongkan maka domain yang tidak disebutkan
ini akan merujuk ke resource record pertama.
2.
ttl (time to live) adalah waktu lamanya data boleh
disimpan dalam file database ini. Bila field ini dikosongkan maka TTL dipakai
adalah TTL yang disebutkan dalam resourch record SOA (Start Of Autority). SOA
akan diterangkan setelah ini.
3.
address class . hanya satu class yang di support, yaitu
IN, untuk Internet class.
4.
Type resource record :
Beberapa tipe
yang banyak dipakai adalah
A.
SOA (Start of Authority)
Untuk
mendeklarasikan suatu zona dan pengaturnya. Record ini mutlak diperlukan dalam
suatu name server. Setiap zona hanya memiliki sebuah zona.
<zona> IN
SOA <origin> <contact> (
serial
refresh
retry
expire
minimum )
-Zona : Mendefinisikan zona DNS
-Origin : Primary DNS server
- Contact : email address dari administrator/penanggung jawab dari
Name Server ini. Tanda @ pada email address diganti dengan tanda . ( titik).
-Serial : Nomor seri zona
file yang merupakan salah satu acuan bagi secondary server, apakah record yang
ada lebih baru. Sebaiknya disesuaikan dengan saat pembuatan file, sintak yang
dianjurkan adalah YYYYMMDDHHmm (tahun-bulan-tanggal-jam-menit). Sintak seperti
di atas akan membantu dalam melacak perubahan.
-Refresh : Selang waktu untuk secondary server mengecek
data di primary server.
-Retry : Lama waktu
tunggu bagi secondary server untuk mengulangi pengecekan jika usaha pengecekan
sebelumnya gagal.
-Expire : Lama waktu
data di secondary server kadaluarsa sejak kegagalan refresh.
-Minimum : nilai time to live untuk semua
record.
B. Name Server Record
Merupakan
identifikasi DNS server untuk sebuah domain.
Format yang umunya
dipakai :
[domain} IN NS
dns_server
Keterangan:
·
domain
:
domain yang ditangani oleh dns server yang disebutkan dalam field dns_server
·
.dns_server
: Hostname dari server yang bertanggung jawab
atas domain tersebut di depan.
C. Mail Exchanger
Mail exchanger
adalah sebuah server yang menyediakan service untuk menerima atau
meneruskan mail untuk / dari host
lainnya. Mirip dengan sebuah relay untuk meneruskan mail. Pada MX record ini
terdapat sebuah angka prioritas, yang semakin rendah angkanya berarti semakin
tinggi prioritasnya. Priorotas di sini dimaksudkan untuk host yang mempunyai
beberapa MX record.
Format:
name IN MX prioritas host
Keterangan:
·
name :
hostname atau domai tujuan pengiriman email
·
prioritas :
tingkat prioritas mail exchanger yang akan digunakan untuk me-redirect mail ke
‘name’. Hal ini diperlukan karena suatu mail server bisa saja mempunyai mail
exchanger lebih ar satu.
·
Host :
hostname dari mail exchanger.
D. Aliasing
Seperti arti
katanya, aliasing berfungsi untuk memberikan nama lain kepada sebuah host yang
sudah punya nama. Jenis record yang digunakan bernama CNAME ( Canonical Name ).
Format :
alias IN CNAME host
Keterangan:
-
alias : nama alias
-
host : nama asli host asli
E. Address record
Untuk memetakan
hostname ke IP address. Format:
hostname IN A address
Keterangan:
Host
: nama suatu host. Hostname ini
ditulis secara relatif terhadap domain host tersebut. Misalakn host students.ee.itb.ac.id
akan ditulis students saja pada file database untuk zona ee.itb.ac.id
Address
: IP address dari host tersebut diatas.
Contoh lengkap untuk domain
salman.itb.ac.id
Nama file :
“/var/named/db.salman.itb.ac.id”. File ini merupakan file yang dideklarasikan
di file named.conf pada zona “salman.itb.ac.id”.
@ IN
SOA ns.salman.ac.id. admin.ns.salman.itb.ac.id.(
2001090100 ;serial thblntglnomor
86400 ;refresh setiap 12 jam
3600 ; retry 1 jam
3600000 ; expire 1000 jam
86400 ) ;TTL
IN NS ns.salman.itb.ac.id.
gtw IN A 167.205.207.27
IN A 167.205.206.97
ns
IN A 167.205.206.100
localhost IN A
127.0.0.1
attaqwa IN
A 167.205.206.109
attaubah IN A
167.205.206.110
unit IN A
167.205.206.101
IN MX 10
unit
IN MX 20
gtw
IN MX 50
mx.itb.ac.id.
Host yang bernama
unit mempunyai beberapa MX record yaitu unit, gtw dan mx.itb.ac.id. Angka-angka
10 20 dan 50 tersebut menyalakan bahwa apabila ada mail datang untuk host
unit.salman.itb.ac.id, harap mail tersebut disampaikan ke unit.itb.ac.id pada
usaha pertama, Bila usaha pertama gagal ( unit.salman.itb.ac.id sedang crash,
down ) , pengantaran email dilanjutkan ke gtw.salman.itb.ac.id dan apabila
gagal juga diantarkan ke mx.itb.ac.id. Demian arti dari multiple MX record pada
host unit.
Konfigurasi file
/var/named/db.cache
File ini
menginformasikan kepada server, dimana letak server zone “root”. Untuk mendapatan file ini, anda harus melakukan ftp ke rs.internic.net, dengan lokasi
direktori /domain/named.root. ubah nama
file ini menjadi db.cache dan letakkan dibawah direktori /etc/namedb
Jangan lupa untuk mencopy file
tersebut ke direktori /var/named.
Cara lain adalah
dengan mengcopy file cache-default yang biasanya ada dalam source program named
ke file db.cache.
# cp cache-default
/var/named/db.cache
Format dari file db.cache ialah sebagai berikut.
; This file holds the
information on root name servers needed to
; initialize cache of Internet domain name
servers
; (e.g. reference this file in the
"cache . <file>"
; configuration file of BIND domain name
servers).
;
; This file is made available by InterNIC
registration services
; under anonymous FTP as
; file /domain/named.root
; on server FTP.RS.INTERNIC.NET
; -OR- under Gopher at RS.INTERNIC.NET
; under menu InterNIC Registration Services (NSI)
; submenu InterNIC Registration Archives
; file named.root
;
; last update: Aug 22, 1997
; related version of root zone: 1997082200
;
;
; formerly NS.INTERNIC.NET
;
. 3600000 IN
NS A.ROOT-SERVERS.NET.
A.ROOT-SERVERS.NET. 3600000 A
198.41.0.4
;
; formerly NS1.ISI.EDU
;
. 3600000 NS
B.ROOT-SERVERS.NET.
B.ROOT-SERVERS.NET. 3600000 A
128.9.0.107
;
; formerly C.PSI.NET
;
. 3600000 NS
C.ROOT-SERVERS.NET.
C.ROOT-SERVERS.NET. 3600000 A
192.33.4.12
;
; formerly TERP.UMD.EDU
;
. 3600000 NS
D.ROOT-SERVERS.NET.
D.ROOT-SERVERS.NET. 3600000 A
128.8.10.90
;
; formerly NS.NASA.GOV
;
. 3600000 NS
E.ROOT-SERVERS.NET.
E.ROOT-SERVERS.NET. 3600000 A
192.203.230.10
;
; formerly NS.ISC.ORG
;
. 3600000 NS
F.ROOT-SERVERS.NET.
F.ROOT-SERVERS.NET. 3600000 A
192.5.5.241
;
; formerly NS.NIC.DDN.MIL
;
. 3600000 NS
G.ROOT-SERVERS.NET.
G.ROOT-SERVERS.NET. 3600000 A
192.112.36.4
;
; formerly
AOS.ARL.ARMY.MIL
;
. 3600000 NS
H.ROOT-SERVERS.NET.
H.ROOT-SERVERS.NET. 3600000 A
128.63.2.53
;
; formerly NIC.NORDU.NET
;
. 3600000 NS
I.ROOT-SERVERS.NET.
I.ROOT-SERVERS.NET. 3600000 A
192.36.148.17
;
; temporarily housed at
NSI (InterNIC)
;
. 3600000 NS
J.ROOT-SERVERS.NET.
J.ROOT-SERVERS.NET. 3600000 A
198.41.0.10
;
; housed in LINX, operated
by RIPE NCC
;
. 3600000 NS
K.ROOT-SERVERS.NET.
K.ROOT-SERVERS.NET. 3600000 A
193.0.14.129
;
; temporarily housed at
ISI (IANA)
;
. 3600000 NS
L.ROOT-SERVERS.NET.
L.ROOT-SERVERS.NET. 3600000 A
198.32.64.12
;
; housed in Japan,
operated by WIDE
;
. 3600000 NS
M.ROOT-SERVERS.NET.
M.ROOT-SERVERS.NET. 3600000 A
202.12.27.33
; End of File
Konfigurasi
File Reverse Database
File ini berisikan
database kebalikan dari database domain. Dalam database domain sebelumnya
dinyatakan dari nama host ke alamat ip sedangkan pada reverse database
sebaliknya yaitu dari nomor ip ke nama host. Untuk keperluan pemetaan ini
diperlukan tipe resouce record yang berupa pointer (PTR) Format:
[oktet] IN PTR hostname
Keterangan :
oktet : oktet terakhir ip addres
hostname : nama host yang akan di resove.
Berikut contoh lengkapnya :
Nama file :
"db.167.205.206” . File ini merupakan file yang dideklarasikan di file
named.conf pada zona “206.205.167.in-addr.arpa”
@ IN
SOA ns.salman.itb.ac.id.
admin.ns.salman.itb.ac.id. (
2001090100 ; Serial
86400 ; Refresh every 24 hours
3600 ; Retry every 1 hours
2592000 ; Expire after 1 month
25200
) ; Minimum ttl of 7 Hours
IN
NS ns.salman.itb.ac.id.
97 IN PTR
gtw.salman.itb.ac.id.
100 IN PTR
ns.salman.itb.ac.id.
101 IN PTR
unit.salman.itb.ac.id.
109 IN PTR attaqwa.salman.itb.ac.id.
110 IN PTR attaubah.salman.itb.ac.id
Konfigurasi file
/var/named/db.127.0.0
Konfigurasi file ini
sama untuk semua jenis server, baik itu primary, secondary, ataupun cache-only
server.
@ IN
SOA localhost.
root.localhost. (
1997022700 ; Serial
28800 ; Refresh
14400 ; Retry
3600000
; Expire
86400
) ; Minimum
IN NS
localhost.
1 IN
PTR localhost.
Menjalankan
Named
Setelah file
named.conf, database domain dan reverse sudah selesai dibuat, maka named
tinggal dijalankan. Untuk menjalankannya ada beberapa pilihan command. Cara
pertama yang paling umum :
# named –b /etc/namedb/named.conf
Atau command kedua
yang merupakan sebuah interface yang memudahkan user untuk menjalankan,
memberhentikan, melihat status, mereload dari proses named. Command ini bernama
ndc ( named daemon control ).
Untuk menjalankan
named :
# ndc start
Untuk memberhentikan
named :
# ndc stop
Cara ketiga yang bisa digunakan untuk menjalankan ataupun menstop named adalah engan mengeksekusi script program pad file /etc/rc.d/init.d/named
Cara ketiga yang bisa digunakan untuk menjalankan ataupun menstop named adalah engan mengeksekusi script program pad file /etc/rc.d/init.d/named
# /etc/rc.d/init.d/named start
Untuk menghentikannya :
# /etc/rc.d/init.d/named stop
Biasanya ada permintaan untuk
menambahkan host baru pada domain yang telah ada. Maka file database domain
perlu diedit sewaktu named masih berjalan. Setelah di edit selanjutnya named
perlu di stop dan dimulai lagi atau dengan kata lain di reload. Untuk
melakukannya :
# ndc reload
atau
# named.reload
Untuk detailnya silahkan baca
manualnya.
Setelah named
dijalankan, berarti DNS server kita sudah siap untuk menerima request dari
client. Nah, bagi client yang akan melakukan request ke DNS server, sebelumnya
perlu untuk mensetting ke DNS server mana dia akan melakukan request. Untuk itu
tambahkan nama DNS server yang kita inginkan pada file /etc/resolve.conf
Contoh isi file
/etc/resolve.conf:
domain salman.itb.ac.id
server 167.205.206.100
File diatas
menunjukkan bahwa untuk domain salman.itb.ac.id, host kita menggunakan DNS
server yang punya IP address 167.205.206.100
Testing
Selanjutnya, setelah
named berjalan perlu juga di test untuk melihat apakah service sudah berjalan
semestinya. Tool untuk testingnya ialah nslookup.
# nslookup
Default Server: ns.salman.itb.ac.id
Address: 0.0.0.0
>
Setelah prompt “ > “ keluar,
maka server siap untuk ditanyai. Untuk memilih server yang akan ditanyai
tinggal ketik :
> server
ns.server.baru.co.id
Default Server: ns.server.baru.co.id
Address: 167.205.22.123
Untuk menanyakan ip address dari
host, tinggal ketik nama host.
> attaqwa.salman.itb.ac.id
Server: ns.salman.itb.ac.id
Address: 167.205.206.100
Name: attaqwa.salman.itb.ac.id
Address: 167.205.206.109
Begitu pula untuk menanyakan
nama host dari ip address
> 167.205.206.109
Server: ns.salman.itb.ac.id
Address: 167.205.206.100
Name: attaqwa.salman.itb.ac.id
Address: 167.205.206.109
Perintah tambahan:
·
host
–a domain_name
Untuk melihat host
apa saja yang terdaftar dalam DNS server yang menangani suatu domain.
·
host
–l domain_name
Untuk melihat daftar
server yang menangani domain tertentu.
Petunjuk pengerjaan
Kita tahu bahwa ada 3 fasilitas untuk “name resolving“.
Ketiganya bisa digunakan semua oleh satu host. Nah, tentunya perlu cara untuk
membuat urutan prioritas fasilitas mana yang akan kita pakai terlebih dahulu.
Prioritas ini diatur pada file /etc/nsswitch.
Tidak ada komentar:
Posting Komentar
komentar mu introfeksi bagi ku...
kesan mu adalah hasil kerja ku...