人人都会AI编程

iftop、nload:实时网络流量

更新时间:2026-07-12

当服务器网络出现异常延迟或流量突然飙升时,单靠 pingnetstat 往往难以快速定位是哪个连接占用了带宽。iftopnload 是两个轻量级的终端工具,它们提供实时、直观的网络流量视图,让管理员立刻知道数据“从哪里来、到哪里去、有多大”。


iftop:按连接查看带宽占用

iftop 会在终端上按源/目的 IP 和端口,动态显示各连接的实时流量速率。它需要 root 权限来抓取网络接口数据。

基本用法

sudo iftop -i eth0

-i 指定要监听的网卡,如果省略则监听系统默认接口。启动后,屏幕上会以列表形式展示最近 2 秒、10 秒、40 秒内的平均上传和下载速率。

界面解读与快捷操作

  • 列表顶部是总速率条,下面每行是一条连接记录,左侧为本机,右侧为远端,数据传输方向用箭头标示(=> 表示发送,<= 表示接收)。
  • 按下 p 可以切换是否显示端口号,这在需要区分同一主机的多个服务时非常实用。
  • 按下 s 切换源 IP 显示,d 切换目的 IP 显示。
  • 按下 t 切换显示样式:纯速率 / 累计流量 / 速率与累计混合。
  • j/k 可以上下滚动列表,h 显示帮助。

典型场景

  • 某个 Web 服务突然变慢,用 iftop 查看,发现一个外部 IP 在大量下载静态资源,占满了出口带宽。
  • NFS 或数据库复制流量异常增大,iftop 能立刻标出与存储节点或从库的同步连接消耗了多少带宽。

注意事项

  • iftop 需要系统已安装 libpcap,通常通过发行版包管理器直接安装(如 apt install iftop)。
  • 它默认解析 IP 为域名,这可能变慢或产生额外 DNS 查询。在纯内网环境可按 n 键关闭 DNS 解析,或启动时加 -n 参数。

nload:按接口查看总流量曲线

nload 提供的是一个更宏观的视角:它不区分单个连接,而是以接口为单位,用 ASCII 图形展示总流入和流出速率的分时曲线。

基本用法

nload eth0

终端会被分成上下两半:上半部分为进入流量(Incoming),下半部分为流出流量(Outgoing)。每部分都有一个实时刷新的柱状图曲线,以及当前速率、平均速率、峰值速率、总传输量等数据。

实用功能

  • 通过左右方向键可以在多个网卡之间切换查阅。
  • F2 打开选项窗口,可以调整刷新间隔和图形单位(如 KBits/s 还是 MBytes/s)。
  • q 退出。

典型场景

  • 上线新服务后,快速确认网卡带宽是否饱和——nload 的曲线图非常直观。
  • 复制大文件或数据库备份时,监控实际网络传输速度是否符合预期。
  • 对比多块网卡的实时负载,判断是否需要启用绑定(bonding)或负载均衡。

优势与局限

  • nload 非常小巧,多数发行版可直接安装(apt install nload)。
  • 它仅展示接口汇总数据,不提供连接级详情,所以通常和 iftopnethogs 配合使用:先用 nload 发现整体异常,再用 iftop 深入排查具体连接。

两者选用建议

  • 如果你怀疑某个特定 IP 或服务在抢占带宽,使用 iftop,它能立即呈现“谁在大量通信”。
  • 如果你只是想看一眼网卡的总流量趋势nload 更直接,启动快、显示清晰,适合放在后台持续监控。
  • 故障排查实战中常联合使用:先用 nload 确定网卡负载是否异常,再用 iftop 定位元凶连接,最后用 sslsof 将连接关联到具体进程。

这两个工具都不会长期记录历史数据,也无需复杂的配置,是 Linux 管理员工具箱中不可或缺的网络“听诊器”。