首页 > 解决方案 > 如何使用python计算传出数据包的数量

问题描述

我需要eth0在 Linux 中计算传出数据包的数量。

我尝试使用该iptarf命令来执行此操作,但我需要将结果放入一个可以打印的变量中,我想知道是否可以使用 Scapy 库来执行此操作。

结果不需要很准确,我只需要它作为一种方式来显示有传出数据包,并且它必须是可以打印的变量。

标签: pythonnetworkingscapy

解决方案


尝试这个-

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秒。


推荐阅读