使用wireshark我捕獲了telnet數據包。在分析捕獲的數據包我得到的數據一部分,如何讀取telnetlib中的截斷數據
Data [truncated]: 17:46:26......****....
我的問題是,現在我開始通過telnetlib在python telnet連接。通過我發送和接收數據。但有時在接收數據時,它會被截斷,如上所示。那麼,是否有可能以編程方式讀取這些截斷的數據?
使用wireshark我捕獲了telnet數據包。在分析捕獲的數據包我得到的數據一部分,如何讀取telnetlib中的截斷數據
Data [truncated]: 17:46:26......****....
我的問題是,現在我開始通過telnetlib在python telnet連接。通過我發送和接收數據。但有時在接收數據時,它會被截斷,如上所示。那麼,是否有可能以編程方式讀取這些截斷的數據?
您可以嘗試使用tshark
與telnet解剖器已禁用?例如,現場拍攝時,你可以使用像這樣:
tshark -i foo --disable-protocol telnet -f "tcp port 23" -Y "tcp.len > 0" -T fields -e frame.number -e data
,將捕獲所有Telnet流量,但會顯示僅實際包含數據的那些數據包的幀數和數據字段。它需要你禁用telnet解剖器才能正常工作。請注意,我正在使用--disable-protocol
命令行選項來禁用telnet,但是如果您運行的是舊版本的tshark
,該版本沒有此選項,則必須禁用解密器的telnet在Wireshark中首先通過「分析 - >啓用協議... - >協議:Telnet」運行前tshark
。
下面是一個類似的例子,但這次tshark
是從文件中讀取數據包,而不是實時捕捉他們:
tshark -r foo.pcap --disable-protocol telnet -Y "tcp.port eq 23 and tcp.len > 0" -T fields -e frame.number -e data
如果你願意,你也可以改變數據的輸出格式包括像這樣的字節之間的冒號分隔符(':'
):
tshark -r foo.pcap --disable-protocol telnet -Y "tcp.port eq 23 and tcp.len > 0" -T fields -e frame.number -e data.data
,只要你想使用tshark
的-e
選項可以指定儘可能多的領域。有關tshark
及其各種選項的更多信息,請參閱tshark man page
。