Rabu, 03 November 2010

Setting DNS (Domain Name Server) di Linux Ubuntu

Domain DNS atau Domain Name Server merupakan penerjemah nama menjadi IP. www.rab.co.id adalah 202.59.201.67, itulah tugas DNS. Kita memerlukannya karena pada dasarnya data dikirim ke alamat IP, bukan nama domain. Saat Anda menggunakan layanan GPRS, program wvdial otomatis menentukan DNS sesuai arahan ISP, Internet Service Provider. Bila Anda punya warnet, Internet server dapat diset sebagai DNS. Ini memudahkan pengaturan DHCP server yang mengarahkan DNS bagi para pc client. Sehingga saat Anda beralih ke ISP lain, tidak perlu lagi mengubah setting DHCP.

Tulisan ini dicoba menggunakan Ubuntu 8.04 dan seharusnya berfungsi pada distro turunan Debian, dan mudah-mudahan juga berlaku bagi distro-distro lainnya.

Sekarang pasanglah paketnya:

$ sudo su
# apt-get install bind9

Lalu ubahlah /etc/bind/named.local.conf, hapus remark pada include-nya sehingga menjadi seperti ini:

// Consider adding the 1918 zones here, if they are not used in your
// organization
include "/etc/bind/zones.rfc1918";

Simpan, dan restart daemon-nya:

# /etc/init.d/bind9 restart

Untuk mencobanya ubahlah /etc/resolv.conf menjadi:

nameserver 127.0.0.1

Baris-baris nameserver lainnya di-remark saja. resolv.conf dikategorikan sebagai "client setting", mudah-mudahan Anda paham maksudnya. Kemudian ujilah dengan memanggil sebuah nama:

# telnet google.com 80

Trying 209.85.171.100...
Connected to google.com.
Escape character is '^]'.
^]

Log-nya bisa Anda lihat di /var/log/daemon.log. Sampai di sini DNS hanya dapat digunakan oleh server sendiri. Selanjutnya izinkan pc client menggunakannya dengan mengubah /etc/bind/named.conf.options. Tambahkanlah di atas options dengan:

acl semua {
0.0.0.0/0;
};

Lalu di-dalam options tambahkan:

allow-query { semua; };

Sehingga keseluruhan /etc/bind/named.conf.options menjadi seperti ini:

acl semua {
0.0.0.0/0;
};

options {
directory "/var/cache/bind";
auth-nxdomain no; # conform to RFC1035

allow-query { semua; };
}

Lanjutkan dengan restart daemon-nya:

# /etc/init.d/bind9 restart

Di PC client, ubahlah DNS ke 192.168.0.254 ( IP server ), lalu cobalah:

$ telnet google.com 80

Trying 209.85.171.100...
Connected to google.com.
Escape character is '^]'.
^]

IP Publik
Sekarang server ini memiliki IP publik, dimana ia dapat dihubungi dari luar (Internet). Cobalah pasang Apache:

# apt-get install apache2

Misalkan ISP memberikan IP publik 202.59.201.67 untuk server ini. Ujilah dari tempat lain, bukan dari server maupun dari LAN, misalnya menggunakan GPRS di laptop:

$ telnet 202.59.201.67 80

telnet 202.59.201.67 80
Trying 202.59.201.67...
Connected to 202.59.201.67.
Escape character is '^]'.

Baik, itu artinya IP publik sudah berfungsi dan Apache telah merespon dengan benar. Selanjutnya pesanlah sebuah domain ke register.net.id, katakanlah rab.co.id. Katakan pada mereka bahwa rab.co.id ada di 202.59.201.67 dengan hostname dns1.rab.co.id.

Setelah itu, lakukan setting di server. Buatlah /etc/bind/db.rab.co.id:

$TTL 1500
@ IN SOA dns1.rab.co.id. grananda.rab.co.id. (
2007062703 ;serial
28800 ;refresh
3600 ;retry
604800 ;expire
38400 ) ;minimum 25 minutes
@ IN NS dns1.rab.co.id.
@ IN A 202.59.201.67
dns1 IN A 202.59.201.67
www IN CNAME dns1

Tambahkan di /etc/bind/named.local.conf dengan ini:

zone "rab.co.id" {
type master;
file "/etc/bind/db.rab.co.id";
};

Kemudian restart daemon-nya:

# /etc/init.d/bind9 restart

Lalu cobalah dari server:

# telnet rab.co.id 80

Trying 202.59.201.67...
Connected to rab.co.id.
Escape character is '^]'.
^]

Coba juga dari ISP lain. Biasanya 3 hari setelah pendaftaran di register.net.id, domain Anda sudah dikenali oleh Internet.

Selamat mencoba.

0 komentar:

Posting Komentar