TCPdump - Longueur de l'en-tête HTTP - Réseaux - Systèmes & Réseaux Pro
Marsh Posté le 26-08-2008 à 11:51:28
... xD
13:46:00.957326 10.99.21.98.www > 172.31.0.12.33755: P 190:378(188) ack 1249 win 17376 <nop,nop,timestamp 1599062579 0> (DF) (ttl 64, id 24862, len 240)
0000: 4500 00f0 611e 4000 4006 0cfa 0a63 1562 E..ða.@.@..ú.c.b
0010: ac1f 000c 0050 83db 7854 d9db e9f7 c72c ¬....P.ÛxTÙÛé÷Ç,
0020: 8018 43e0 0d52 0000 0101 080a 5f4f c233 ..Cà.R......_OÂ3
0030: 0000 0000 4854 5450 2f31 2e31 2033 3034 ....HTTP/1.1 304
0040: 204e 6f74 204d 6f64 6966 6965 640d 0a44 Not Modified..D
0050: 6174 at
0030: 5f4f c233 4745 5420 2f20 4854 5450 2f31 _OÂ3GET / HTTP/1
0040: 2e30 0d0a 4966 2d4d 6f64 6966 6965 642d .0..If-Modified-
pk la longueur ??
qu'entend tu par la ??
Marsh Posté le 26-08-2008 à 12:36:28
newixz a écrit : ... xD |
Merci de ta réponse.
J'aimerais la longueur de l'en-tête HTTP pour chaque datagramme IP encapusulant ce protocole (question du pôle développement de ma boîte...).
Si tu as une astuce...
Marsh Posté le 26-08-2008 à 14:35:03
j'ai trouvé deux trois trucs,
l'entete est composé de 5 à 15 champs suivant les options mais chaque champs serait limité a 32bits
on a donc l'entete compris entre 20o et 60o max
reste donc a determiner la longueur exact ^^
On continue..
Marsh Posté le 26-08-2008 à 15:18:19
J'ai trouvé ceci:
The Content-Length entity-header field indicates the size of the entity-body, in decimal number of OCTETs, sent to the recipient or, in the case of the HEAD method, the size of the entity-body that would have been sent had the request been a GET.
Si je comprends bien il s'agit d'un champ HTTP mais je n'ai pas l'impression qu'il soit obligatoire.
Dans Wireshark on a un filtre dans Filter Expression qui s'appelle "http.content_lenght ... (HTTP Content-Length header)"... Est-ce ce que je cherche?
Marsh Posté le 26-08-2008 à 15:34:40
Content lengh header, yes
a mon avis c'est cela, je trouverais bien la meme chose sur tcpdump,
c'est sympa ca
Marsh Posté le 26-08-2008 à 19:33:01
Perso j'aurai dit qu'il n'y a pas d'entête HTTP dans un paquets IP.
Vu que c'est une connexion TCP, L'entête est associée à une requète http envoyée dans la connexion TCP et est indépendante des datagrammes IP.
La longueur de l'entête HTTP est déterminée par la longueur de la ligne :
http://www.iprelax.fr/http/1945-4.php
Marsh Posté le 26-08-2008 à 19:41:03
Code :
|
oui et non (le champs data correspondant au datagramme IP relatif a notre entete http) mais mon résonnement etait faux.
Code :
|
si
Code :
|
on a bien un paquet IP qui contient l'entete.
Marsh Posté le 26-08-2008 à 19:50:54
newixz a écrit : [code] |
Oui mais c'est un cas particulier. L'entête est liée à la connexion et non au datagramme IP.
- l'entête peut être répartie sur plusieurs paquets
- rien n'impose que le paquet ip commence par l'entête (on peut faire plusieurs requêtes dans une même session TCP)
Marsh Posté le 26-08-2008 à 19:56:23
Merci pour la précision
Marsh Posté le 27-08-2008 à 10:55:05
J'ai retrouvé cela sur le site de HSC
30.459994 178.147.72.193.2898 > 127.0.0.1.80: tcp 30 [ttl 1]
IP_HDR=20 IP_OPT=0 TCP_HDR=20 TCP_OPT=0 DATA=30 FLAGS=PUSH ACK
IP_HDR 45 00 00 46 1d 16 00 00 01 06
vhl tos len len id id off off ttl pro
IP_HDR 22 47 b2 93 48 c1 7f 00 00 01
sum sum src src src src dst dst dst dst
TCP_HDR 0b 52 00 50 4f ee 06 a7 3a d1
src src dst dst seq seq seq seq ack ack
TCP_HDR bb 00 50 18 02 00 4c 9d 00 00
ack ack off flg win win sum sum urp urp
DATA 47 45 54 20 2f 63 67 69 2d 62
G E T / c g i - b
DATA 69 6e 2f 70 65 72 6c 2e 65 78
i n / p e r l . e x
DATA 65 20 48 54 54 50 2f 31 2e 30
e H T T P / 1 . 0
Ca reprend mon cas, connexion sur un serv web.
la req est la suivant GET./default.asp::$DATA.
+
Marsh Posté le 21-08-2008 à 09:41:26
Bonjour,
Je cherche à connaître par TCPdump la longueur de l'en-tête HTTP...
Qui à une idée de filtre ou autre?
Merci!