Minggu, 18 Januari 2015

Setting DNS Client pada linux

Pendahuluan

Supaya Linux dapat mengenali nama-nama site di Internet seperti linux.or.id atau nama host di jaringan LAN harus ada suatu mekanisme untuk mengubah nama-nama tersebut kedalam bentuk yang dikenali oleh komputer yaitu alamat IP misalnya linux.or.id diubah menjadi 64.29.24.175 . Mekanisme ini disediakan oleh Name Resolver yang terdapat dalam standard library linux. Tentu saja agar mekanisme ini bekerja dengan baik diperlukan beberapa konfigurasi.

/etc/hosts

File /etc/hosts berisi pemetaan nama host dengan alamat IPnya dengan format sebagai berikut:
IP   nama.domain.lengkap   alias
Perlu diperhatikan bahwa jumlah spasi atau tab antara masing-masing kolom tidak berpengaruh, yang penting ada pemisahnya baik spasi atau tab.
Contoh /etc/hosts
127.0.0.1       localhost.intra.aki     localhost
192.168.1.100   linux.intra.aki         linux
192.168.1.3     cctv.intra.aki          cctv

Setting /etc/hosts melalui Linuxconf

Selain mengedit secara langsung file /etc/hosts anda juga bisa mengeditnya melalui linuxconf.
  1. Jalankan linuxconf
  2. Pilih Config -> Networking -> Misc -> Information about other hosts
  3. Di dialog tersebut anda bisa menambah (Add) atau mengedit atau menghapus entry tertentu dengan menekan enter pada entry yang ingin diubah atau dihapus

Kelemahan /etc/hosts

Mekanisme /etc/hosts mempunyai beberapa kelemahan seperti:
  • Tidak scalable untuk jaringan yang mempunyai banyak host
  • Host yang berbeda bisa mempunyai isi /etc/hosts yang berbeda sehingga bisa tidak seragam dan menyulitkan peng-update-an
Karena itulah biasanya /etc/hosts hanya digunakan untuk mendaftarkan alamat IP lokal saja yaitu untuk alamat IP loopback (127.0.0.1) dan alamat IP ethernet card (jika ada).

/etc/resolv.conf

File /etc/resolv.conf adalah file konfigurasi utama bagi Name Resolver. Formatnya sederhana yaitu file text dengan satu keyword per baris. Ada tiga keyword yang biasa digunakan yaitu:
domain
menentukan nama domain lokal
search
menentukan daftar dari nama-nama domain yang digunakan untuk mencari nama host
namaserver
keyword ini yang bisa digunakan beberapa kali, menentukan alamat IP dari server DNS yang digunakan oleh Name Resolver
Contoh /etc/resolv.conf
domain intra.aki
search intra.aki cbn.net.id
nameserver 202.158.3.6
nameserver 202.158.3.7
Perlu diperhatikan bahwa semua domain yang terdapat dalam baris search akan dicari untuk setiap nama host yang di-resolve. Sehingga jika anda ingin telnet ke host cctv maka untuk mendapatkan alamat IP untuk host cctv dicari alamat IP untuk cctv.intra.aki pertama kali, lalu cctv.cbn.net.id dan terakhir cctv. Begitupun jika untuk linux.or.id maka akan dicoba dulu linux.or.id.intra.aki, lalu linux.or.id.cbn.net.id dan terakhir linux.or.id. Sebaiknya anda tidak menaruh terlalu banyak domain di dalam baris search karena akan memakan waktu untuk mencari domain-domain tersebut.
Biasanya yang diperlukan hanyalah keyword nameserver karena keyword domain mengambil default dari nama host dan keyword search defaultnya berisi isi dari keyword domain.

Setting /etc/resolv.conf melalui Linuxconf

Untuk mengedit /etc/resolv.conf menggunakan linuxconf jalankan langkah berikut
  1. Jalankan linuxconf
  2. Pilih Config -> Networking -> Client tasks-> Name server specification (DNS)
  3. Di dialog tersebut anda bisa mengedit default domain, nameserver ke-1 s/d 3, search domain ke-1 s/d 6 dan apakah menggunakan DNS untuk operasi normal

/etc/host.conf

File ini mengatur cara kerja dari Name Resolver defaultnya adalah
order hosts,bind
multi on
Konfigurasi ini mengatur agar Name Resolver untuk mencari nama host di /etc/hosts dahulu sebelum bertanya ke nameserver dan mengembalikan semua alamat yang ditemukan di file /etc/hosts bukan cuma yang pertama saja.

Tool untuk Testing DNS

Untuk mengetes Setting DNS Client, anda bisa menggunakan perintah host dan nslookup. Misalnya:
[zakaria@linux zakaria]$ host cctv
cctv.intra.aki has address 192.168.1.3
 
[zakaria@linux zakaria]$ nslookup linux
Server:  localhost
Address:  127.0.0.1
 
Name:    linux.intra.aki
Address:  192.168.1.100
Untuk nslookup anda juga bisa melakukan test secara interaktif contohnya:
[zakaria@linux zakaria]$ nslookup
Default Server:  localhost
Address:  127.0.0.1
 
> linux.or.id
Server:  localhost
Address:  127.0.0.1
 
Non-authoritative answer:
Name:    linux.or.id
Address:  64.29.24.175
 
> yahoo.com
Server:  localhost
Address:  127.0.0.1
 
*** localhost can't find yahoo.com: Non-existent host/domain
Seperti biasa tekan Ctrl+D untuk kembali ke shell

Sumber Lebih Lanjut

Untuk informasi yang lebih lengkap anda dapat membaca:
  • man 5 resolver
  • NET3-4 HOWTO
  • NET-3 HOWTO
  • DNS HOWTO

0 comment:

Posting Komentar