Thursday, December 24, 2009

Menguji DNS Server

Menguji DNS diperlukan jika kita telah selesai melakukan setting DNS, atau kita baru selesai melakukan perubahan DNS, atau sekedar ingin tahu apakah DNS server bekerja atau tidak. Soalnya, kalau DNS tidak bekerja, pengguna Internet tidak bisa mengakses web server kita atau sekedar berkirim e-mail ke mail server kita. Jadi, pengujian ini cukup penting juga lho.

Ada 4 cara untuk menguji DNS Server. Misal, kita akan menguji server www.batan.go.id. Pengujiannya adalah :
  1. dig www.batan.go.id any
  2. nslookup www.batan.go.id
  3. host www.batan.go.id
  4. ping www.batan.go.id
Di bawah ini akan diberikan contoh hasil pengujian yang berhasil. Sebagai contoh adalah host www.detik.com

Pengujian dengan DIG :
[root@serpong4] /etc/namedb # dig www.detik.com any

; <<>> DiG 9.3.2-P2 <<>> www.detik.com any
;; global options: printcmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 16852 ;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 2, ADDITIONAL: 3 ;; QUESTION SECTION: ;www.detik.com. IN ANY ;; ANSWER SECTION: www.detik.com. 79752 IN CNAME detik.com. ;; AUTHORITY SECTION: detik.com. 79628 IN NS ns1.duniadetik.com. detik.com. 79628 IN NS ns1.detik.net.id. ;; ADDITIONAL SECTION: ns1.detik.net.id. 79789 IN A 203.190.240.131 ns1.detik.net.id. 79789 IN AAAA 2402:a000:0:3::131 ns1.duniadetik.com. 81530 IN A 202.158.66.17 ;; Query time: 0 msec ;; SERVER: 202.46.1.2#53(202.46.1.2) ;; WHEN: Thu Dec 24 14:32:38 2009 ;; MSG SIZE rcvd: 164 [root@serpong4] /etc/namedb #

Pengujian dengan NSLOOKUP :
[root@serpong4] ~ # nslookup www.detik.com
Server: 202.46.1.2
Address: 202.46.1.2#53

Non-authoritative answer:
www.detik.com canonical name = detik.com.
Name: detik.com
Address: 203.190.241.201
Name: detik.com
Address: 202.158.66.92
Name: detik.com
Address: 203.190.241.43

[root@serpong4] ~ #
Pengujian dengan HOST :
[root@serpong4] ~ # host www.detik.com
www.detik.com is an alias for detik.com.
detik.com has address 203.190.241.43
detik.com has address 203.190.241.201
detik.com has address 202.158.66.92
www.detik.com is an alias for detik.com.
www.detik.com is an alias for detik.com.
detik.com mail is handled by 10 mail3.agrakom.com.
[root@serpong4] ~ #
Pengujian dengan PING :
[root@serpong4] ~ # ping www.detik.com
PING detik.com (203.190.241.201): 56 data bytes
64 bytes from 203.190.241.201: icmp_seq=0 ttl=60 time=1.775 ms
64 bytes from 203.190.241.201: icmp_seq=1 ttl=60 time=0.980 ms
64 bytes from 203.190.241.201: icmp_seq=2 ttl=60 time=1.339 ms
64 bytes from 203.190.241.201: icmp_seq=3 ttl=60 time=1.363 ms
^C
--- detik.com ping statistics ---
4 packets transmitted, 4 packets received, 0% packet loss
round-trip min/avg/max/stddev = 0.980/1.364/1.775/0.282 ms
[root@serpong4] ~ #

Untuk pembanding, akan ditampilkan hasil pengujian yang tidak sukses. Dalam kesempatan ini akan diuji host www.batan.go.id.

Pengujian dengan DIG :
[root@serpong4] ~ # dig www.batan.go.id any

; <<>> DiG 9.3.2-P2 <<>> www.batan.go.id any
;; global options: printcmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: SERVFAIL, id: 12984 ;; flags: qr rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 0, ADDITIONAL: 0 ;; QUESTION SECTION: ;www.batan.go.id. IN ANY ;; Query time: 0 msec ;; SERVER: 202.46.1.2#53(202.46.1.2) ;; WHEN: Thu Dec 24 13:50:53 2009 ;; MSG SIZE rcvd: 33 [root@serpong4] ~ #


Pengujian dengan NSLOOKUP :

[root@serpong4] ~ # nslookup www.batan.go.id
Server: 202.46.1.2
Address: 202.46.1.2#53

** server can't find www.batan.go.id: SERVFAIL

[root@serpong4] ~ #


Pengujian dengan HOST :
[root@serpong4] ~ # host www.batan.go.id
Host www.batan.go.id not found: 2(SERVFAIL)
[root@serpong4] ~ #


Pengujian dengan PING :
[root@serpong4] ~ # ping www.batan.go.id
ping: cannot resolve www.batan.go.id: No address associated with name
[root@serpong4] ~ #



File DNS : /etc/namedb/master/batan.go.id
Daemon : /etc/rc.d/named

Saat menjalankan daemon named, coba cek apakah ada kesalahan. Untuk itu buka file /var/log/messages. Karena file ini cukup besar, lihat ekornya saja, atau tail-nya.

[root@serpong4] ~ # tail /var/log/messages
Dec 24 13:56:28 serpong4 named[83214]: running
Dec 24 14:13:30 serpong4 named[83214]: stopping command channel on 127.0.0.1#953
Dec 24 14:13:30 serpong4 named[83214]: exiting
Dec 24 14:13:37 serpong4 named[84318]: starting BIND 9.3.2-P2 -4 -c /etc/namedb/named.conf -t /var/named -u bind
Dec 24 14:13:37 serpong4 named[84318]: command channel listening on 127.0.0.1#953
Dec 24 14:13:37 serpong4 named[84318]: zone 3.46.202.in-addr.arpa/IN: loading master file master/3.46.202.in-addr.arpa: file not found
Dec 24 14:13:37 serpong4 named[84318]: dns_master_load: master/batan.go.id:129: isc_lex_gettoken() failed: unexpected end of input
Dec 24 14:13:37 serpong4 named[84318]: dns_master_load: master/batan.go.id:129: unexpected end of input
Dec 24 14:13:37 serpong4 named[84318]: zone batan.go.id/IN: loading master file master/batan.go.id: unexpected end of input
Dec 24 14:13:37 serpong4 named[84318]: running
[root@serpong4] ~ #


Dari pesan diatas, coba diekstrak. Ada 4 baris kesalahan, yaitu :
zone 3.46.202.in-addr.arpa/IN: loading master file master/3.46.202.in-addr.arpa: file not found
dns_master_load: master/batan.go.id:129: isc_lex_gettoken() failed: unexpected end of input
dns_master_load: master/batan.go.id:129: unexpected end of input
zone batan.go.id/IN: loading master file master/batan.go.id: unexpected end of input


1 comment: