ele*_*nor 5 linux networking tcp tcpdump wireshark
我有一个运行在端口8888(不,它不是http)和TCP之上的自定义协议。我已经捕获到PCAP文件中的数据包流。问题在于,现在我不能仅显示其数据部分。
我尝试使用以下命令:
tshark -r test.pcap -R 'tcp.port==8888 && tcp.len>0' -T fields -e "tcp.data"
Run Code Online (Sandbox Code Playgroud)
但它显示一个空字符串。tcp.data字段不是保存TCP数据包数据的字段吗?
如何仅显示所需数据?
Wireshark 中有“分析/跟踪 TCP 流”功能。
只需从数据包列表中选择 TCP 数据包,然后“跟随 TCP 流”...,Wireshark 就会显示所选连接的 TCP 会话。
编辑:
tcp.data
不存在。改用data.data
:
tshark -r mon.pcap -R "(tcp.port == 8888) && (tcp.len > 0)" -T fields -e data.data
Run Code Online (Sandbox Code Playgroud)
如果wireshark知道使用端口(8888)的协议,那么前面的方法将不起作用。但下面的技巧是有效的:
tshark -r mon.pcap -R "(tcp.port == 8888) && (tcp.len > 0)" -T fields -d tcp.port==8888,echo -e echo.data
Run Code Online (Sandbox Code Playgroud)