过滤IPv6数据包的嗅探器

0 投票
1 回答
1259 浏览
提问于 2025-04-18 18:50

我有一个简单的程序,用Pythonpcapy来抓取数据包。

pc = pcapy.open_live(str(self.port), max_bytes, promiscuous, read_timeout)
#My problem is here
pc.setfilter('???')
pc.loop(-1, self.recv_pkts) 

我想要丢掉所有的IPv6数据包,只抓取其他所有的数据包(包括纯L2数据包等)。我应该可以使用setfilter()这个函数来做到这一点,但我找不到任何关于如何传递其他数据包的例子。我真的不想在Python里手动解析每个数据包,去检查它们是不是IPv6。

1 个回答

1
pc.setfilter('not ip6')

参考链接:http://www.tcpdump.org/manpages/pcap-filter.7.html

撰写回答