PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : tcpdump bad dump file format weil ja ascci



linuxhanz
25.02.04, 16:17
Hallo,

Ich habe hier ein LOG (tcpdump mit den mit Optionen -s2048 -X -v -n -e gestartet).
Das ist jetzt quasi ascci wegen -X und läßt sich mit meinem älteren Etherreal
noch tcpdump reeinlesen.

Nun kann ich aber an dnet pipen und neu senden und dann mit tcpdump
aufnehmen.

Leider strikt das dnet bei zu grossen Datenmengen. Ich suche jetzt also eine
Schleife die folgendes macht:

cat tcpdump.log |Lies die ersten n bytes und dann subtrahiere im nächsten Durchlauf die ersten bytes und lies die nächsten n bytes usw. wobei diese dann jeweils an dnet gesendet werden.


wie läßt sich das incrementell bewerkstelligen? Sicher mit dem Operatoren +=
oder -=? bin auch nicht sicher ob es klug ist mit head zu arbeiten oder mit tail :ugly:

Am einfachsten wäre wenn tcpdump direkt ascci einlesen könnte.
Werde mal im Bash Scripting Howto nachsehen.

linuxhanz
04.03.04, 10:34
nicht das beste aber geht:



while read zeile;
do
case $zeile in
[#]*) ;;
* ) echo $zeile|/usr/local/sbin/dnet send eth0 && sleep 1s ;;
*)
echo "Usage: $0 {noargs}"
exit 1
;;
esac

done < /tmp/tcpdump_ascii.log