linux命令查看流量
linux命令查看流量详细介绍
在 Linux 系统中,查看网络流量可以通过多种命令工具实现,以下是常用方法分类及详细说明:
一、实时流量监控工具
1.
iftop(类似
top的实时流量监控)
- 功能:实时显示网络接口的流量速率、连接状态及 IP 地址,支持按流量排序。
- 安装:bash
iftop
yum iftop
- 常用命令:bash
iftop 接口名iftop
iftop
2.
nethogs(按进程监控流量)
- 功能:按进程显示网络流量,定位占用带宽的具体程序。
- 安装:bash
nethogs
yum nethogs
- 常用命令:bash
nethogs 接口名nethogs
二、命令行统计工具
3.
netstat(网络统计信息)
- 功能:显示网络接口的流量统计(字节数、数据包数等),支持实时更新。
- 常用命令:bash
4.
ss(套接字统计,替代
netstat)
- 功能:轻量高效,显示套接字连接和流量统计。
- 常用命令:bash
ssss
5.
/proc/net/dev(文件读取原始数据)
- 功能:通过系统文件获取接口实时流量(字节 / 包数),可脚本化监控。
- 命令:bash
/proc/net/dev, \, \}'"
- 输出说明:
接口名 接收字节数 发送字节数
- 输出说明:
三、历史流量统计(需提前安装)
6.
sar(系统活动报告,支持历史数据)
- 功能:属于
sysstat工具包,可查看过去或实时的流量数据。 - 安装:bash
sysstatyum sysstat
- 常用命令:bash
sar DEVsar DEV /var/log/sysstat/saXX
四、抓包分析工具(适合深度排查)
7.
tcpdump(抓包并统计流量)
- 功能:抓取网络数据包,结合参数统计流量(需配合其他工具分析)。
- 常用命令:bash
tcpdump 接口名tcpdump eth0 traffic.pcap
tcpdump eth0
五、选择建议
- 实时监控:优先用
iftop(全局流量)或nethogs(进程级)。 - 轻量统计:直接读取
/proc/net/dev或使用netstat -i。 - 历史分析:使用
sar查看长期流量趋势。 - 进程排查:
nethogs或结合ss -p定位进程。
注意事项
- 部分工具需 root 权限(如
iftop/nethogs)以获取完整数据。 - 接口名称可能不同(如
eth0、enp3s0、wlan0),可通过ip addr或ifconfig查看。 - 若工具未安装,先通过包管理器安装(如
apt/yum)。
根据需求选择合适工具,日常监控推荐 iftop 或 nethogs,脚本化统计推荐读取 /proc/net/dev。