python - 如何使用python计算传出数据包的数量
问题描述
我需要eth0
在 Linux 中计算传出数据包的数量。
我尝试使用该iptarf
命令来执行此操作,但我需要将结果放入一个可以打印的变量中,我想知道是否可以使用 Scapy 库来执行此操作。
结果不需要很准确,我只需要它作为一种方式来显示有传出数据包,并且它必须是可以打印的变量。
解决方案
尝试这个-
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秒。
推荐阅读
- yarnpkg - 如何保持纱线工作区依赖关系同步
- php - php curl ubuntu 400 错误请求
- c++ - QT 命令行问题(系统或 qprocess)
- html - 如何将某些 CSS 添加到中间元素?
- javascript - 如何将两个数组合并为一个?保留数组元素和长度
- google-maps - 4 天内 9 次下载的 16,000 个地理编码请求:我做错了什么?
- neo4j - 如何将多个 neo4j 集合合并到 1 中?
- solidity - 为什么我的 Solidity 代码有这个错误?错误断言
- python - 当我尝试请求数据时,它没有返回。我该如何解决?
- javascript - 如何使用 JS 删除内联 CSS?