Alle DHCP Optionen wie MessageType kommen erst nach 300 Bytes
und das ist die maximale Länge eines BOOTP Pakets.
Moment, Kommando zurück, das war falsch.
Die DHCP Options kommen in den letzten 64 Bytes, also im Vendor Informations Field, direkt nach den 4 Bytes des Magic Cookies. Am Schluss wird das Paket noch mit Nullen auf 300 Byte aufgefüllt, damit die 64 Bytes des Feldes komplett gefüllt sind.
ah, dann hab ich einfach nicht genau genug die Felder
gegeneinander verglichen… ich dachte das Option-Field vom
DHCP ist bei BOOTP einfach nur geschrumpft auf die 64Bytes…
Dabei sind ja die Felder SNAME und File auch nicht
entsprechend angelegt wie beim DHCP.
Nein, SNAME und File sind genauso angelegt wie bei BOOTP. Ich hab mir mal gerade die DHCP Pakete bei mir im LAN angeschaut. Die decken sich 1:1 auch mit der BOOTP Spezifikation. Sollten sie ja auch, da DHCP ja nur eine Erweiterung von BOOTP ist.
Kommt den überhaupt ein BOOTREPLY zurück?
Testen kann ich es leider nicht, da ich hier im Netzwerk
lediglich einen DHCP Server besitze. Ich weiß nicht ob man
durch eine kostenlose Software einen BOOTP Server vorgaukeln
kann, so dass man sich die Pakete in Wireshark anschauen
kann…
Nimm doch einfach ne Linux Distribution in der der bootpd Daemon dabei ist.
ich dazu nichts in der RFC lesen können. Bei Wireshark ist es
so, dass bei einem DISCOVER (DHCP) das Option-Field weniger
Bytes als 64Bytes aufweist und von Wireshark nur mit
entsprechend so vielen Padding Bytes gefüllt worden ist, dass
das Option-Field 64Byte umfasst.
Wireshark füllt nichts auf. Die DHCP Optionen sind ja - wie ich inzwischen gesehen habe - im Vendor Field enthalten. Und das hat laut Bootp Spezifikation 64 Bytes, weswegen der DHCP Client das mit Nullen auffüllt.
Bei einer OFFER oder REQUEST Message ist die Größe der
angegebenen Optionen größer als 64Bytes -> und es wird laut
Wireshark auf die ganzen 320Bytes aufgefüllt.
Also bei mir ist bei einem Request das Paket 300 Byte lang. Genau wie vorgesehen. Es kann aber auch beliebig länger werden, denn im Vendor-Field koennen beliebige weitere Informationen enthalten sein.