To może nie być możliwe w wersji GUI, ale jest to osiągalne z console versiontshark
:
tshark -r capture.pcap -qz follow,tcp,ascii,<stream_id> > stream.txt
Wymień <stream_id>
o rzeczywistej strumienia ID (np 1
):
tshark -r capture.pcap -qz follow,tcp,ascii,1 > stream.txt
Spowoduje to wyprowadzenie pliku ASCII. Jak to jest lepsze niż zapisywanie go bezpośrednio z wersji GUI? Dobrze:
-
Dane wysyłane przez drugi węzeł jest poprzedzona karcie do odróżnienia go od danych przesyłanych przez pierwszy węzeł.
-
Ponieważ produkcja w ASCII mogą zawierać nowe linie, długość każdej z sekcji produkcji oraz o nowej linii poprzedza każdy punkt wyjścia.
To sprawia, że łatwo parsable plik. Przykład Wydajność:
===================================================================
Follow: tcp,ascii
Filter: tcp.stream eq 1
Node 0: xxx.xxx.xxx.xxx:51343
Node 1: yyy.yyy.yyy.yyy:80
786
GET ...
Host: ...
Connection: keep-alive
Pragma: no-cache
Cache-Control: no-cache
Accept: */*
User-Agent: ...
Referer: ...
Accept-Encoding: ...
Accept-Language: ...
Cookie: ...
235
HTTP/1.1 200 OK
Cache-Control: no-cache, no-store
Pragma: no-cache
Content-Type: ...
Expires: -1
X-Request-Guid: ...
Date: Mon, 31 Aug 2015 10:55:46 GMT
Content-Length: 0
===================================================================
786\n
jest długością pierwszej części wyjściowego Node 0
. \t235\n
jest legnth sekcji odpowiedzi od Node 1
i tak dalej.
Czy próbowałeś zapisać jako plik cap? – Sunny
Można faktycznie wyeksportować listę pakietów do wszystkich rodzajów formatów. Możesz spróbować wyeksportować go jako plik CSV, aby osiągnąć swój cel –
@ Nie widzę "csv" na liście eksportu okna dialogowego "Follow TCP Stream". Widzę ASCII, EBCDIC, Hex Dump, C Arrays, Raw. Żaden z tych formatów nie jest łatwy do odczytania dla ludzkiego oka. Nie widać szybko, kto (klient lub serwer) powiedział co. – guettli