2015-08-28 83 views
5

如果在wireshark中使用「Follow TCP stream」,則會爲客戶端服務器對話獲得非常好的顯示效果。Wireshark:轉儲客戶端 - 服務器對話

一種顏色是客戶端,另一種顏色是服務器。

有沒有辦法將這個轉儲到ascii而不失去誰說什麼?

例如:

server> 220 "Welcome to FTP service for foo-server." 
client> USER baruser 
server> 331 Please specify the password. 
client> supersecret 

我想避免的截圖。將「server>」和「client>」添加到行是容易出錯的。

+0

您是否嘗試保存爲頂蓋文件? – Sunny

+0

您可以將包列表實際導出爲各種格式。您可以嘗試將其導出爲csv以實現您的目標 –

+0

@Bas在「Follow TCP Stream」對話框的導出列表中看不到「csv」。我看到了ASCII,EBCDIC,Hex Dump,C Arrays,Raw。這些格式都不易於人眼閱讀。你無法快速看到誰(客戶端或服務器)說了些什麼。 – guettli

回答

2

這可能是不可能的與GUI的版本,但它是可實現的與console versiontshark

tshark -r capture.pcap -qz follow,tcp,ascii,<stream_id> > stream.txt

替換<stream_id>與實際的流ID(例如:1):

tshark -r capture.pcap -qz follow,tcp,ascii,1 > stream.txt

這將輸出一個ASCII文件。如何比直接從GUI版本中保存更好?良好:

  • 由所述第二節點是用製表前綴發送到從由所述第一節點發送的數據區分開來的數據。

  • 由於ASCII模式的輸出可能包含換行符,輸出加上一個換行符的每個部分的長度之前輸出的每個部分。

這使得該文件很容易解析的。示例輸出:

=================================================================== 
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是從Node 0所述第一輸出部分的長度。 \t235\n是來自Node 1等的響應部分的第十八個等等。

+0

基於上面的示例腳本,需要一些修補:http://noahdavids.org/self_published/tshark-follow-stream.html – aergistal

+1

我使用這個:'tshark -r tmp/ftp_2015-12-16.pcap -R ftp它會輸出「請求」和「響應」。通過這種方式,我可以清楚地看到客戶端和客戶端所說的*什麼。 – guettli