我需要计算Linux中通过eth0
的传出数据包的数量。
我尝试使用iptarf
命令来执行此操作,但是我需要将结果放入可以打印的变量中,我想知道Scapy库是否可以用于执行此操作。
结果不一定是准确的,我只需要用它作为显示有外发数据包的方式,并且它必须是可以打印的变量。
答案 0 :(得分:0)
试试这个-
from scapy.all import *
a=0
def f(packet):
global a
a+=1
s=sniff(prn=f, timeout=1, iface=YOUR_INTERFACE_NAME, store=0)
print(a)
在这种情况下,timeout
为1,因此它将在1秒内对数据包进行计数,您可以对其进行更改,或者将整个代码放入循环中以使其一次又一次地计数1秒。