使用Tshark重新组装(TCP)流

使用Tshark重新组装(TCP)流,tcp,stream,wireshark,tshark,Tcp,Stream,Wireshark,Tshark,我有只包含一个流的PCAP。我想使用tshark重新组装它们,因为libnids将失败,例如libnids失败,因为这些流可能没有正确的开始(SYN)和结束(FIN)。因此,wireshark/tshark非常有用。但是,我可以输出流内容,但是如何知道数据包是否结束?当使用TCP(和ipv4)时,数据包被拆分。但是,如果连续拆分多个数据包,会怎么样?所以我的意思是,所有有效负载a都来自node2(与node1对话)。因此,tshark在它们前面使用一个选项卡来显示它来自节点2,如下所示: \t0

我有只包含一个流的PCAP。我想使用tshark重新组装它们,因为libnids将失败,例如libnids失败,因为这些流可能没有正确的开始(SYN)和结束(FIN)。因此,wireshark/tshark非常有用。但是,我可以输出流内容,但是如何知道数据包是否结束?当使用TCP(和ipv4)时,数据包被拆分。但是,如果连续拆分多个数据包,会怎么样?所以我的意思是,所有有效负载a都来自node2(与node1对话)。因此,tshark在它们前面使用一个选项卡来显示它来自节点2,如下所示:

\t00000000  aa bb cc dd ee ff ....... 
\t00000010  00 11 22 .....
\t00000020  ff ff .. //some new packet
但是如何识别,00000020是一个新的数据包?所以我想要的是重新组装,但是像这样分割有效载荷:

\t00000000  aa bb cc dd ee ff ....... 
\t00000010  00 11 22 .....
\t00000020  ff ff .. //some new packet
节点2:aabbccddeeff…001122。。。 节点2:ffff

我目前使用

$ tshark -r name.pcap -z "follow,tcp,hex,0"
谢谢你的帮助