Anda di halaman 1dari 7

BOOTP dan DHCP 1

BOOTP and DHCP

Setiap komputer yang dihubungkan dengan TCP/IP harus mengetahui informasi berikut :
 Alamat IP
 Subnet Mask
 Alamat IP dari router
 Alamat IP dari nama server
Informasi ini biasanya dimasukkan kedalam file konfigurasi dan diakses oleh computer mengikuti
selama proses bootstrap. Tetapi bagaimana sebuah workstation tanpa disk atau sebuah komputer
dengan dengan disk mulai dihidupkan pertama kali ?
Dalam kasus komputer tanpa disk, sistem operasi dan perangkat lunak jaringan akan dimasukkan
ke dalam Read-Only Memory (ROM). Bagaimanapun, informasi diatas tidak diketahui pembuatannya
dan juga tidak di masukkan kedalam ROM. Informasi tergantung dari konfigurasi individu mesin dan
defenisi jaringan tiap mesin yang tersambung.

17.1 BOOTP
BOOTP (Protokol Bootstrap) adalah sebuah client/server protokol yang dirancang untuk menyediakan
empat buah sebutan sebelumnya dari informasi untuk komputer tanpa disket atau sebuah komputer
yang di-boot (dihidupkan) pertama kali. Kita telah mempelajari satu protokol, RARP, yang
menyediakan Alamat IP untuk komputer tanpa disk. Kenapa kita membutuhkan protokol lainnya ?
jawabannya adalah RARP hanya menyediakan alamat IP dan bukan informasi lainnya. Jika kita
menggunakan BOOTP, kita tidak membutuhkan RARP. Untuk alasan ini RARP bukan
diinplementasikan dalam banyak sistem, dan seluruhnya dibuang dari TCP/IP versi 6.
Format Packet
Gambar 17.1 menunjukkan format dari sebuah paket BOOTP

Gambar 17.1 Format Paket BOOTP

 Operation code. Ini adalah field 8-bit yang mendefenisikan dari paket BOOTP: meminta(1) atau
mengirim (2).
 Hardware type. Ini adalah field 8-bit yang mendefinisikan jaringan fisik. Setiap tipe dari LAN
ditetapkan sebagai integer. Sebagai contoh, untuk nilai ethernet adalah 1.
 Hardware lenght. Ini adalah field 8 bit yang mendefenisikan panjang alamat fisik dalam byte.
Contohnya, untuk ethernet nilainya adalah 6.
 Hop count. Ini adalah field 8-bit yang mendefinisikan nomor maksimum dari paket hops yang
dapat dibawa.
BOOTP dan DHCP 2

 Transaction ID. Ini dalah field 4-bit yang membawa sebuah integer. Identifikasi transaksi diatur
oleh client dan digunakan untuk mecocokan pengiriman dan penerimaan. Server mempunyai nilai
yang sama kembali sewaktu mengirim.
 Number of seconds. Ini adalah field 16-bit yang mengindikasikan nomor dari detik yang dilalui
sejak client mulai dihidupkan.
 Client IP address. Ini adalah field 4-byte yang mengandung alamat IP client. Jika client tidak
memiliki informasi ini, field ini memiliki nilai 0.
 Your IP address. Ini adalah field 4-byte yang mengandung alamat IP client. Ini di diisi oleh server
(dalam pesan balasan) atas permintaan dari client.
 Server IP address. Ini dalah field 4-byte yang mengandung alamat IP server. Ini diisi oleh server
dalam bentuk pesan balasan.
 Gateway IP address. Ini adalah field 4-byte yang mengandung alamat IP dari router. Ini diisi oleh
server dalam membalas pesan.
 Client hardware address. Ini adalah alamat fisik dari client. Sepanjang server dapat memangginl
alamat ini dari frame yang dikirimkan dari client, akan lebih efisien jika alamat dipenuhi dengan
tegas oleh client dalam meminta pesan.
 Server name. Ini adalah pemilihan field 64-byte yang dipenuhi oleh server dalam membalas paket.
Itu mengandung sebuah string null-terminated mengikuti nama domain server.
 Boot filenama. Ini adalah pemilihan field 128 byte yang dapat dipenuhi oleh server dalam
membalas paket. Ini mengandung sebuah string null-terminated mengikuti nama path dari file
boot. Clien dapat menggunakan path ini dan memanggil informasi booting.
 Option. Ini dalah field 64-byte dengan kegunaan ganda. Ini dapat membawa tambahan informasi
lainnya (seperti network mask atau alamat default router) atau beberapa informasi spesifik vendor.
Field ini hanya menggunakan pesan balasan. Server menggunakan sebuah nomor yang disebut
magic cookie, dalam format alamat IP dengan nilai 99.130.83.99. Ketika client selesai membaca
pesan, akan melihat magic cookie ini. Jika ada, 60 byte berikutnya dipilih. Pilihan ini disusun dari
tiga fiel: 1-byte tag, 1-byte length dan nilai variable-length. Panjang field didefinisikan panjang
dari nilai field, bukan pilihan keseluruhan. Lihat Gambar 17.2.

Gambar 17.2 Option Format

Daftar pilihan ditunjukkan pada Tabel 17.1.

Deskripsi Tag Lenght Value


Padding 0
Subnet mask 1 4 Subnet mask
Time Offset 2 4 Time of the day
Default routers 3 Variable IP addresses
Time servers 4 Variable IP addresses
DNS servers 6 Variable IP addresses
Print servers 9 Variable IP addresses
Host name 12 Variable DNS name
Boot file size 13 2 Integer
Vendor specific 128-254 Variable Specifik
Information
End of list 255
BOOTP dan DHCP 3

Panjang dari field mengandung alamat IP kelipatan dari 4-byte. Pilihan lapisan, yang panjangnya
hanya 1-byte, digunakan hanya untuk pelurusan (alignment). Akhir dari daftar pilihan, yang juga
panjangnya hanya 1-byte, menunjukkan akhir dari field pilihan. Vendor dapat menggunakan tags
128 sampai 254 untuk memberikan informasi tambahan untuk membalas pesan.

Operasi
Gambar 17.3 menunjukkan langkah-langkah meliputi penggunaan protokol BOOTP

Gambar 17.3 Operasi BOOTP

1. Server BOOTP menggunakan port UDP nomor 67 dan menunggu sebuah client.
2. Client mengirim pesan permintaan BOOTP kepada server. Pesan ini merupakan encapsul dalam
pengguna datagram UDP, menggunakan port UDP nomor 68. Pengguna datagram UDP, bergiliran,
diringkas (encapsulated) dalam IP datagram. Pembaca menanyakan bagaimana client dapat
mengirim IP datagram ketika mengetahui alamat IP-nya (alamat sumber) atau alamat IP server
(alamat tujuan). Client menggunakan semua 0 sebagai alamat sumber dan semua 1 sebagai alamat
tujuan (lihat alamat khusus pada Bab 4).
3. Server membalas kepada clinet dengan sebuah broadcast atau sebuah unicast message
menggunakan UDP ditujukan ke port 68. Unicast membalas pesan yang disukai sebab itu tidak
meliputi host lainnya dalam jaringan. Dengan catatan apabila server menggunakan unicast message
untuk membalas, itu tidak menggunakan layanan ARP. Protokol ARP menggunakan bagian yang
lain (client) untuk mengetahui alamat IP-nya, dimana tidak benar dalam kasus ini. Ini artinya server
harus secara manual menambahkan alamat IP client ke tabel ARP, dimana tidak mengikuti
beberapa sistem. Dalam sistem ini, server memiliki broadcast untuk membalas.

Port UDP
Aspek luar biasa dari BOOTP adalah client menggunakan port 68 yang terkenal, malahan port yang
berlangsung sebentar. Ini disebabkan balasan dari server dapat di broadcast dan oleh karena itu
jawaban akan diterima oleh semua host. Bagaimanapun, apakah jika dua client jika yang satu
menggunakan BOOTP the other DAYTIME, memilih port yang terkenal ? pesan broadcast akan
dikirimkan untuk kedua client, dan sebab nomor port yang sama, kedua client akan menerima pesan
yang sama. Satu client mengharapkan balasan BOOTP, the other a DAYTIME membalas.
Bagimanapun, jika BOOTP client menggunakan port 68 yang terkenal, BOOTP tidak akan menerima
balasan pada DAYTIME proses.
Pembaca mungkin menanyakan jika dua host menggunakan BOOTP pada waktu yang sama.
Keduanya menggunakan port 68 yang terkenal. Jika server broadcast membalas, kedua host menerima
pesan. Dalam kasus ini, field ID transaksi dapat menolong. Ini sangat tidak mungkin dua host
menggunakan indentifikasi transaksi yang sama dalam permintaannya. Pada keadaan ini, host dapat
mengenali jawaban dari balasan host-host lainnya.
BOOTP dan DHCP 4

Menggunakan TFTP
Server tidak dapat mengirimkan semua informasi bila sebuah client diperlukan untuk booting. Dalam
pesan balasan, server mendefinisikan nama path dari sebuah file yang mana client dapat menemukan
informasi booting yang lengkap. Client dapat meneggunakan pesan TFTP, yang diringkas dalam
sebuah UDP datagram pengguna, untuk mendapatkan masa istirahat (the rest) dari informasi yang
dibutuhkan.

Relay Agent
Mungkin terjadi administrator mengambil keputusan tidak memasukkan server BOOTP untuk setiap
LAN. Malahan remote BOOTP server mungkin melayani setiap LAN.
Dalam kasus ini, jika sebuah client memerlukan boot, itu tidak dapat menjangkau remote server
menggunakan alamat broadcast sebab semua alamat 1 hanya memiliki hak local. Masalah dapat
dipecahkan dengan menggunakan relay agent. Sebuah relay agent adalah sebuah router yang
membantu mengirim permintaan lokal ke remote server.
Relay agent menerima permintaan client dan menambahkan alamat IP pada field untuk
menyediakan layanan ini, dan mengirimnya ke remote server. Remote server mengirim balasan relay
agent, yang mana kemudian membalasnya ke client.

Error Control
Bagaimanakah jika sebuah permintaan hilang atau rusak ? bagaimana jika jawaban juga rusak ? itu
membutuhkan error control ketika menggunakan BOOTP. BOOTP menggunakan UDP, yang mana
tidak menyediakan error control. BOOTP harus menyediakan error control. Error control
menyelesaikannya dengan dua strategi :
1. BOOTP memiliki UDP cheksum. Ingat penggunaan cheksum dalam UDP adalah pilihan.
2. BOOTP client menggunakan waktu dan kebijakan pengiriman ulang jika tidak membalas
permintaan BOOTP. Yang mana untuk mengatasi kemacetan lalu lintas ketika beberapa host
membutuhkan pengiriman ulan sebuah permintaan (sebagai contoh, sesudah kegagalan
daya/power), BOOTP memaksa client untuk menggunakan nomor acak untuk mengatur pewaktuan.

17.2 DYNAMIC HOST CONFIGURATION PROTOCOL (DHCP)


BOOTP bukanlah sebuah konfigurasi protokol yang dinamis. Ketika client meminta alamat IP,
BOOTP server merundingkan (consult) tabel yang yang cocok dengan alamat fisik dari client dengan
alamat IP-nya. Ini mengakibatkan ikatan antara alamat fisik dan alamat IP dari client tetap ada. Ikatan
ditentukan ulang.
Apakah sebuah host pindah dari satu jaringan fisik ke lainnya ? apakah jika sebuah host
menginginkan sebuah alamat IP sementara ? BOOTP tidak dapat menangani masalah itu sebab
pengikatan antara alamat IP dan fisik adalah tetap dan ditentukan dalam sebuah tabel ketika dirubah
oleh administrator. BOOTP adalah sebuah protokol konfigurasi statis.
DHCP telah ditemukan untuk melayani configurasi dinamis. DHCP adalah ekstensi ke BOOTP. Itu
adalah penyempurnaan BOOTP dan backward compatible dengan BOOTP. Ini artinya sebuah host
dijalankan dengan BOOTP client dapat meminta sebuah konfigurasi statis dari DHCP server.
DHCP juga dibutuhkan ketika sebuah host dipindahkan dari jaringan ke jaringan, terhubung atau
tidak terhubung dari jaringan (seperti pelanggan ke penyedia layanan). DHCP menyediakan alamat IP
sementara untuk periode waktu yang terbatas.
DHCP server memiliki dua database. Database pertama secara statis mengikat alamat fisik dengan
alamat IP. Ini sama dengan tipe database BOOTP server. DHCP memiliki database kedua dengan pool
of available alamat IP. Database kedua membuat DHCP dinamis. Ketikan DHCP client meminta
alamat IP sementara, DHCP server pergi ke pool of available (tidak digunakan) alamat IP dan
mencocokkan alamat IP untuk perundingan periode waktu.
Ketika DHCP client mengirimkan sebuah permintaan ke DHCP server, pertama kali server
memeriksa database statis. Jika masukanan dengan permintaan alamat fisik terdapat pada database
statis, alamat IP permanen dari client dikembalikan. Pada the other hand, jika masukan tidak berada
BOOTP dan DHCP 5

pada database statis, sever memilih alamat IP dari the available pool dan mencocokkan dengan alamat
client dan menambahkan masukan ke database dinamis.

Leasing
Alamat diberikan dari kelompok (the pool) alamat sementara. DHCP server mengontrak (lease) pokok
persoalan (issues) untuk periode waktu khusus. Ketika kontrak kedaularsa, client harus berhenti
menggunakan alamat IP atau memperbaharui kontrak. Server sudah memilih untuk setuju atau tidak
setuju untuk memperbaharui. Jika server tidak setuju, client berhenti menggunakan alamat.

Packet Format
Untuk membuat DHCP backward cocok dengan BOOTP, perancang DHCP sudah memutuskan untuk
menggunakan format paket yang sama. Mereka hanya menambahkan 1-bit flag ke paket. Yang mana
mengikuti interaksi berbeda dengan server, pilihan ekstra telah ditambahkan ke field pilihan.
Gambar 17.4 menunjukkan format pesan DHCP.

Gambar 17.4 Paket DHCP


Field-fieldnya adalah sebagai berikut :
 Flag. 1-bit flag telah ditambahkan kedalam paket (bit pertama dari field yang tidak digunakan) ke
client khusus bentuk balasan broadcast (malahan unicast) dari server. Jika balasan unicast ke client.
Sejak client tidak mengetahui alamat IP, mungkin mungkin membuang paket. Bagaimanapun jika
datagram IP adalah broadcast, setiap host menerima dan memproses pesan broadcast.
 Option. Beberapa pilihan telah ditambahkan ke daftar pilihan. Pilihan pertama, lebar nilai 53 untuk
tag subfield, digunakan untuk mendefinisikan tipe interaksi antara client dan server (lihat tabel
17.2). Beberapa pilihan mendefinisikan parameter seperti lease time dan selanjutnya. Pilihan field
pada DHCP dapat lebih dari 312 byte.
Nilai Nilai
1. DHCPDISCOVER 5. DHCPPACK
2. DHCPOFFER 6. DHCPNACK
3. DHCPREQUEST 7. DHCPRELEASE
4. DHCPDECLINE
Tabel 17.1 Pilhan DHCP
Kita akan melihat penggunaan pilihan in pada seksi selanjutnya.
BOOTP dan DHCP 6

Transition States
Transisi DHCP client dari satu state ke state lainnya tergantung pesan yang diterima atau dikirimkan.
Lihat gambar 17.5.

Gambar 17.5 Diagram Transisi DHCP

Initializing State
Ketika DHCP client pertama kali dimulai, ia akan menginisialisasi state. Client mem-broadcast pesan
DHCPDISCOVER (sebuah permintaan pesan dengan pilihan DHCPDISCOVER) menggunakan
port 67.
Selecting State
Setelah mengirim pesan DHCPDISCOVER, client pergi ke state seleksi. Server dapat menyediakan
tipe layanan dengan pesan DHCPOFFER. Dalam pesan ini, server menawarkan (offer) alamat IP. Itu
juga dapat menawarkan durasi lease. Defaultnya adalah 1. Server mengirimkan DHCPOFFER
mengunci penawaran alamat IP dimana itu tidak terdapat pada beberapa client-client lainnya. Client
memilih satu dari tawaran dan mengirimkan pesan DHCP ke server yang dipilih. Kemudian pergi ke
state yang dipilih. Jika client tidak menerima pesan DHCPOFFER, ia akan mencoba empat kali,
masing-masing dengan jangka waktu (span) 2. Jika tidak ada adala balasan dari DHCPDISCOVER,
client tidur (sleeps) selama 5 menit sebelum mencobanya lagi.

Requesting State
Client tersisa (remains) dalam pemilihan state sejak menerima pesan DHCPACK dari server yang
membuat ikatan diantara alamat fisik dan alamat IP.

Bound State
Pada state ini, client dapat menggunakan alamat IP sejak lease berakhir. Ketika 50 persen dari periode
lease dijangkau (reached), client mengirimkan DHCPREQUEST untuk menanyakan pembaruan. Jika
dalam state loncatan, client dapat juga membatalkan lease dan menuju ke state inisialisasi.
Renewing State
Client tersisa (remains) dalam state pembaruan semenjak satu atau dua events happens. Itu dapat
menerima DCHPPACK, yang mana pemperbarui persetujuan lease. Dalam kasus ini, client mengatur
ulang pewaktuan dan kembali ke state loncatan. Atau, jika DHCPPACK tidak diterima, dan 87,5% dari
waktu lease berakhir, client pergi ke state pengikatan kembali (rebinding state).

Rebinding State
BOOTP dan DHCP 7

Clien tersisa (remains) dalam rebinding state, semenjak satu atau tiga events happens. Jika client
menerima DHCPPACK ia pergi ke bound state dan mengatur ulang pewaktuan.

Exchanging Message
Gambar 17.6 menunjukkan hubungan pertukaran ke diagram transisi.

Gambar 17.6 Pertukaran Pesan

Ringkasan : Topik Protokol DHCP


 ❑ Setiap komputer yang terhubung ke Internet TCP / IP harus mengetahui alamat IP-nya, alamat
IP dari sebuah router, alamat IP dari server nama, dan subnet mask-nya. Dynamic Host Con fi
guration Protocol (DHCP) adalah aplikasi server-klien yang mengirimkan informasi jaringan
penting ke komputer tanpa disk atau komputer saat boot pertama kali.
 ❑ Satu format paket DHCP digunakan untuk permintaan klien dan balasan server. Server DHCP
menunggu permintaan klien secara pasif. Balasan server dapat disiarkan atau unicast. Permintaan
atau balasan DHCP diringkas dalam datagram pengguna UDP.
 ❑ Ketika klien dan server DHCP berada di jaringan yang berbeda, agen relai digunakan untuk
mengirim permintaan DHCP lokal dari klien ke server jarak jauh.
 ❑ Ketika DHCP bertindak sebagai protokol konfigurasi statis, ia menggunakan tabel yang
memetakan alamat IP ke alamat fisik. Ketika DHCP bertindak sebagai protokol konfigurasi
dinamis, DHCP menyewakan alamat IP ke klien yang meminta.
 ❑ Klien DHCP dirancang sebagai mesin status yang menggunakan enam status utama dan tiga
timer untuk memungkinkan host menyewa alamat IP untuk periode waktu tertentu.

Anda mungkin juga menyukai