Python - 带有端口范围的 scapy sniff() 过滤器

Python - scapy sniff() filter with port range

我想用 scapy 模块嗅探一系列端口中的所有数据包。

这是一个端口的工作方式..

from scapy.all import *
packets = sniff(filter='udp and port 14000')

但不仅仅是端口 14000,我想嗅探从 14000 到 64000 的范围。

以下代码无效..

from scapy.all import *
packets = sniff(filter='udp and port 14000 to 64000')

如果我想这样做,过滤字符串应该是什么样的?

Scapy 使用 BPF syntax 指定过滤器:

packets = sniff(filter='udp and portrange 14000-64000')

请注意,范围是包含在内的,'-' 符号周围不允许有空格。