如何审核 Linux 上超过一定流量或带宽的网络连接?

如何审核 Linux 上超过一定流量或带宽的网络连接?

我一直在照看一些 Debian 机器,偶尔会看到网络流量大幅增加。我正在使用 graphite 绘制指标图表(由 sensu check 提供,该工具每分钟收集每个接口的指标),偶尔会看到以下情况:

我不知道是什么原因造成的,因为我从来没能在它发生时抓住它。如果能弄清楚是什么原因造成的那就太好了,那么找出原因的最佳方法是什么呢?

我想我真正想要的是:如果网络连接(和进程 ID/名称)发送/接收的数据量超过一定数量或速率,有没有办法审核网络连接(和进程 ID/名称)?

答案1

您可以使用 轻松跟踪每个进程的网络统计信息nethogsDebian 有一个预编译包

其工作原理类似于top

NetHogs version 0.8.0

  PID USER     PROGRAM                             DEV        SENT        RECEIVED
11951 dawud    /usr/lib64/firefox/firefox          p5p1       4.682       5.502 KB/sec
1145  tomcat   java                                p5p1       0.313       0.560 KB/sec
12411 dawud    /usr/lib64/firefox/plugin-container p5p1       0.027       0.013 KB/sec

TOTAL                                                         5.022       6.075 KB/sec

查看它的手册页以获得更多选择。

答案2

我会修改您的 sensu (nagios?) 插件以运行 ps 或 top 命令并将输出转储到本地文件。然后返回并将您的峰值与 ps/top 输出关联起来以找出发生了什么。

如果你不想或不能做出改变,看看特区或者在顶上

编辑:下一个想法,运行 tcpdump 然后检查 wireshark 中的流量。

相关内容