Minggu, 12 Mei 2013

Modul 3: Konfigurasi DHCP

SOAL DHCP:
Settinglah konfigurasi IP secara DHCP di mana server DHCP ada di dalam Elmo dengan ketentuan:
- host tom, jerry, spike, dan doraemon mendapatkan IP secara DHCP sesuai dengan IP yang sudah ditentukan di topologi
- untuk host snoppy dan woodstock:
- untuk soal DNS (IP di set secara statis)
- untuk soal DHCP, snoopy dan woodstock harus mendapatkan IP random

  1. Pertama, install dchp3-server di elmo dengan cara apt-get install dhcp3-server.
  2. Kemudian mengonfigurasi dhcp server pada /etc/dhcp/dhcpd.conf
Konfigurasi yang dilakukan di /etc/dhcp/dhcpd.conf : 

default-lease-time 86400;
max-lease-time 604800;

authoritative;

subnet 172.16.0.0 netmask 255.255.255.0 {
        range 172.16.0.2 172.16.0.254;
        option subnet-mask 255.255.255.0;
        option broadcast-address 172.16.0.255;
        option routers 192.168.0.1;
}

host Spike{
hardware ethernet a6:6e:d7:28:b1:8e;
fixed-address: 172.16.0.2;
}

host Tom {
hardware ethernet 76:65:23:5e:fc:cd;
fixed-address: 172.16.0.3;
}

host Jerry{
hardware ethernet 62:4f:e2:59:cd:f5;
fixed-address: 172.16.0.4
}

host Doraemon {
hardware ethernet 96:fc:22:fb:cf:fa;
fixed-address 172.16.0.5;
}

Maksudnya : 

  • default-lease-time, max-lease,time adalah waktu yang digunakan untuk mendapatkan IP pada DHCP server
  • authoritative digunakan untuk mengirimkan sinyal DHCPNAK yang menunjukkan bahwa client harus berhenti.
  • subnet: berisi subnet yang digunakan
  • netmask: berisi netmask yang digunakan
  • range: berisi range yang dapat diisi oleh dhcp
  • option broadcast-address: berisi address broadcast
  • option routers: berisi router yang digunakan
  • host --- : berisi deklarasi host mana yang ingin diberi fixed ip berdasarkan dhcp
  • hardware ethernet --- : berisi MAC address / hardware ethernet dari setiap host yang ingin diberi fixed ip. bisa dilihat pada setiap komputer UML dengan cara ketik "ifconfig"
  • fixed-address --- : berisi ip yang akan kita berikan untuk tiap" host
  • untuk bagian random tidak dituliskan karena deklarasi digunakan untuk fixed ip saja bukan untuk random jadi cukup mengganti interfacenya
     3.  Kemudian restart komputer elmo dengan cara "service networking restart"
     4.  Selanjutnya untuk pengecekannya dilakukan dengan cara mengganti interfaces tiap eth setiap komputer UML pada "/etc/network/interfaces"  contoh :
auto eth0
iface eth0 inet dhcp
     5.  Kemudian restart tiap komputer dengan cara "service networking restart"
     6.  Kemudian cek ip dengan cara "ifconfig"



Demikian cara setting dhcp untuk modul 3 - DHCP server 
Terima Kasih :)

Modul 3: Konfigurasi DNS via UML (2)

        Postingan ini merupakan lanjutan dari postingan sebelumnya. Kali ini waktunya kita akan mengkonfigurasi paket/software Bind9 yang diinstall pada host yang berfungsi sebagai server DNS.

Memasang/Menginstal Bind9
Pertama-tama instal dulu Bind9 pada server DNS (berdasarkan topologi dan soal shift yang saya dapat, server DNS-nya adalah Stitch, Elmo, dan Woodstock) dengan perintah
apt-get install bind9
Apabila juga ingin menginstal tool tambahan untuk DNS, maka ketikkan perintah berikut:
apt-get install dnsutils
atau ketikkan dnsutils setelah bind9.

Konfigurasi Bind9
Konfigurasi utama Bind9 terdapat pada file: /etc/bind/named.conf
Di dalam file tersebut terdapat instruksi yang menyarankan agar penambahan informasi domain hendaknya dilakukan di file /etc/bind/named.conf.local apabila kita ingin menambah informasi domain yang akan ditangani oleh Bind9 (DNS server). Oleh karena itu, untuk mengedit dan menambahkan informasi domain, buka file tersebut dengan perintah
nano /etc/bind/named.conf.local

Berikut konfigurasi Bind9 pada masing-masing server DNS.

Stitch
  1. Buka file /etc/bind/named.conf.local dan tambahkan konfigurasi berikut ini.

    // file /etc/bind/named.conf.local pada host Stitch
    zone "klpe18.jarkom.com" IN {
             type master;
             file "/etc/bind/zone.com.jarkom.klpe18";
    };
    zone "kartun.klpe18.jarkom.com" IN {
             type master;
             file "/etc/bind/zone.com.jarkom.klpe18.kartun";
    };
    zone "16.172.in-addr.arpa" {
             type master;
             file "/etc/bind/revp.172.16";
    };
  2. Buka file /etc/bind/named.conf.options dan tambahkan alamat IP network ID beserta subnet masknya pada bagian listen-on {} di dalam fungsi options {}. Konfigurasi lengkapnya menjadi seperti berikut.

    options {
              listen-on { 127.0.0.1; 172.16.0.0/24; 172.16.1.0/24; };
    };

  3. Buat file-file yang dibutuhkan oleh file named.conf.local. Jalankan perintah berikut ini.
    touch /etc/bind/zone.com.jarkom.klpe18
    touch /etc/bind/zone.com.jarkom.klpe18.kartun
    touch /etc/bind/revp.172.16
  4. Buka file zone.com.jarkom.klpe18 dan tambahkan konfigurasi berikut ini.

    ; file /etc/bind/zone.com.jarkom.klpe18 pada host Stitch
    ; dns zone for klpe18.jarkom.com
    $TTL 1D
    @IN SOA klpe18.jarkom.com. ns.klpe18.jarkom.com. (
                           2013041904 ; serial (harus diedit setiap kali ada perubahan, termasuk komentar)
                           8H             ; refresh
                           4H             ; retry
                           4W            ; expire
                           1D      )      ; minimum
    $ORIGIN klpe18.jarkom.com.
    ; nameserver (NS) atau DNS server yang menangani zone ini ada dua
    ; yaitu Stitch (master) dan Elmo (slave)
    @                   NS                  Stitch
    @                   A                    172.16.0.2
    @                   NS                  Elmo
    @                   A                    172.16.1.5
    ; definisikan canonical name untuk domain yang memiliki alias
    dns                 CNAME      Stitch
    admin             CNAME     Doraemon
    ; definisikan hostname/subdomain di domain ini
    Stitch             A                 172.16.0.2 ; klpe18.jarkom.com
    Snoopy          A                 172.16.0.3
    Woodstock    A                 172.16.0.4
    Doraemon     A                 172.16.0.5
    Tom               A                 172.16.1.2
    Jerry              A                 172.16.1.3
    Spike             A                 172.16.1.4
    Elmo             A                  172.16.1.5
    ; load balancing dari host server
    server            A                  172.16.0.2 ; Stitch
                          A                  172.16.1.5 ; Elmo

  5. Buka file zone.com.jarkom.klpe18.kartun dan tambahkan konfigurasi berikut ini.

    ; file /etc/bind/zone.com.jarkom.klpe18.kartun pada host Stitch
    ; dns zone for kartun.klpe18.jarkom.com
    $TTL 1D
    @ IN SOA kartun.klpe18.jarkom.com. klpe18.jarkom.com. (
                          2013041906 ; serial
                          8H           ; refresh
                          4H           ; retry
                          4W          ; expire
                          1D     )     ; minimum
    $ORIGIN kartun.klpe18.jarkom.com.
    ; nameserver (NS) atau DNS server untuk zone kartun.klpe18.jarkom.com
    ; yaitu Stitch (master) dan Elmo (slave)
    @                   NS                  klpe18.jarkom.com.
    @                   A                    172.16.0.2
    @                   NS                  elmo.klpe18.jarkom.com.
    @                   A                    172.16.1.5
    ; definisikan hostname/subdomain di domain ini
    Woodstock     A                    172.16.0.4 ; woodstock.kartun.klpe18.jarkom.com

  6. Buka file revp.172.16 dan tambahkan konfigurasi berikut ini.

    ; file /etc/bind/revp.172.16 pada host Stitch
    ; reverse pointers for 172.16 subnet
    ; memetakan IP terhadap domain
    ; misal: 172.16.0.2 --> stitch.klpe18.jarkom.com
    $TTL 1D
    @ IN SOA klpe18.jarkom.com. ns.klpe18.jarkom.com. (
                            2013041904 ; serial
                            28800       ; refresh (8 hours)
                            14400       ; retry (4 hours)
                            2419200   ; expire (4 weeks)
                            86400       ; minimum (1 day) )
    $ORIGIN 16.172.in-addr.arpa.
    ; authoritative name server untuk zone ini
    NS                   klpe18.jarkom.com.
    ; our hosts, in numeric order
    0.2                   PTR          klpe18.jarkom.com.
    0.3                   PTR          snoopy.klpe18.jarkom.com.
    0.4                   PTR          woodstock.klpe18.jarkom.com.
    0.5                   PTR          doraemon.klpe18.jarkom.com.
    1.2                   PTR          tom.klpe18.jarkom.com.
    1.3                   PTR          jerry.klpe18.jarkom.com.
    1.4                   PTR          spike.klpe18.jarkom.com.
    1.5                   PTR          elmo.klpe18.jarkom.com.
Elmo
  1. Buka file /etc/bind/named.conf.local dan tambahkan konfigurasi berikut ini.

    // file /etc/bind/named.conf.local pada host Elmo
    zone "klpe18.jarkom.com" IN {
             type slave;
             file "/etc/bind/zone.com.jarkom.klpe18";
             masters {172.16.0.2;};
    };
    zone "kartun.klpe18.jarkom.com" IN {
             type slave;
             file "/etc/bind/zone.com.jarkom.klpe18.kartun";
             masters {172.16.0.2;};
    };
    zone "16.172.in-addr.arpa" {
             type slave;
             file "/etc/bind/revp.172.16";
             masters {172.16.0.2;};
    };
    zone "anime.klpe18.jarkom.com" IN {
             type master;
             file "zone.com.jarkom.klpe18.anime";
    };

  2. Buka file /etc/bind/named.conf.options dan tambahkan alamat IP network ID beserta subnet masknya pada bagian listen-on {} di dalam fungsi options {}. Konfigurasi lengkapnya menjadi seperti berikut.

    options {
              listen-on { 127.0.0.1; 172.16.0.0/24; 172.16.1.0/24; };
    };

  3. Buat file-file yang dibutuhkan oleh file named.conf.local. Jalankan perintah berikut ini.
    touch /etc/bind/zone.com.jarkom.klpe18
    touch /etc/bind/zone.com.jarkom.klpe18.kartun
    touch /etc/bind/zone.com.jarkom.klpe18.anime
    touch /etc/bind/revp.172.16
  4. Buka file zone.com.jarkom.klpe18 dan tambahkan konfigurasi berikut ini.

    ; file /etc/bind/zone.com.jarkom.klpe18 pada host Elmo
    ; dns zone for for klpe18.jarkom.com
    $TTL 1D
    @IN SOA klpe18.jarkom.com. ns.klpe18.jarkom.com. (
                           2013041904 ; serial (harus diedit setiap kali ada perubahan, termasuk komentar)
                           8H             ; refresh
                           4H             ; retry
                           4W            ; expire
                           1D      )      ; minimum
    $ORIGIN klpe18.jarkom.com.
    ; nameserver (NS) atau DNS server yang menangani zone ini ada dua
    ; yaitu Stitch (master) dan Elmo (slave)
    @                   NS                  Stitch
    @                   A                    172.16.0.2
    @                   NS                  Elmo
    @                   A                    172.16.1.5
    ; definisikan canonical name untuk domain yang memiliki alias
    dns                 CNAME      Stitch
    admin             CNAME     Doraemon
    ; definisikan hostname/subdomain di domain ini
    Stitch             A                 172.16.0.2 ; klpe18.jarkom.com
    Snoopy          A                 172.16.0.3
    Woodstock    A                 172.16.0.4
    Doraemon     A                 172.16.0.5
    Tom               A                 172.16.1.2
    Jerry              A                 172.16.1.3
    Spike             A                 172.16.1.4
    Elmo             A                  172.16.1.5
    ; load balancing dari host server
    server            A                  172.16.0.2 ; Stitch
                          A                  172.16.1.5 ; Elmo

  5. Buka file zone.com.jarkom.klpe18.kartun dan tambahkan konfigurasi berikut ini.

    ; file /etc/bind/zone.com.jarkom.klpe18.kartun pada host Elmo
    ; dns zone for kartun.klpe18.jarkom.com
    $TTL 1D
    @ IN SOA elmo.klpe18.jarkom.com. kartun.klpe18.jarkom.com. (
                          2013041906 ; serial
                          8H           ; refresh
                          4H           ; retry
                          4W          ; expire
                          1D     )     ; minimum
    $ORIGIN kartun.klpe18.jarkom.com.
    @                   NS                  klpe18.jarkom.com.
    @                   A                    172.16.0.2
    @                   NS                  elmo.klpe18.jarkom.com.
    @                   A                    172.16.1.5
    ; definisikan hostname/subdomain di domain ini
    Snoopy          A                    172.16.0.3

  6. Buka file revp.172.16 dan tambahkan konfigurasi berikut ini.

    ; file /etc/bind/revp.172.16 pada host Elmo
    ; reverse pointers for 172.16 subnet
    ; memetakan IP terhadap domain
    ; misal: 172.16.0.2 --> stitch.klpe18.jarkom.com
    $TTL 1D
    @ IN SOA klpe18.jarkom.com. ns.klpe18.jarkom.com. (
                            2013041904 ; serial
                            28800       ; refresh (8 hours)
                            14400       ; retry (4 hours)
                            2419200   ; expire (4 weeks)
                            86400       ; minimum (1 day) )
    $ORIGIN 16.172.in-addr.arpa.
    ; definisi authoritative name server untuk zone ini
    NS                   klpe18.jarkom.com.
    NS                   elmo.klpe18.jarkom.com.
    ; our hosts, in numeric order
    0.2                   PTR          klpe18.jarkom.com.
    0.3                   PTR          snoopy.klpe18.jarkom.com.
    0.4                   PTR          woodstock.klpe18.jarkom.com.
    0.5                   PTR          doraemon.klpe18.jarkom.com.
    1.2                   PTR          tom.klpe18.jarkom.com.
    1.3                   PTR          jerry.klpe18.jarkom.com.
    1.4                   PTR          spike.klpe18.jarkom.com.
    1.5                   PTR          elmo.klpe18.jarkom.com.

  7. Buka file zone.com.jarkom.klpe18.anime dan tambahkan konfigurasi berikut ini.

    ; file /etc/bind/zone.com.jarkom.klpe18.anime untuk host Elmo
    ; dns zone for anime.klpe18.jarkom.com
    $TTL 1D
    @ IN SOA elmo.klpe18.jarkom.com. ns.elmo.klpe18,jarkom.com. (
                            2013042301 ; serial
                            8H           ; refresh
                            4H           ; retry
                            4W          ; expire
                            1D     )    ; minimum
    $ORIGIN anime.klpe18.jarkom.com.
    NS                   elmo.klpe18.jarkom.com.
    NS                   woodstock.klpe8.jarkom.com.
    snoopy            A              172.16.0.3
Woodstock
  1. Buka file /etc/bind/named.conf.local dan tambahkan konfigurasi berikut ini.

    // file /etc/bind/named.conf.local pada host Stitch
    zone "anime.klpe18.jarkom.com" IN {
                  type slave;
                  file "zone.com.jarkom.klpe18.anime";
                  masters {172.16.1.2;};
    };
    zone "16.172.in-addr.arpa" {
                 type slave;
                 file "revp.172.16";
                 masters {172.16.0.2;};
    };

  2. Buka file /etc/bind/named.conf.options dan tambahkan alamat IP network ID beserta subnet masknya pada bagian listen-on {} di dalam fungsi options {}. Konfigurasi lengkapnya menjadi seperti berikut.

    options {
              listen-on { 127.0.0.1; 172.16.0.0/24; 172.16.1.0/24; };
    };

  3. Buat file-file yang dibutuhkan oleh file named.conf.local. Jalankan perintah berikut ini.
    touch /etc/bind/zone.com.jarkom.klpe18.anime
    touch /etc/bind/revp.172.16
  4. Buka file zone.com.jarkom.klpe18.anime dan tambahkan konfigurasi berikut ini.

    ; file /etc/bind/zone.com.jarkom.klpe18.anime untuk host Woodstock
    ; dns zone for anime.klpe18.jarkom.com
    $TTL 1D
    @ IN SOA woodstock.klpe18.jarkom.com. ns.woodstock.klpe18,jarkom.com. (
                            2013042301 ; serial
                            8H           ; refresh
                            4H           ; retry
                            4W          ; expire
                            1D     )    ; minimum
    ; nameservers
    $ORIGIN anime.klpe18.jarkom.com.
    NS                   elmo.klpe18.jarkom.com.
    NS                   woodstock.klpe18.jarkom.com.
    ; our hostnames
    snoopy            A              172.16.0.3

  5. Buka file revp.172.16 dan tambahkan konfigurasi berikut ini.

    ; file /etc/bind/revp.172.16 pada host Woodstock
    ; reverse pointers for 172.16 subnet
    $TTL 1D
    @ IN SOA klpe18.jarkom.com. ns.klpe18.jarkom.com. (
                            2013041904 ; serial
                            28800       ; refresh (8 hours)
                            14400       ; retry (4 hours)
                            2419200   ; expire (4 weeks)
                            86400       ; minimum (1 day) )
    $ORIGIN 16.172.in-addr.arpa.
    ; authoritative name server untuk zone ini
    NS                   klpe18.jarkom.com.
    NS                   elmo.klpe18.jarkom.com.
    ; our hosts, in numeric order
    0.2                   PTR          klpe18.jarkom.com.
    0.3                   PTR          snoopy.klpe18.jarkom.com.
    0.4                   PTR          woodstock.klpe18.jarkom.com.
    0.5                   PTR          doraemon.klpe18.jarkom.com.
    1.2                   PTR          tom.klpe18.jarkom.com.
    1.3                   PTR          jerry.klpe18.jarkom.com.
    1.4                   PTR          spike.klpe18.jarkom.com.
    1.5                   PTR          elmo.klpe18.jarkom.com.
Untuk menerapkan konfigurasi pada masing-masing server DNS, ketikkan perintah berikut
service bind9 restart
 
Konfigurasi resolv.conf
Berlaku untuk semua host, baik server maupun klien DNS. Caranya adalah sebagai berikut.
  • Buka file /etc/resolv.conf dengan perintah:
    nano /etc/resolv.conf
  • Tambahkan baris berikut ini.

    nameserver 172.16.0.2
    nameserver 172.16.1.5
    nameserver 172.16.0.4

Catatan: Untuk sementara, hapus atau di-comment konfigurasi yang ada sebelumnya di file /etc/resolv.conf dengan memberinya tanda pagar (#) di setiap awal baris. Jika tidak, kegagalan akan muncul saat proses uji coba nantinya.

Uji Coba DNS
Untuk melakukan pengujian, kita dapat mengetikkan perintah ping, dig, atau nslookup di Terminal diikuti dengan alamat authoritative namenya (alamat situsnya). Beberapa contoh perintah untuk pengujiannya adalah sebagai berikut.

ping klpe18.jarkom.com
ping dns.klpe18.jarkom.com
ping server.klpe18.jarkom.com
ping woodstock.kartun.klpe18.jarkom.com
ping snoopy.anime.klpe18.jarkom.com
dig server.klpe18.jarkom.com
dig woodstock.kartun.klpe18.jarkom.com
nslookup snoopy.anime.klpe18.jarkom.com
nslookup admin.klpe18.jarkom.com

Apabila semua berjalan normal, respon positif akan diberikan oleh perintah-perintah tersebut. Untuk load balancing dapat dikatakan berhasil jika saat dilakukan ping ke server.klpe18.jarkom.com, yang muncul sebagai respon adalah alamat IP Stitch atau Elmo, bergantian setiap kali ping dilakukan.

Rabu, 08 Mei 2013

Modul 3: Konfigurasi DNS via UML (1)

1.    Berilah nama pada komputer dan router sesuai dengan topologi anda:
2.    Dari topologi anda, buatlah hal-hal berikut ini:
a.    Satu domain besar bernama klpxx.jarkom.com, yang ditangani oleh stitch (yang tergabung dalam domain ini adalah selain woodstock & Snoopy)
Clue:
Setelah menginstal pada tempat di atas, sekarang masuk ke dalam server Stitch yang menangani domain besar bernama klpxx.jarkom.com.
/etc/bind/named.conf.local --> nano /etc/bind/named.conf.local
b.    Subdomain kartun.klpxx.jarkom.com, beranggotakan woodstock, yang ditangani oleh Stitch. Komputer woodstock akan bernama woodstock.kartun.klpxx.jarkom.com
c.    Subdomain anime.klpxx.jarkom.com, beranggotakan snoopy, yang ditangani oleh elmo. Komputer snoopy akan bernama snoopy.anime.klpxx.jarkom.com
d.    woodstock.kartun.klpxx.jarkom.com akan menjadi slave untuk Anime.klpxx.jarkom.com
e.    Kalau melakukan ping ke admin.klpxx.jarkom.com maka akan mengarah ke Doraemon
f.    Kalau melakukan ping ke dns.klpxx.jarkom.com maka akan mengarah ke Stitch
g.    Elmo menjadi dns slave dari Stitch
3.    Buatlah ‘load balancing’. Sehingga jika kita ping ke server.klpxx.jarkom.com, maka akan muncul 2 IP server, yaitu IP Stitch dan IP Elmo.

       Mula-mula, kita pahami dulu topologi yang akan digunakan. Dalam praktikum yang saya jalani, topologi jaringan yang saya peroleh terdiri dari: 1 router, 2 switch, dan 8 host. Router tersebut membagi jaringan menjadi 2 subnet yang mana di dalamnya masing-masing terdapat 1 host untuk server DNS dan 3 host untuk klien biasa. Router tersebut juga memiliki 3 tangan: eth0 yang terhubung ke internet melalui IP TUN/TAP (IP TUN/TAP yang saya gunakan: 10.151.70.72), eth1 yang terhubung ke subnet pertama, dan eth2 yang terhubung ke subnet kedua. Antara router dan tiap subnet dihubungkan dengan switch.

       Lebih jelasnya, berikut ini konfigurasi IP address untuk masing-masing subnet. Untuk lebih mudahnya, konfigurasi pada setiap host pada subnet tersebut kita terapkan pada interface eth0.
  1. Subnet Pertama
    • Komputer Server 1 (Stitch)
      IP Address: 172.16.0.2
      Netmask   : 255.255.255.0
      Gateway   : 172.16.0.1
    • Komputer Client 1.1 (Snoopy)
      IP Address: 172.16.0.3
      Netmask   : 255.255.255.0
      Gateway   : 172.16.0.1
    • Komputer Client.1.2 (Woodstock)
      IP Address: 172.16.0.4
      Netmask   : 255.255.255.0
      Gateway   : 172.16.0.1
    • Komputer Client.1.3 (Doraemon)
      IP Address: 172.16.0.5
      Netmask   : 255.255.255.0
      Gateway   : 172.16.0.1
  2. Subnet Kedua
    • Komputer Server 2 (Elmo)
      IP address : 172.16.1.5
      Netmask : 255.255.255.0
      Gateway : 172.16.1.1
    • Komputer Client 2.1 (Tom)
      IP address : 172.16.1.2
      Netmask : 255.255.255.0
      Gateway : 172.16.1.1
    • Komputer Client 2.2 (Jerry)
      IP address : 172.16.1.3
      Netmask : 255.255.255.0
      Gateway : 172.16.1.1
    • Komputer Client 2.3 (Spike)
      IP address : 172.16.1.4
      Netmask : 255.255.255.0
      Gateway : 172.16.1.1
     Sekarang kita buat host-host virtual yang ada pada topologi tsb. dengan menggunakan sintaks UML. Buat file script berekstensi .sh untuk mengaktifkan host-host virtual tersebut. (di sini saya namai filenya: start.sh). Isi file yang berupa sintaks-sintaks UML dapat dilihat pada gambar berikut (ketikkan melalui program editor, misalnya Nano):
Jangan lupa buat juga file script untuk mematikan host-host virtual (di sini saya namai filenya: stop.sh). Sintaks UMLnya: uml_mconsole nama_console/jendela_xterm halt
       Sekarang jalankan file script start.sh dengan cara mengetikkan perintah bash start.sh pada Terminal. Jika tidak ada kesalahan saat mengetik isi file start.sh, maka sejumlah host-host virtual langsung muncul di layar. Setelah masing-masing host virtual menampilkan baris login, loginlah menggunakan username dan password yang ada pada filesystem UML yang kita jalankan.
       Setelah berhasil login, sekarang kita lakukan konfigurasi IP address di masing-masing host virtual tersebut. Caranya, buka /etc/network/interfaces melalui editor (di sini saya menggunakan perintah: nano /etc/network/interfaces). Lalu ketikkan konfigurasinya. Konfigurasi yang ditulis di bagian awal untuk semua host adalah sebagai berikut:
auto lo
iface lo inet loopback.
Konfigurasi untuk host Patrick (sebagai router)
Konfigurasi router adalah khusus sebab router memiliki fungsi-fungsi khusus, salah satunya yaitu mengarahkan paket data agar sampai ke tujuannya. Agar dapat berjalan sesuai fungsinya, router harus dikonfigurasi. Konfigurasi router yang harus diterapkan adalah sebagai berikut.
  1. Konfigurasi ip forward pada router.
    1. Buka file /etc/sysctl.conf dengan perintah:
      nano /etc/sysctl.conf
    2. Cari baris konfigurasi berikut: #net.ipv4.ip_forward=1
    3. Hapus tanda pagar di baris tersebut. Simpan file lalu keluar.
  2. Konfigurasi ip tables pada router.
    1. Buka file /etc/rc.local dengan perintah:
      nano /etc/rc.local
    2. Tambahkan baris konfigurasi berikut ini sebelum atau di atas perintah exit 0.
      iptables –A FORWARD –i eth1 –o eth0 –j ACCEPT
      iptables –A FORWARD –i eth2 –o eth0 –j ACCEPT
      iptables –t nat –A POSTROUTING –o eth0 –j MASQUERADE
  3. Konfigurasi interface: nano /etc/network/interfaces
    auto eth0
    iface eth0 inet static
            address 10.151.70.74 (IP_gateway + 1)
            netmask 255.255.255.0
            gateway 10.151.70.73 (IP_TUN/TAP + 1)

    auto eth1
    iface eth1 inet static
            address 172.16.0.1
            netmask 255.255.255.0

    auto eth2
    iface eth2 inet static
            address 172.16.1.1
            netmask 255.255.255.0
  4. Restart service networking yang menangani tentang konfigurasi jaringan agar perubahan konfigurasi yang dilakukan di atas dapat langsung diterapkan. Berikut ini perintah untuk merestart service tersebut:
    service networking restart

Lalu konfigurasi untuk masing-masing adalah sebagai berikut.
  • host Stitch
    auto eth0
    iface eth0 inet static
            address 172.16.0.2
            netmask 255.255.255.0
            gateway 172.16.0.1
  • host Snoopy
    auto eth2
    iface eth2 inet static
            address 172.16.0.3
            netmask 255.255.255.0
            gateway 172.16.0.1
  • host Woodstock
    auto eth3
    iface eth3 inet static
            address 172.16.0.4
            netmask 255.255.255.0
            gateway 172.16.0.1
     
  • host Doraemon
    auto eth1
    iface eth0 inet static
            address 172.16.0.5
            netmask 255.255.255.0
            gateway 172.16.0.1
  • host Tom
    auto eth0
    iface eth0 inet static
            address 172.16.1.2
            netmask 255.255.255.0
            gateway 172.16.1.1
  • host Jerry
    auto eth1
    iface eth1 inet static
            address 172.16.1.3
            netmask 255.255.255.0
            gateway 172.16.1.1
  • host Spike
    auto eth2
    iface eth2 inet static
            address 172.16.1.4
            netmask 255.255.255.0
            gateway 172.16.1.1
     
  • host Elmo
    auto eth3
    iface eth3 inet static
            address 172.16.1.5
            netmask 255.255.255.0
            gateway 172.16.1.1
Untuk menerapkan konfigurasi tersebut, jalankan perintah service networking restart.
        Jika saat merestart service networking tidak muncul pesan yang aneh-aneh (failed, warning, dsb.), berarti konfigurasi yang diterapkan telah dapat berjalan. Lakukan tes koneksi ke suatu alamat situs atau IP tertentu dengan perintah ping (di sini saya mengetes koneksi ke alamat situs ITS dengan mengetikkan perintah di Terminal: ping its.ac.id) dan lakukan update dengan mengetikkan perintah apt-get update. Jika kedua perintah tersebut berhasil dijalankan, maka host-host UML yang telah dibuat telah terkoneksi dengan baik.

- Bersambung... -

Selasa, 07 Mei 2013

DHCP, Dynamic Host Control Protocol

https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhGe4qethEr3Kpfssvl36mWU3VO5qzOoilKbQuftgQb1L02WPXFt4jG4YPVJi9012cJKIGdbbujV16rTfXALfxZaSb4MG4Zz0TGRO9IaJBt30WybJ8Q81X2idZqSQzI5p0t5nWpigShSxp7/s1600/dhcp.jpg
       DHCP (Dynamic Host Configuration Protocol/Protokol Konfigurasi Host Dinamis) adalah protokol yang berbasis arsitektur client/server yang dipakai untuk memudahkan pengalokasian alamat IP dalam satu jaringan. Sebuah jaringan lokal yang tidak menggunakan DHCP harus memberikan alamat IP kepada semua komputer secara manual. Jika DHCP dipasang di jaringan lokal, maka semua komputer yang tersambung di jaringan akan mendapatkan alamat IP secara otomatis dari server DHCP. Selain alamat IP, banyak parameter jaringan yang dapat diberikan oleh DHCP, seperti default gateway dan DNS server.
        Beberapa istilah mengenai DHCP antara lain:
  • DHCP DISCOVER
    Proses leasing alamat IP dari DHCP server di mana DHCP client akan menyebarkan request secara broadcast untuk mencari DHCP Server yang aktif.
  • DHCP OFFER
    Proses leasing alamat IP dari DHCP server di mana setelah DHCP Server mendengar broadcast dari DHCP Client, DHCP server kemudian menawarkan sebuah alamat kepada DHCP client.
  • DHCP REQUEST
    Proses leasing alamat IP dari DHCP server di mana client meminta DCHP server untuk menyewakan alamat IP dari salah satu alamat yang tersedia dalam DHCP Pool pada DHCP Server yang bersangkutan.
  • DHCP ACK
    Proses leasing alamat IP dari DHCP server di mana DHCP server akan merespons permintaan dari klien dengan mengirimkan paket acknowledgment. Kemudian, DHCP Server akan menetapkan sebuah alamat (dan konfigurasi TCP/IP lainnya) kepada klien, dan memperbarui basis data database miliknya. Klien selanjutnya akan memulai proses binding dengan tumpukan protokol TCP/IP dan karena telah memiliki alamat IP, klien pun dapat memulai komunikasi jaringan.
  • DHCP Scope
    DHCP Scope adalah alamat-alamat IP yang dapat disewakan kepada DHCP client. Ini juga dapat dikonfigurasikan oleh seorang administrator dengan menggunakan peralatan konfigurasi DHCP server. Biasanya, sebuah alamat IP disewakan dalam jangka waktu tertentu, yang disebut sebagai DHCP Lease, yang umumnya bernilai tiga hari. Informasi mengenai DHCP Scope dan alamat IP yang telah disewakan kemudian disimpan di dalam basis data DHCP dalam DHCP server. Nilai alamat-alamat IP yang dapat disewakan harus diambil dari DHCP Pool yang tersedia yang dialokasikan dalam jaringan. Kesalahan yang sering terjadi dalam konfigurasi DHCP Server adalah kesalahan dalam konfigurasi DHCP Scope.
  • DHCP Lease
    DHCP Lease adalah batas waktu penyewaan alamat IP yang diberikan kepada DHCP client oleh DHCP Server. Umumnya, hal ini dapat dikonfigurasikan sedemikian rupa oleh seorang administrator dengan menggunakan beberapa peralatan konfigurasi (dalam Windows NT Server dapat menggunakan DHCP Manager atau dalam Windows 2000 ke atas dapat menggunakan Microsoft Management Console [MMC]). DHCP Lease juga sering disebut sebagai DHCP Reservation.
Langkah-langkah client bisa mendapatkan IP melalui DHCP adalah sebagai berikut:
  1. Ketika DHCP client masuk/bergabung ke dalam suatu jaringan, client tsb. akan melakukan broadcast dengan mengirimkan pesan DHCP DISCOVER ke jaringan tersebut.
  2. Seluruh DHCP server akan merespon DHCP DISCOVER yang dikirimkan DHCP client dengan DHCP OFFER.
  3. Saat client mendapatkan DHCP OFFER tsb., client mengirimkan DHCP REQUEST untuk menerima konfigurasi DHCP server.
  4. Saat DHCP server menerima DHCP REQUEST, DHCP server dapat mengirim DHCP ACK dengan membawa sejumlah parameter konfigurasi untuk DHCP client dan memasukkan informasi itu ke dalam dhcp.lease database jika DHCP SERVER menyetujui DHCP REQUEST yang diterima dari DHCP client; atau DHCP server dapat mengirim DHCP NACK atau tidak merespon DHCP REQUEST jika jika DHCP server tidak menyetujuinya.
  5. Jika DHCP client telah selesai atau meninggalkan jaringan tersebut, maka DHCP client mengirimkan DHCP RELEASE sebagai tanda bahwa DHCP client tidak menggunakan IP address hasil konfigurasi dari DHCP server tersebut. Namun tidak semua OS melakukan ini.
Sedangkan urutan kerja dari DHCP lease process adalah sebagai berikut:
  1. Perangkat jaringan mencoba untuk menyambung ke internet.
  2. Jaringan meminta alamat IP.
  3. Mengalokasikan DHCP server (menyewakan) perangkat jaringan sebuah alamat IP, di mana akan diteruskan ke jaringan oleh router.
  4. DHCP meng-update server jaringan yang sesuai dengan alamat IP dan informasi konfigurasi lainnya.
  5. Perangkat jaringan menerima alamat IP.
  6. Sewa alamat IP berakhir.
  7. DHCP merelokasi alamat IP atau sewa yang tersedia.
  8. Perangkat jaringan tidak lagi terhubung ke internet.
  9. Alamat IP menjadi alamat yang tersedia pada scope jaringan alamat IP.
        Untuk mengatur DHCP, pada dasarnya membutuhkan klien DHCP (minimal satu), router, dan server DHCP. Klien adalah komputer atau perangkat lain pada jaringan yang membutuhkan alamat IP dan/atau informasi konfigurasi jaringan lainnya. Fungsi router sebagai forwarding atau routing dari permintaan alamat IP dari server DHCP. Server DHCP adalah kunci dari semua operasi. Hal ini bertanggung jawab untuk mengalokasikan, leasing, merelokasi, dan memperbarui alamat IP. OS Windows dan Linux baik untuk mendukung DHCP software.

DNS, Domain Name Service

       Kali ini, saya akan menjelaskan materi-materi yang didapat saat menjalani praktikum mata kuliah jaringan komputer modul 3. Modul tersebut membahas tentang DNS & DHCP.
       Bahasan pertama saya adalah mengenai segalanya tentang DNS.
       DNS (Domain Name Service/Sistem Penamaan Domain) adalah sebuah sistem yang menyimpan informasi tentang nama host maupun nama domain dalam bentuk basis data tersebar (distributed database) secara hierarkis di dalam suatu jaringan komputer (internet, private network, dsb.).
       Sistem ini dibuat agar memudahkan manusia mengakses suatu halaman web dengan cara memasukkan alamat situsnya dibandingkan dengan memasukkan suatu alamat IP dari situs yang diakses tersebut. Contoh simpelnya, orang akan mau mengakses situs ITS secara daring/online dengan mengetikkan alamat situsnya: www.its.ac.id dibandingkan dengan mengetikkan alamat IP dari situs tersebut: 202.46.129.20. Sebenarnya sama saja mengakses suatu situs web dengan kedua cara tadi. Tapi mengapa kedua halaman web yang tampil melalui kedua cara tadi bisa sama persis? Itu karena alamat situs yang kita ketikkan diterjemahkan menjadi alamat IP oleh server yang menangani penerjemahan DNS, yang disebut server DNS.
       Struktur sebuah nama domain (struktur dari DNS) adalah sebagai berikut.
  1. Root Level
    Merupakan level utama (level paling penting) sekaligus level awal dari sebuah domain, di mana ketika DNS server akan mencari sebuah alamat domain, maka yang pasti diakses terlebih dahulu adalah root level. Lambang dari root level hanyalah sebuah tanda titik (.).
  2. Top Level Domain (TLD)
    Merupakan level kedua setelah root level di mana ketika DNS telah mengakses ke root, maka akan langsung mengakses ke level ini. Ada dua macam TLD, yaitu Global Top Level Domain (gTLD) dan Country Code Top Level Domain (ccTLD). gTLD adalah seperti yang didefinisikan di atas. Contohnya antara lain: .com (untuk komersial), .net (untuk networking), .edu (untuk edukasi/pendidikan) .gov (untuk lembaga pemerintah non militer), dan .mil (untuk lembaga pemerintah militer). Sedangkan ccTLD adalah TLD yang diperuntukkan untuk masing-masing negara, seperti Indonesia dengan kode ID (.co.id, .net.id, .or.id) atau Singapura dengan kode SG (.com.sg, .net.sg), Australia dengan kode AU (com.au, .org.au), dsb..
    Daftar domain internet di Indonesia:
    • .AC.ID
      Pengguna: Lembaga pendidikan yang sedikitnya memiliki program Diploma 1 tahun (D1), dan beroperasi sesuai dengan perundangan yang berlaku. Termasuk di dalamnya perguruan tinggi yang bukan di bawah naungan Ditjen Dikti Depdikbud, seperti IAIN, Akademi Departemen, dan lain sebagainya.
    • .SCH.ID
      Pengguna: Sekolah (TK, SD, SMTP, SMU, SMK, Madrasah Ibtidaiyah, Madrasah Tsanawiyah, dan Madrasah Aliyah) serta lembaga pendidikan yang berada di bawah naungan PLSM Diknas, seperti lembaga kursus dan sejenis.
    • .CO.ID
      Pengguna: Badan usaha yang mempunyai badan hukum sah serta memiliki SIUP (Surat Izin Usaha Perdagangan) atau badan hukum sah yang berbentuk PT, PK, atau firma yang memiliki akte serta izin usaha yang terkait.
    • .GO.ID
      Pengguna: Khusus Lembaga milik Pemerintah Republik Indonesia.
    • .MIL.ID
      Pengguna: Khusus Lembaga dalam jajaran militer Republik Indonesia.
    • .NET.ID
      Pengguna: Khusus perusahaan penyelenggara yang memiliki pelanggan eksternal dan bukan merupakan anggota organisasi tersebut. Perusahaan harus merupakan badan hukum sah yang memiliki SIUP (Surat Izin Usaha Perdagangan) atau badan hukum sah yang berbentuk PT, PK, atau Firma yang memiliki akte serta izin usaha yang terkait.
    • .OR.ID
      Pengguna : Untuk segala macam organisasi yang tidak termasuk dalam kategori domain yang disebut sebelumnya.
    • .WEB.ID
      Pengguna: Ditujukan bagi badan usaha, organisasi, ataupun perseorangan yang melakukan kegiatannya di World Wide Web.
  3. Second Level Domain
    Merupakan level setelah TLD, di mana ketika DNS telah mengakses ke root dan TLD, akan langung mengakses ke SLD. Contohnya: google.com, its.ac.id, dan wikipedia.org.
  4. Sub Level Domain
    Merupakan cabang dari domain di atas, bisa merupakan menu atau aplikasi tambahan pada domain utama. Contoh: mail.google.com, if.its.ac.id, dan office.microsoft.com.
       Dalam DNS, terdapat istilah-istilah yang sering ditemui. Istilah tersebut terdapat dalam software/paket konfigurasi DNS yang sering digunakan di OS Linux: Bind9. Di antaranya adalah sbb..
  • NS (Name Server) record
    Record yang berisi nama server otoritatif untuk suatu zona yang diberikan. Format konfigurasinya: [domain-name] (IN) NS servername, di mana IN = Internet (diberi tanda kurung, artinya opsional) dan servername = nama server DNS yang sebenarnya.
  • MX (Mail Exchange) record
    Record yang berisi domain mail exchange. Format konfigurasinya: [domain-name] (IN) MX [preference] [exchanger], di mana domain-name = nama domain klien/host, preference = menentukan preferensi klien yang diinginkan (isinya berupa angka 0 untuk preferensi tertinggi hingga 65535 untuk yang terendah), dan exchanger = alamat webmail dari domain yang didefinisikan di domain-name
  • A (Address) record
    Record yang menunjukkan alamat IPv4. Nama owner akan ekuivalen dengan alamat IP yang didefinisikan setelah record A. Format konfigurasinya: [domain-name] (IN) A [ip-address]
  • WKS (Well-Known Service) record
    Record yang berguna untuk menyimpan daftar layanan/Service yang dapat didukung oleh host. Kebanyakan situs web tidak menggunakan record ini karena alasan keamanan. Format konfigurasinya: [domain-name] [TTL] (IN) WKS [ip-address] [protocol-list-of-services]
  • HINFO (Host INFOrmation) record
    Record yang berguna untuk menyimpan informasi yang dimiliki suatu host (pabrik pembuat dan tipe sistem operasi/OS-nya). Kebanyakan situs web juga tidak menggunakan record ini karena alasan keamanan. Format konfigurasinya: [host] (IN) HINFO [hosttype] [os]
  • CNAME (Canonical Name) record
    Record yang menjelaskan primary name untuk owner. Nama ownernya disebutkan dalam alias yang merujuk pada nama sebenarnya dari suatu host. Format konfigurasinya: [nickname] (IN) CNAME [hostname]
Semua format konfigurasi tersebut diterapkan dalam file-file konfigurasi Bind9, salah satu contohnya terdapat pada direktori Linux /etc/bin/db.forward. Isinya seperti terlihat pada gambar berikut.
       Kebanyakan situs web sekarang ini menggunakan lebih dari satu server DNS. Satu disebut DNS Master, lainnya disebut DNS Slave. DNS Master adalah server DNS yang bertanggung jawab atas domain dan subdomain yang dikelolanya. Komputer menjalankan fungsi name server berdasarkan database yang dimilikinya. Sedangkan DNS Slave adalah DNS server yang fungsinya untuk membackup DNS Master, sehingga saat DNS Master mengalami down, maka DNS Slave dapat menggantinya. Pada DNS Slave, konfigurasi database domain dan subdomain akan secara otomatis ditransfer dari DNS master.
       Teori gampangannya begini, DNS Slave akan meminta daftar zone dari Master. Master memberikan transfer data zone dari daftar IP yang diperbolehkan. Di DNS Slave, kita tidak perlu lagi secara manual membuat atau mengedit data dari zone yang diinginkan karena secara dinamis akan diambil dari DNS Master. DNS Master memberikan transfer zone dengan melihat IP DNS yang terdaftar di dalamnya.
       Konfigurasi DNS Master & DNS Slave dilakukan dalam file konfigurasi Bind9, di direktori /etc/bind/named.conf.local. Contoh konfigurasinya dapat dilihat pada gambar berikut.

       Pada DNS, dikenal pula istilah zone transfer, yaitu sebuah mekanisme untuk mereplikasi DNS data dari satu DNS ke DNS server lain. Zone transfer digunakan pada saat kita ingin mereplikasi DNS data pada DNS server kita dalam upaya menghemat bandwidth, untuk meningkatkan kecepatan terhadap suatu permintaaan atau untuk membuat DNS data selalu tersedia meskipun pada saat DNS server di internet terputus/down.
       Pembahasan DHCP terdapat pada postingan berikutnya.