游乐游手机版
首页/系统平台/文章详情

Linux查看网卡流量的六种方法

时间:2026-06-24 08:45
在 Linux 运维与网络调试工作中,实时监控网卡流量属于高频需求场景。无论是排查网络瓶颈、分析突发流量,还是执行日常巡检,掌握几款趁手的工具往往能事半功倍。下面整理了六种备受运维人员青睐的监控方式,从轻量级的命令行工具到功能更全面的交互式界面,覆盖了大部分实际应用场景。每一种工具都有其独特的使用技

在 Linux 运维与网络调试工作中,实时监控网卡流量属于高频需求场景。无论是排查网络瓶颈、分析突发流量,还是执行日常巡检,掌握几款趁手的工具往往能事半功倍。下面整理了六种备受运维人员青睐的监控方式,从轻量级的命令行工具到功能更全面的交互式界面,覆盖了大部分实际应用场景。每一种工具都有其独特的使用技巧,熟悉它们之后,面对各类网络问题时会更加从容。

方法一、nload 工具

nload 是一款简洁易用的实时流量监控工具,它借助 ASCII 图形直观展示入站和出站流量的变化趋势。安装完成后,直接在终端输入 nload 即可查看所有网卡的流量动态。如果只想关注某个特定接口(例如 eth0),可以指定设备名:nload eth0

它的参数虽然不多,但每个都很实用:

  • -a:全部数据的刷新周期,单位为秒,默认值为 300 秒。如果需要更短的统计周期,可以适当调小此值。
  • -i:设置入站流量图的显示比例最大值,默认 10240 kBit/s。当实际流量超出此阈值时,图形会显示满格,但数值依然准确。
  • -m:不显示流量图,仅显示统计数字。适合只关注数值而非图形的场景。
  • -o:出站流量图的显示比例最大值,参数含义与 -i 对称。
  • -t:数据显示的刷新间隔,单位为毫秒,默认 500。适当调小可使数字更新更灵敏。
  • -u:设定右侧 Curr、Avg、Min、Max 四列的数据单位。注意大小写含义不同:
    h|b|k|m|g 分别代表 auto、Bit/s、kBit/s、MBit/s 等(小写表示位速率)。
    H|B|K|M|G 分别代表 auto、Byte/s、kByte/s、MByte/s 等(大写表示字节速率)。
  • -U:设定右侧 Ttl 列的数据单位,规则与 -u 相同。
  • Devices:默认监控所有网卡,可通过左右方向键切换不同网卡界面。若只想监控一个网卡,启动时直接指定设备名即可,例如 nload eth0

查看完整帮助可使用 nload --help。源码包可在 SourceForge 获取。

方法二、iftop 工具

iftop 可以被理解为网络流量版的 top 命令,它按连接(IP+端口)实时显示流量,并提供动态排序功能,非常适合定位哪些主机或端口正在占用带宽。

iftop 界面说明

界面顶部有一排类似刻度尺的横条,那是流量长条的标尺。中间的 <= => 左右箭头表示流量的方向。
统计区域包含:

  • TX:发送流量
  • RX:接收流量
  • TOTAL:总流量
  • Cumm:从启动 iftop 到现在的累计总流量
  • peak:流量峰值
  • rates:分别显示过去 2 秒、10 秒、40 秒的平均流量

常用参数

  • -i:指定监听的网卡,例如 iftop -i eth1
  • -B:以字节(bytes)为单位显示流量,默认为比特(bits)
  • -n:直接显示 IP 地址,不解析主机名,可减少一些延迟
  • -N:直接显示端口号,不显示服务名称
  • -F:只显示特定网段的进出流量,如 iftop -F 10.10.1.0/24iftop -F 10.10.1.0/255.255.255.0
  • -p:让中间的列表显示本地主机信息之外的其他 IP
  • -b:让流量图形条默认就显示(而非需要按快捷键才显示)
  • -P:默认显示主机信息和端口信息
  • -m:设置界面顶部刻度的最大值,例如 iftop -m 100M
  • -h:显示帮助信息

进入界面后的交互操作(大小写敏感)

  • h:切换是否显示帮助
  • n:切换显示本机的 IP 或主机名
  • s:切换是否显示本机的 host 信息
  • d:切换是否显示远端目标主机的 host 信息
  • t:切换显示格式:2 行 / 1 行 / 只显示发送流量 / 只显示接收流量
  • N:切换显示端口号或端口服务名称
  • S:切换是否显示本机的端口信息
  • D:切换是否显示远端目标主机的端口信息
  • p:切换是否显示端口信息
  • P:暂停 / 继续显示
  • b:切换是否显示平均流量图形条
  • B:切换计算 2 秒、10 秒还是 40 秒内的平均流量
  • T:切换是否显示每个连接的总流量
  • l:打开屏幕过滤功能,输入要过滤的字符(比如 IP 地址),回车后只显示匹配的连接
  • L:切换显示画面上部的刻度,刻度不同时,流量图形条会随之变化
  • j / k:向上或向下滚动屏幕
  • 1 / 2 / 3:根据右侧三列流量数据排序(分别对应不同时间段的平均流量)
  • <:根据左边的本机名或 IP 排序
  • >:根据远端目标主机名或 IP 排序
  • o:切换是否固定只显示当前的连接
  • f:编辑过滤代码(类似于 tcpdump 的表达式)
  • !:执行 Shell 命令(可结合其他工具做自动化操作)
  • q:退出监控

源码包地址:https://www.ex-parrot.com/~pdw/iftop/download/iftop-0.17.tar.gz

方法三、ifstat

ifstat 是一款更轻量的统计工具,它不像 nload 或 iftop 那样提供图形界面,而是单纯以数字形式呈现各网卡的流量数据,非常适合用于脚本化或远程监控场景。

  • -a:监测所有检测到的网络接口状态
  • -z:隐藏流量为 0 的接口(例如已启动但未使用的接口)
  • -i:指定要监测的接口,后面跟接口名
  • -T:报告所有监测接口的总带宽
  • -w:指定列宽,默认会根据接口名称长度自动调整
  • -W:如果内容比终端宽度还宽,则自动换行
  • -b:以 kbits/s 显示带宽,而不是默认的 kbytes/s

源码包路径:https://gael.roualland.free.fr/ifstat/ifstat-1.1.tar.gz

方法四、iptraf

iptraf 是一款基于 ncurses 开发、功能更全面的交互式 IP 局域网监控工具。它不仅能查看网卡流量,还能统计 TCP、UDP、ICMP、OSPF 等协议信息,甚至可以分析以太网负载和节点统计。安装方式非常简便:yum -y install iptraf

以下为其常用参数列表:

参数命令 作用
-i iface 立即在指定网络接口上开启 IP 流量监视;iface=all 表示监视所有接口
-g 立即生成网络接口的概要状态信息
-d iface 在指定接口上立即开始监视详细流量信息
-s iface 在指定接口上立即开始监视 TCP 和 UDP 流量信息
-z iface 在指定接口上显示包计数
-l iface 在指定接口上立即开始监视局域网工作站信息
-t timeout 指定 iptraf 监视的时间(分钟)
-B 将标准输出重定向到 /dev/null,关闭标准输入,作为后台守护进程运行
-L logfile 指定日志文件路径,默认是 /var/log/iptraf
-I interval 指定记录日志的时间间隔(分钟),不包括 IP traffic monitor
-u 允许使用不支持的接口作为以太网设备
-f 清空所有计数器
-h 显示帮助信息

方法五、watch ifconfig

watch 命令本身并不监控流量,但它可以每隔固定时间重复执行一条命令,并将结果全屏显示。将 ifconfig 与 watch 结合,就能实现最简单的流量刷新效果。

  • watch ifconfig:每 2 秒刷新一次网络接口状态
  • watch -d ifconfig:每 2 秒刷新,并高亮标记发生变化的部分(差异高亮)
  • watch -d ifconfig eth0:只监控 eth0
  • watch -d 'ifconfig eth0 | grep bytes':仅显示流量(Bytes)那两行,变化部分高亮显示

watch 也可用于监控文件变化,例如 watch ls -la file 可以每 2 秒查看文件大小变化。退出时使用 Ctrl+C。

watch 命令详解

watch 的基本语法:watch [-dhvt] [-n ] [--differences[=cumulative]] [--help] [--interval=] [--no-title] [--version]

  • -d--differences:高亮显示每次刷新时发生变化的部分。加上 --cumulative 会使高亮“粘滞”,保留之前所有变化过的位置。
  • -t--no-title:取消顶部的标题行(显示时间、命令等)。
  • -n--interval:指定刷新间隔,单位为秒,默认 2 秒。

注意事项:watch 执行的命令实际上是传给 sh -c 去解析的,因此如果命令中包含管道或特殊字符,建议用引号包裹。此外,POSIX 选项处理方式要求在第一个非选项参数之后,所有参数都视为命令的一部分。

常用示例

  • watch -n 60 from:每 60 秒查看一次邮件(虽然有些过时,但仍是经典用法)
  • watch -d ls -l:每秒查看目录内容的变化
  • watch -d 'ls -l | fgrep joe':过滤只显示 joe 用户的文件
  • watch uname -r:实时查看内核版本(常用于测试或趣味场景)

已知问题:当终端大小发生变化时,屏幕需要等到下一次更新才能正确重绘,同时高亮标记也会丢失。如果命令输出包含非打印字符,watch 会自动将其剥离,此时可以使用 cat -v 手动查看原始输出。

方法六、watch cat /proc/net/dev

如果希望查看最原始、最底层的网络流量数据,可以直接读取 /proc/net/dev 文件。这个伪文件记录了每个网卡的收发字节数、包数、错误数等统计信息。配合 watch 即可实现实时监控:

watch -d cat /proc/net/dev

这种方法无需安装任何第三方工具,完全依赖内核提供的统计接口,特别适合在最小化系统或容器内使用。如果只需要简单的流量增量,还可以结合 diff 或自行编写脚本,实现更细致的二次计算。

来源:https://www.jb51.net/LINUXjishu/593625.html
上一篇Linux查看文件指定行内容的实用方法 下一篇四款Linux护眼软件深度解析
本站内容用于信息整理与展示,如有侵权或内容问题请及时联系处理。

相关推荐

补充同频道和同主题内容,方便继续浏览更多相关内容。

同类最新

继续查看同栏目最近更新的文章。

更多
微软详解Win11时间点还原 默认每24小时创建恢复点
系统平台 · 2026-06-30

微软详解Win11时间点还原 默认每24小时创建恢复点

微软今日推送了最新的 6 月可选更新,并发布博客详细解读了 Win11 全新的“时间点还原”(Point-in-time restore)功能——这一功能本质上是对系统恢复体验的一次全面升级,旨在让用户更轻松地应对电脑故障。 微软表示,面向 Windows 11 客户端用户的“时间点还原”功能现已正

Win11 26H1六月可选更新KB5095091 优化放大镜改善装机体验
系统平台 · 2026-06-30

Win11 26H1六月可选更新KB5095091 优化放大镜改善装机体验

微软今天推送了Windows 11 26H1设备的6月可选更新KB5095091,安装完成后系统版本号会升级到Build 28000 2340。值得一提的是,这次更新并非面向所有设备,而是专门为搭载高通骁龙X2系列芯片的机型准备的——包括骁龙X2 Plus、X2 Elite和X2 Elite Ext

Win11六月可选更新KB5095093修复回收站弹窗异常
系统平台 · 2026-06-30

Win11六月可选更新KB5095093修复回收站弹窗异常

微软已悄然推送Windows 11六月可选更新,编号KB5095093。本次更新覆盖两个版本:24H2用户安装后版本号升级至Build 26100 8737,而25H2用户则更新至Build 26200 8737。 本次更新并非仅是小修小补,而是带来了多项实质性新功能。下面我们就来详细解析这些更新内

苹果macOS 27 Beta2封堵Siri AI跳过候补名单漏洞
系统平台 · 2026-06-30

苹果macOS 27 Beta2封堵Siri AI跳过候补名单漏洞

科技媒体 Cult of Mac 昨日(6月23日)发布博文指出,苹果在 macOS 27 Beta 2 更新中悄然封堵了一个此前可用的后门——用户曾能通过一条终端命令绕过候补名单,直接启用新版 Siri AI,如今这一方法已失效。 简要回顾一下:在 macOS 27 Beta 1 阶段,只需在 M

微软加速Win11 25H2推送 覆盖所有符合条件家用PC
系统平台 · 2026-06-30

微软加速Win11 25H2推送 覆盖所有符合条件家用PC

近日(6月23日),科技媒体 Windows Latest 发布了一则值得关注的动态:微软已进一步扩大 Windows 11 25H2 的推送范围,所有满足硬件要求、且不受 IT 部门管理的家庭版和专业版设备,现在均可顺利接收本次更新。 此次升级有一个显著特点——采用“启用包”(eKB)方式进行推送