首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用Pcapy将数据包保存到Pcapy文件中

使用Pcapy将数据包保存到Pcapy文件中
EN

Stack Overflow用户
提问于 2014-05-09 14:06:51
回答 2查看 5.2K关注 0票数 1

我发现了很多例子来捕获数据包并从pcap中读取。但是没有任何例子来捕获数据包并将它们转储到pcap中。

我正在使用来自这里的以下代码

代码语言:javascript
复制
import pcapy
from impacket.ImpactDecoder import *

# list all the network devices
pcapy.findalldevs()

max_bytes = 1024
promiscuous = False
read_timeout = 100 # in milliseconds
pc = pcapy.open_live("name of network device to capture from", max_bytes, promiscuous, read_timeout)

pc.setfilter('tcp')

# callback for received packets
def recv_pkts(hdr, data):
  packet = EthDecoder().decode(data)
  print packet

packet_limit = -1 # infinite
pc.loop(packet_limit, recv_pkts) # capture packets

有想法将捕获的数据包转储到pcap中吗?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2014-05-09 14:28:38

有一个Dumper对象,您可以通过dump_open调用从pcapy获得,并且可以调用转储。

代码语言:javascript
复制
dumper = pc.dump_open(filename)
...
dumper.dump(hrd, data)
票数 3
EN

Stack Overflow用户

发布于 2016-05-25 15:29:20

Pcapy确实有Dumper对象,但是您需要一个Reader对象来创建它,这是没有意义的。

代码语言:javascript
复制
import pcapy as pc
dev = pc.lookupdev()
reader = pc.open_live(dev, 65536, 1, 1)
dumper = reader.dump_open('pcapy_test.pcap')

for _ii in range(2):
    hdr, pkt = reader.next()
    dumper.dump(hdr, pkt)
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/23566710

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档