Selasa, 05 April 2011

DHCP Server

DHCP Server

Untuk mengadministrasi sebuah jaringan kecil, pemberian ip static sangat memudahkan bagi administrator jaringan. Namun jika jaringan sudah mulai luas kemungkinan untuk menggunakan ip yang sama akan lebih besar sehingga menyebabkan konflik. Dengan dasar ini maka penggunaan DHCP (Dynamic Host Configuration Protocol) Server sangat dianjurkan.

Fungsi utama dari DHCP Server ini adalah memberikan IP kepada host atau komputer yang tersambung kepada jaringan tersebut secara otomatis. Hal ini hanya berlaku jika komputer tersebut menggunakan setting IP dengan DHCP atau di Windows mengaktifkan pilihan "Obtain IP Address Automatically".

Bagaimana jika telah ada komputer yang terhubung dengan jaringan dan menggunakan IP statis? Tidak ada masalah.IP tersebut tidak akan diberikan pada komputer yang akan meminta IP pada DHCP Server.IP Komputer yang sebelumnya sama dengan IP statik akan diganti oleh DHCP server.


    Contoh:
    Jika terdapat sebuah DHCP Server dengan range IP 192.168.1.100 sampai dengan 192.168.10.200, maka setiap komputer yang terhubung pada jaringan tersebut dan mengaktifkan penggunaan DHCP, maka DHCP Server akan memberikan alamat IP pada range diatas yaitu antara 100 - 200.


    Biasanya DHCP Server memberikan IP pada range paling atas terlebih dahulu. Jika pada contoh kita ini baru satu yang menggunakan DHCP maka kemungkinan besar mendapat IP 192.168.1.200.


    Jika pada jaringan tersebut terdapat sebuah komputer dengan IP Statik dan masih dalam range dari IP DHCP Server maka DHCP Server tidak akan menggunakan IP tersebut untuk diberikan kepada pengguna DHCP yang lain.

File Konfigurasi

    Nah sekarang saatnya membuat DHCP Server
    Untungnya di Slackware kita sudah tersedia DHCP server.
    Kita hanya perlu mengutak - atik sebuah file yaitu :

    /etc/dhcpd.conf

    Ya, hanya itu.
    Tapi tidak seperti file konfigurasi biasanya, kali ini (Slackware 12) file tersebut tidak ada isinya :

    cat /etc/dhcpd.conf

    # dhcpd.conf
    #
    # Configuration file for ISC dhcpd (see 'man dhcpd.conf')
    #

    Nah, lho. Begitu buka man dhcpd.conf malah tambah pusing. Tapi ternyata masih ada yang bisa kita gunakan untuk contoh (harapan muncul lagi). Syukurlah Linux punya dokumentasi yang sangat bagus (siapa bilang dokumentasi Linux kurang? kecuali malas baca dokumentasi yang berbahasa Inggris). Ada dokumentasi dari masing - masing software, dan juga ada Howto yang sudah ada waktu instalasi (kecuali tidak di install).
    Dari dokumentasi dhcpd terdapat sebuah file contoh. Tepatnya disini :

    /usr/doc/dhcp-3.0.5/examples/dhcpd.conf

    tinggal copykan saja file example tersebut ke /etc/, selanjutnya kita mendapat file konfigurasi yang tinggal diedit sedikit untuk membuat sebuah DHCP Server.

    #cp /usr/doc/dhcp-3.0.5/examples/dhcpd.conf /etc/dhcpd.conf

Gateway & Nameserver

    Nah dibagian - bagian awal ada ini :

    option domain-name "example.org";
    option domain-name-servers ns1.example.org, ns2.example.org;

    Dua baris pertama adalah setting gateway, baris atas adalah domain-search, sedangkan dibawahnya adalah namaservernya. Silahkan di edit sesuai dengan kebutuhan
    Untuk konfigurasi yang saya gunakan :

    option domain-name "domainku.com";
    option domain-name-servers 192.168.1.254;

    Baris kedua harus diisikan dengan ip atau nameserver yang valid, atau Client DHCP kita tidak bisa mengakses public domain. Berhubung saya sudah membuat sebuah DNS Server pada ip 192.168.1.254 maka itu yang saya gunakan.

    Kita juga diharuskan untuk menambahkan baris berikut sesuai aturan dari Internet Systems Consortium. Kalau tidak percaya beri tanda # untuk menjadikannya komentar dan dijamin dhcp servernya tidak mau start.

    ddns-update-style ad-hoc;

Lease-Time

    Selanjutnya bisa ditebak, opsi untuk menentukan waktu dari DHCP Server untuk melakukan pemberian IP dan pengecekan kembali dari Host apakah masih aktif atau tidak.

    default-lease-time 600;
    max-lease-time 7200;

    Biarkan saja seperti itu, better keep it default. :D
    Masih ada beberapa opsi lagi, seperti log dan autorisasi. Namun seperti opsi diatas better keep it default.

Range IP / Subnet

    Berikutnya adalah penentuan range ip atau yang dikenal dengan subnet. Pada contoh dhcpd.conf kita terdapat beberapa subnet contoh, dan bisa digunakan sebagai acuan.

    subnet 192.168.1.0 netmask 255.255.255.0 {
    range 192.168.1.100 192.168.1.200;
    option routers 192.168.1.254;
    }

    Pada konfigurasi subnet diatas, kita membuat DHCP Server pada network 192.168.1.0 dengan netmask 255.255.255.0 dengan range IP DHCP adalah 192.168.1.100 - sampai dengan 192.168.1.200.

    Pada bagian ini juga ada option routers yang berarti ip gateway dari IP DHCP. Opsi routers juga bisa ditempatkan diluar (Global) sehingga secara default akan memasukkan option routers pada subnet kecuali disebutkan secara eksplisit.

    Kita juga bisa memberikan ip tertentu pada suatu host tertentu misalnya :

    host pegasus {
    hardware ethernet 00:16:EC:4B:98:B6;
    fixed-address 192.168.10.99;
    }

    Dengan konfig tersebut setiap kali komputer dengan mac-address 00:16:EC:4B:98:B6 terhubung dan meminta IP pada DHCP Server maka akan di berikan ip 192.168.10.99. Opsi - opsi yang lain juga masih banyak silahkan mempelajari file dhcpd.conf example tersebut, atau bisa baca manual / dokumentasi yang lebih lengkap mengenai DHCP Server. Namun dengan konfigurasi diatas kita sudah bisa mempunya sebuah DHPC Server.

Konfigurasi Lengkap ;)

    Berikut adalah config lengkap dari dhpcd.conf yang saya gunakan :

    option domain-name "domainku.com";
    option domain-name-servers 192.168.1.254;
    ddns-update-style ad-hoc;

    default-lease-time 600;
    max-lease-time 7200;

    subnet 192.168.1.0 netmask 255.255.255.0 {
    range 192.168.1.100 192.168.1.200;
    option routers 192.168.1.254;
    }

    host pegasus {
    hardware ethernet 00:16:EC:4B:98:B6;
    fixed-address 192.168.10.99;
    }

Mengaktifkan DHCP Server

    Selanjutnya tentu saja mengaktifkan dhpcd servernya :

    /usr/sbin/dhpcd

    Supaya aktif tiap kali boot, tinggal masukkan di rc.local.

    echo "/usr/sbin/dhpcd" >> /etc/rc.d/rc.local

    Untuk menggunakannya, pilih Obtain IP Address Automatically di windows atau ketikkan perintah dhcpcd -d eth0 sebagai root di konsole Linux

    # dhcpcd -d eth0

    Jika yang akan di berikan ip address adalah eth0. Jika sudah periksa dengan perintah ifconfig dilinux atauipconfig command prompt windows.

    sumber : http://www.slackerbox.com/dhcp%20server

1 komentar: