如何查看linux网口流量
如何查看linux网口流量详细介绍
在 Linux 系统中,查看网口流量可以通过多种工具实现,以下是常用方法及操作步骤:
一、基础命令:通过 /proc/net/dev 查看实时流量
Linux 内核会将网络接口的统计信息存储在 /proc/net/dev 文件中,可直接读取:
bash
/proc/net/dev
输出解读:
- 第一列为接口名称(如
enp3s0、lo),注意名称可能包含:,需去掉后使用(如enp3s0)。 - 第二到第九列为接收(
Receive)数据:bytes:接收字节数packets:接收数据包数
- 第十到第十七列为发送(
Transmit)数据:bytes:发送字节数packets:发送数据包数
简化查看特定接口(如
eth0):
bash
/proc/net/dev/proc/net/dev
二、实时监控工具:nload(推荐)
nload 可实时显示单个或多个接口的上下行流量,支持图形化交互:
安装(需先更新包管理器):
- Debian/Ubuntu:bash
nload - RedHat/CentOS:bash
yum nload
使用方法:
bash
nload eth0nload
界面说明:
- 上半部分为 入站流量(Incoming),下半部分为 出站流量(Outgoing)。
- 实时显示当前速率(
Curr)、平均速率(Avg)、最小 / 最大速率(Min/Max)、总流量(Ttl)。
三、实时流量统计:iftop(类似 top 的网络版)
iftop 可以实时显示网络接口的流量,并按连接显示对端 IP 的流量分布:
安装:
- Debian/Ubuntu:bash
iftop - RedHat/CentOS(需先安装 EPEL 源):bash
yum epel-releaseyum iftop
使用方法:
bash
iftop eth0
常用快捷键:
P:显示端口号h:切换流量单位(字节 / 千字节 / 兆字节)n:切换 IP 显示(域名 / IP)
四、传统工具:netstat 或 ss(适用于命令行快速查看)
1.
netstat 查看接口统计:
bash
2.
ss(替代
netstat 的轻量工具):
bash
ss
五、历史流量统计:sar(系统活动报告)
sar 可查看过去的网络流量数据(需安装 sysstat 包):
安装:
bash
sysstatyum sysstat
查看当前流量(实时):
bash
sar DEV
查看历史数据(如昨天 10:00 的流量):
bash
sar DEV /var/log/sysstat/saXX :00
六、按进程查看流量:tcptrack(可选)
若需监控具体进程的网络流量,可使用 tcptrack:
安装:
bash
tcptrack
使用方法:
bash
tcptrack eth0
总结:根据需求选择工具
| 场景 | 推荐工具 | 特点 |
|---|---|---|
| 实时监控(简单) | nload |
轻量、直观,分上下行显示 |
| 实时连接详情 | iftop |
显示对端 IP 和端口,适合排查网络连接 |
| 命令行快速查看 | /proc/net/dev |
无需额外安装,适合脚本调用 |
| 历史统计 | sar |
支持长期数据存储和分析 |
| 进程级流量监控 | tcptrack |
按进程 / 端口细分流量 |
如需持续监控或自动化分析,建议结合 nload 或脚本读取 /proc/net/dev 数据实现。