查看服务器每月流量的方法取决于你使用的操作系统、服务器类型以及是否使用了云服务。以下是几种常见的方法:
一、Linux 系统常用方法
方法1:使用 vnstat(推荐)
vnstat 是一个轻量级的网络流量监控工具,可以记录每天、每月的流量统计。
安装 vnstat:
# Ubuntu/Debian
sudo apt update
sudo apt install vnstat
# CentOS/RHEL
sudo yum install vnstat
# 或者在较新版本中使用 dnf
sudo dnf install vnstat
初始化数据库(以 eth0 网卡为例):
sudo vnstat -u -i eth0
sudo systemctl enable vnstat
sudo systemctl start vnstat
注意:网卡名称可能是
ens33、enpXsY或eth0,可通过ip a查看。
查看月度流量:
vnstat -m
输出示例:
monthly
month rx | tx | total | avg daily
------------------------+-------------+-------------+---------------
Jan '2024 1.23 GiB | 876.45 MiB| 2.09 GiB | 69.67 MiB
Feb '2024 2.10 GiB | 1.02 GiB| 3.12 GiB | 97.50 MiB
✅ 优点:自动记录历史数据,无需实时监控。
方法2:使用 iftop 或 nethogs(实时查看,不适合长期统计)
这些工具只能查看当前实时流量,不能统计每月总量。
sudo iftop
# 或
sudo nethogs
适用于临时排查,但不适用于“每月流量”统计。
方法3:手动计算(结合日志或脚本)
你可以编写脚本定期记录 /proc/net/dev 中的接收(RX)和发送(TX)字节数,并按月汇总。
示例读取网卡流量:
cat /proc/net/dev
查找你的网卡(如 eth0),第一列是接收字节(RX),第九列是发送字节(TX)。
然后通过定时任务(cron)每小时/每天记录一次,月末汇总。
二、云服务器厂商自带监控(推荐用于云主机)
如果你使用的是阿里云、腾讯云、AWS、华为云等,可以直接在控制台查看:
| 服务商 | 查看路径 |
|---|---|
| 阿里云 | ECS 控制台 → 实例详情 → 监控信息 → 网络带宽/流量 |
| 腾讯云 | CVM 控制台 → 实例 → 监控 → 网络出/入流量 |
| 华为云 | ECS → 指标监控 → 网络相关指标 |
| AWS | EC2 → CloudWatch → NetworkIn / NetworkOut |
⚠️ 注意:部分云平台默认按带宽(bps)显示,不是累计流量(GB)。需要将带宽积分成流量:
例如:平均 1 Mbps 带宽跑满一个月 ≈ 324 GB 流量
公式:流量(GB) = (带宽 Mbps × 3600 × 24 × 天数) / (8 × 1024)
三、使用第三方监控工具
- Zabbix / Prometheus + Node Exporter:可长期监控并生成月度报表。
- NetData:图形化实时监控,支持历史数据查看。
- Cacti / MRTG:老牌流量绘图工具,适合长期统计。
总结:推荐方案
| 场景 | 推荐方法 |
|---|---|
| 自建物理机/VPS | 使用 vnstat |
| 云服务器 | 登录云平台控制台查看 |
| 需要可视化报表 | 使用 NetData、Zabbix 等工具 |
| 临时查看实时流量 | iftop 或 nethogs |
如果你告诉我你用的是什么系统(如 Ubuntu/CentOS)或云服务商(如阿里云/AWS),我可以给出更具体的命令。
云知识