在Python脚本结束时生成pcap文件

1 投票
1 回答
2070 浏览
提问于 2025-04-17 20:19

我写了一个Python脚本,使用Scapy这个工具,从客户端向服务器发送数据包,前提是先建立了一个TCP连接。我想在脚本结束时生成一个pcap文件,这个文件应该包含当前脚本生成的所有流量。我尝试使用sniff()这个函数,但问题是,sniff()一执行就会暂停脚本,导致无法和其他指令同时运行。我该如何在Scapy中做到这一点呢?

1 个回答

1

要把一系列数据包写入到PCAP文件中,可以使用 wrpcap 这个函数。

>>> wrpcap("temp.cap", pkts)

pkts 是一个数据包的列表。在你的程序中,你需要保持一个记录,列出所有已经发送和接收的数据包。因为在Scapy中,你不能同时进行数据捕获和发送数据包。

撰写回答