我有一个 Ubuntu 20.04 LTS,它已禁用升级,并且在 VirtualBox 中没有 cronjobs。
有一个 enp0s3 和一个 tun0,用于 OpenVPN 连接到远处的 LTE/移动连接(到 MikroTik 设备)。LTE 连接每月有流量限制,所以我必须小心流量。
如果我检查,我可以看到 tun0 有 80 MByte 的流量(我生成的!)并且 enp0s3 自上次重启以来有 1.6 GBytes(我不知道 1.6 GByte 减去 80 MBytes 是多少)。
虽然流量限制的流量可能只通过 tun0 设备计算,但仍然很好奇!
问题:我如何调查导致 enp0s3 上流量的原因?
更新#1:我检查了使用“yes > yes.txt”生成到 vbox 共享的流量,但这在 ifconfig 中不算作流量。
答案1
sudo nethogs enp0s3
将让您指定设备。
NetHogs version 0.8.5-2build2
PID USER PROGRAM DEV SENT RECEIVED
47562 wu-tang /usr/lib/firefox/firefox enp0s3 1.181 0.184 KB/sec
71120 _apt /usr/lib/apt/methods/http enp0s3 0.121 0.097 KB/sec
48131 wu-tang ..nap/opera/170/usr/lib/x86_64-linux-gnu/opera/opera enp0s3 0.013 0.022 KB/sec
? root unknown TCP 0.000 0.000 KB/sec
默认情况下它没有安装。
sudo apt install nethogs
答案2
用于tcpdump
查看当前通过接口的流量:
tcpdump -n -i tun0 | tee -a traffic.log
-n
禁用名称解析,-a
将行附加到日志文件。按CtrlC停止捕获;之后您可以使用less -S traffic.log
检查捕获的所有流量(-S
禁用换行)。
tcpdump
接受过滤器以仅捕获某些数据包,例如host 8.8.8.8
或port 53
。使用 了解它们man pcap-filter
。
检查当前带宽和流量源/目的地的其他有用工具是íftop
。