Linux服务器网络流量分析入门:用3款工具看清流量去向

为什么你需要学会分析服务器网络流量

刚接手 Linux 服务器时,经常遇到网站变慢、带宽跑满、被 DDoS 攻击等场景。
如果没有流量分析能力,只能凭感觉重启或找服务商。Linux服务器网络流量分析 能帮你快速定位是哪个进程、哪个 IP 在消耗带宽,是运维基本功。

本文面向纯新手,
用三种最常用的命令行工具 iftop、
nload、
vnstat 演示完整操作,
你只需要一台 Linux 服务器(CentOS 7+ 或 Ubuntu 18.04+)和 root 权限即可。

准备环境与安装工具

登录服务器后先更新软件源,然后分别安装这三个工具。
每个工具用途不同:iftop 看实时连接 IP 和流量,nload 看总带宽曲线,vnstat 保存历史流量。

# CentOS / RHEL
sudo yum install epel-release -y
sudo yum install iftop nload vnstat -y

# Ubuntu / Debian
sudo apt update
sudo apt install iftop nload vnstat -y

安装完成后启动 vnstat 后台服务(默认不自动启动):

sudo systemctl enable vnstat
sudo systemctl start vnstat

如果 eth0 不是你的网卡名,用 ip a 查看实际名称,后续命令中替换即可。

实时监控流量:iftop 和 nload

使用 iftop 查看 IP 级流量

直接在终端执行 iftop,默认监听 eth0。
如果网卡不是 eth0,指定网卡名:

sudo iftop -i ens33    # 替换为你的网卡名

界面说明:

  • 上面一行显示本机 IP,下面两列是目标 IP。
  • =><= 表示出站和入站方向。
  • 右侧数字显示当前速率(2s、10s、40s 平均)。
  • t 键切换显示格式,按 q 退出。

重点:如果看到某个陌生 IP 持续占用大量流量,那十有八九是异常请求,建议 ss -tnp | grep <目标IP> 查对应进程。

使用 nload 看总带宽曲线

nload 以字符条形式展示总入站/出站流量,更直观:

nload ens33    # 替换网卡

从左到右分别是:当前速率、平均速率、最小速率、最大速率,底部有动态柱状图。
切换网卡,按 q 退出。

历史流量统计:vnstat

vnstat 在后台持续收集流量,适合查看一天、一周、一个月的数据。
安装启动后大约等 5 分钟才会生成第一条记录。

常用命令:

# 查看实时统计(需要等至少一个采样周期)
vnstat -l

# 查看今日流量
vnstat -d

# 查看本月流量
vnstat -m

# 指定网卡
vnstat -i ens33 -d

输出示例:

 ens33  /  daily

         day         rx      |     tx      |    total    |   avg. rate
------------------------------+-------------+-------------+---------------
  2025-03-21   1.23 GiB    | 456.78 MiB  | 1.68 GiB    |  164.75 kbit/s
------------------------------+-------------+-------------+---------------

避坑指南与高频问题

权限不足:iftop 和 nload 需要 root 或 sudo 才能抓包,否则会报错 interface lookup failed

网卡名不对:云服务器常见 eth0、ens33、enp0s3,用 ip als /sys/class/net/ 确认。

vnstat 没有数据:刚启动后 5 分钟内无输出,正常。
如果长时间空白,检查服务状态 systemctl status vnstat 和日志。

流量一直很高但看不到明显连接:试试 nethogs(需额外安装),按进程排序:sudo nethogs ens33

如何定位哪个进程在发流量?:结合 iftop 看到的 IP,用 ss -tnp | grep 目标IP 找到 PID,再用 ps aux | grep PID 看进程名。

效果验证:对比两个工具观察同一时段

打开两个 SSH 窗口,一个运行 sudo iftop -i ens33,另一个运行 nload ens33
然后在本机用 curl 下载一个大文件或 ping 一个外网 IP,观察两个工具是否同步显示流量上升。

如果看到数据变化一致,说明工具工作正常。
再通过 vnstat -d 查看今日累计流量,应该能对应上刚才的测试数据。

记住:iftop 侧重 IP 级对话,nload 侧重总带宽感受,vnstat 侧重长期趋势。
日常排查先用 iftop 找嫌疑 IP,再用 ss 确认进程。

如果你正在处理 Linux服务器网络流量分析,建议先按本文步骤完整执行,再根据自己的环境做微调;
遇到异常时优先回看避坑和高频问题部分。

分享到:
上一篇
WP网站图片CDN加速:WordPress网站图片CDN加速
下一篇
Docker部署Wavefront:从零开始搭建指标采集代理
1
系统公告

泽御云五一特惠活动🔥

泽御云持证合规运营,资质齐全可查,长久稳定! 五一限时多重福利同步开启: ✅ 香港 2 核 2G 云服务器超值拼团,低价入手团长免费 ✅ 4 核 4G 多机房年付拼团,性价比拉满 ✅ 内蒙古新区限时 7 折(zeyuyunnmg)特惠,专属优惠码锁价续费 ✅ 全站通用 75 折优惠,老用户充值享专属赠金 官方站点:zeyuyun.com 合规资质齐全|售后有保障|活动限时错过不再有
服务中心
客服
在线客服
24小时为您服务
咨询
联系我们
联系我们,为您的业务提供专属服务。
24/7 技术支持
如果您遇到寻求进一步的帮助,请过工单与我们进行联系。
24/7 即时支持
泽御云
售前客服
泽御云
泽御云
售后客服
泽御云
技术支持
评价
您对当前页面的整体感受是否满意?
😞
非常不满意
😕
不满意
😐
一般
🙂
满意
😊
非常满意