Mengapa siaran digunakan pada langkah DHCPREQUEST?
19
Ini adalah proses DHCPoperasi,
Pertanyaan saya adalah pada langkah ke-3 mengapa Klien mengirim Siaran dan bukan Unicast setelah dua operasi sebelumnya alamat server DHCP / Relay server harus diketahui?
Apakah ada jawaban yang membantu Anda? Jika demikian, Anda harus menerima jawabannya sehingga pertanyaan tidak terus muncul selamanya, mencari jawaban. Atau, Anda bisa memberikan dan menerima jawaban Anda sendiri.
Server menerima siaran DHCPREQUEST dari klien. Server-server itu tidak dipilih oleh pesan DHCPREQUEST menggunakan pesan sebagai pemberitahuan bahwa klien telah menolak tawaran server itu.
Protokol ini mengasumsikan ada beberapa server DHCP. Dengan menyiarkan pesan permintaan, semua server yang mungkin telah mengeluarkan penawaran dapat mengetahui pilihan klien.
Anda dapat berpotensi memiliki beberapa server DHCP - permintaan dikirim sebagai siaran untuk memberi tahu server DHCP lain yang berpotensi mengirim penawaran yang tawarannya tidak diambil.
Mengapa hal itu menyiratkan bahwa siaran perlu digunakan? Klien tahu alamat MAC server dari pesan DHCPOFFER, sehingga bisa mengirim DHCPREQUEST unicast ke server itu - tidak perlu alamat IP untuk itu terjadi.
psmears
1
@psmears, karena siaran L3 dikirim sebagai siaran L2. DHCP bukan protokol L2, jadi Anda terikat pada aturan karena data diteruskan dari L3 ke L2.
YPelajari
2
@YLPelajari: Anda juga memerlukan IP sumber dan tujuan untuk paket L3 multicast atau broadcast, juga, jadi itu jelas bukan masalahnya :) Tidak ada alasan teoritis mengapa paket DHCPREQUEST tidak dapat dikirim dengan IP tujuan dan MAC dari server, dan (seperti halnya paket siaran) IP sumber 0,0.0.0. Alasan siaran adalah untuk memberi tahu server DHCP lainnya (jika ada) bahwa klien menolak tawaran mereka.
psmears
1
@psmears, tujuan siaran L3 adalah 255.255.255.255. Anda dapat sumber siaran L3 dari 0.0.0.0. Namun, Anda tidak dapat sumber unicast L3 dari 0,0.0.0.
YPelajari
2
@YLPelajari: Anda tentu dapat mengirim paket dengan byte untuk alamat sumber yang disetel ke nol! Itu mungkin dilarang oleh beberapa RFC - apakah Anda tahu satu? RFC1700 mengatakan 0.0.0.0 "hanya dapat digunakan sebagai alamat sumber" (tetapi tidak tentang unicast / broadcast); RFC1122 mengatakan 0.0.0.0 "TIDAK HARUS dikirim, kecuali sebagai alamat sumber sebagai bagian dari prosedur inisialisasi dimana host mempelajari alamat IP-nya sendiri" (sekali lagi, tidak ada pembatasan uni / siaran). Apakah ini diamanatkan di tempat lain?
Jawaban:
https://tools.ietf.org/html/rfc2131#page-13
Protokol ini mengasumsikan ada beberapa server DHCP. Dengan menyiarkan pesan permintaan, semua server yang mungkin telah mengeluarkan penawaran dapat mengetahui pilihan klien.
sumber
Anda dapat berpotensi memiliki beberapa server DHCP - permintaan dikirim sebagai siaran untuk memberi tahu server DHCP lain yang berpotensi mengirim penawaran yang tawarannya tidak diambil.
sumber
Karena sampai server mengirim DHCPACK, klien masih tidak memiliki alamat IP. Server DHCP mungkin merespons permintaan dengan DHCPNACK.
sumber