httpd-users-de mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Peter Pöml <pe...@poeml.de>
Subject Re: Fehlerhafte Dateiübertragung
Date Mon, 23 Aug 2010 22:52:52 GMT
Le 01.08.2010 à 15:04, Ralph ballier a écrit :

> Hallo Peter,
> 
> vielen Dank für deine Hinweise.
> 
> Ich habe mit tcpdump von einem Testrechner aus über die ansonsten nicht
> benutzte Schnittstelle eth1 mit
> 
> tcpdump -i eth1 -w proto
> 
> den Datenverkehr bei dem Befehl lynx anton/a65536.pdf mitgeschnitten. Jetzt
> sollte in der Datei proto doch eigentlich Byte für Byte der Datenstrom zu
> sehen sein, oder? Wenn ich die Datei mit dem vi öffne, ist aber kaum etwas
> vernünftiges zu sehen (vi im Binärmodus, rechts werden die druckbaren
> Zeichen ausgegeben. Die Zahlenfolgen werden immer wieder durch nicht
> druckbare Zeichen unterbrochen). Daraus kann ich gar nichts ersehen.

Der mit tcpdump -w mitgeschnittene Datenverkehr laesst sich am besten mit tcpdump -r auswerten.
(Oder mit einem aehnlichen Tool wie ethereal/wireshark, welches mit den gleichen Dump-Dateien
zurechtkommen sollte.) 

Bei tcpdump -r kann man dann verschiedenste Optionen hinzufuegen oder weglassen, um den Datenstrom
nach verschiedenen Gesichtspunkten zu ueberblicken oder auch im Detail zu betrachten. Da man
den Dump bereits als Datei vorliegen hat, kann man ihn sozusagen so oft anschauen, wie man
will, anstatt nur einmal live dabei zu sein und sich dabei vorher fuer eine bestimmte Betrachtungsweise
entschieden haben zu muessen.

Allerdings kann es noetig sein, wie jedenfalls jemand erwaehnt hat, den "Capture size" Parameter
auf einen grossen Wert zu setzen, weil sonst die eigentlichen transportierten Daten nur unvollstaendig
in das Binaerdump-File geschrieben werden. Das weiss ich nicht mehr, kann aber gut sein.

Ich habe vor einiger Zeit einmal ein Beispiel aufgeschrieben, wie ich diese Technik verwendet
habe, um einem merkwuerdigen Bug auf die Spur zu kommen. Es war ein richtig spannender Detektiv-Fall:
http://lizards.opensuse.org/2008/12/15/longstanding-wiki-problem-fixed/
Der Detailblick auf den Inhalt der einzelnen Pakete des Netzwerkverkehrs fuehrte in dem Fall
direkt zur Loesung. Am Ende zeigte sich, dass ein einfacher Programmierfehler vorlag. Er war
halt nur schwer zu finden. Wenn er nicht so drastische Konsequenzen gehabt haette, haette
sich vielleicht nie jemand auf die Suche nach ihm begeben.

Eine Art, den binaeren Dump anzuschauen, waere: tcpdump -X -r <dumpfile>

Peter
--------------------------------------------------------------------------
                Apache HTTP Server Mailing List "users-de" 
      unsubscribe-Anfragen an users-de-unsubscribe@httpd.apache.org
           sonstige Anfragen an users-de-help@httpd.apache.org
--------------------------------------------------------------------------


Mime
View raw message