IPv4 Header optionale Parameter

OP #6343319
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.
Gast #6343471
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.
Gast #6343510
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.
Gast #6343651
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.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren