我无法确定是谁或是如何耗尽了我客户的 vps 带宽
我打开 iftop 并监听所有接口的 3306 端口,mysql 远程端口的总带宽约为 10g/天
我的问题是:如何确定连接到我的 mysql 服务器的特定外部 ip 的带宽
例如,我有 10 个远程客户端连接到 mysql,我想知道每个客户端生成了多少 mb/gb
//PS:抱歉我的英文水平较差
//PS2:即openvz容器接口为venet0-localhost和venet0:1-ip
答案1
我们在下载服务器上使用 ntop 来不时检查流量。
Ntop 会根据您拥有的流量大幅增加 CPU 负载(我们的下载服务器每月的吞吐量为 8 TB 或更多)。但是,您将获得一个漂亮的 Web 界面,其中包含大量统计数据,从汇总的总体统计数据到基于 IP:端口的汇总。
您可以使用“顶级主机”,然后检查它们以查看使用了哪些端口,或者检查“顶级端口”的客户端。
有关 ntop 的屏幕截图和更多信息:http://www.ntop.org/products/ntop/
答案2
您可以使用tcptrack查看端口 3306 上特定外部 IP 使用的总带宽。
tcptrack -i any host <external-ip> and port 3306
您还可以修改命令以列出所有 IP 并查看谁消耗最多,按“s”将按利用率排序。
tcptrack -i any port 3306