Forum: PC Hard- und Software IPv4 Header optionale Parameter


von Kevin S. (neu0123)


Lesenswert?

Hallo,
wie kann man herausfinden, ob ein IPv4 Paket optionale Parameter hat?
Ich denke, dass kann man am Feld Optionen/Füllbits(Options/Padding) 
erkennen, bin mir aber nicht sicher.
Ich bin in Wireshark auch ein paar IPv4 Pakete durchgegangen, habe aber 
nicht das Feld Options/Padding gesehen.

von Stefan P. (form)


Lesenswert?

Das IHL Feld (IP Header Length) wird mit Optionen entsprechend größer.

von Kevin S. (neu0123)


Lesenswert?

Ein IP-Header hat mindestens 20 Byte. Bedeutet, das, wenn der IP-Header 
größer 20 Byte ist, der Header, dann optionale Parameter hat?

von foobar (Gast)


Lesenswert?

> Bedeutet, das, wenn der IP-Header größer 20 Byte ist, der Header,
> dann optionale Parameter hat?

Korrekt, wenn IHL>5 dann gibt es das Options-Feld.  Um festzustellen, ob 
und wieviele Optionen da tatsächlich drin sind, muß man das Feld parsen.

von FS (Gast)


Lesenswert?

foobar schrieb:
>> Bedeutet, das, wenn der IP-Header größer 20 Byte ist, der
> Header,
>> dann optionale Parameter hat?
>
> Korrekt, wenn IHL>5 dann gibt es das Options-Feld.  Um festzustellen, ob
> und wieviele Optionen da tatsächlich drin sind, muß man das Feld parsen.

Parsen? Das Feld wird nicht geparst, es wird einfach gelesen. Die Zahl 
gibt die Länge des Headers an, in Vielfachen von 32-bit.

von foobar (Gast)


Lesenswert?

>> Um festzustellen, ob und wieviele Optionen da tatsächlich drin sind,
>> muß man das Feld parsen.
>
> Parsen? Das Feld wird nicht geparst, es wird einfach gelesen.

Das Feld hat eine variable Länge und enthält eine variable Anzahl von 
Optionen, die selbst jeweils eine variable Länge haben.  Mit "einfach 
lesen" ist es nicht getan.  Kannst ja mal einen Blick in 
"/usr/src/linux/net/ipv4/ip_options.c:ip_options_compile" werfen.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.