当前位置:首页 > 文章列表 > 文章 > linux > 实时监控Linux网络流量的工具推荐

实时监控Linux网络流量的工具推荐

2026-02-28 10:28:39 0浏览 收藏
本文深入解析了Linux系统中两款互补的实时网络流量监控利器——nethogs与iftop:nethogs按进程维度精准定位“谁在疯狂发包”,尤其擅长捕获短生命周期进程、容器内应用等传统工具易遗漏的流量源头;iftop则聚焦通信关系,以IP和端口为单位直观呈现“正在和谁通信”,是快速识别扫描攻击、异常回源或恶意连接的应急首选;二者统计口径本质不同(nethogs算应用层净荷,iftop算链路层原始帧),偏差并非故障而是视角差异,需协同使用而非取舍——搭配安装指南、典型排障技巧及权限避坑要点,为运维人员提供一套即装即用、直击痛点的网络流量排查闭环方案。

Linux怎么监控实时网络流量_Linux iftop和nethogs工具【追踪】

怎么一眼看出哪个进程在疯狂发包

直接上 nethogs,它专治“不知道谁在偷跑流量”。别的工具按协议或IP分,它按进程分——你看到的每一行就是一个 PID 在实时吞吐,不用再从端口反推服务、从服务查进程。

常见错误现象:用 iftop 看到某个 IP 流量爆了,但查 netstat -tulnp 却发现端口没进程监听;其实是容器、沙箱或短生命周期进程(比如 curl 脚本)干的,nethogs 能当场捕获它们。

  • Ubuntu/Debian:运行 sudo apt install nethogs,然后 sudo nethogs
  • RHEL/CentOS/AlmaLinux:先 sudo yum install epel-release,再 sudo yum install nethogs
  • 默认监控 eth0,想换网卡就加参数,比如 sudo nethogs ens33
  • 交互时按 r 按接收排序,s 按发送排序,q 退出 —— 别等它自动刷新,手动冻结排序(o)才能盯住可疑进程

怎么快速定位是哪个外部IP在猛连我

iftop 是这个问题的秒解。它不关心进程是谁,只告诉你“此刻谁和我在通信、流速多大”,特别适合应急判断是否被扫描、被拖库、或 CDN 回源异常。

使用场景:Web 服务器突发高带宽,nethogs 显示 nginx 占得多,但你不确定是正常用户还是恶意爬虫 —— 这时候切到 iftop,一眼看到 100+ 连接来自同一个 /24 段,基本可以判定。

  • 安装:sudo apt install iftop(Debian系)或 sudo yum install iftop(RHEL系)
  • 启动后默认按 10 秒平均流量排序,按 1/2/3 可切换看 2s/10s/40s 流量
  • 按 N 关闭端口转服务名(避免把 80 显示成 http,干扰判断),按 P 显示端口号,按 f 输入 host 192.168.1.100 过滤特定目标
  • 注意:如果网卡是 bond 或 veth(如 Docker 容器),iftop -i docker0 才能抓到容器间流量,别只盯着 eth0

为什么 nethogs 显示的总流量和 iftop 对不上

不是 bug,是视角不同导致的统计口径差异。简单说:nethogs 统计的是**进程发起的 TCP/UDP 报文净荷**(payload),而 iftop 统计的是**网卡驱动收到/发出的原始帧**(含 TCP 头、IP 头、以太网头、重传包)。

典型偏差场景:

  • 大量小包(如 DNS 查询):iftop 会把每个 60 字节的请求+响应都算进去,nethogs 可能归到 systemd-resolved 但数值偏小
  • 启用 TCP Segmentation Offload(TSO)的网卡:硬件把大包拆成小帧发出去,iftop 看到的是拆后的帧流速,nethogs 仍按应用层发包量统计
  • 容器网络:宿主机上 nethogs 看不到容器内进程(除非用 --net=host),但 iftop -i cni0 能看到所有进出容器的流量

所以别纠结“哪个准”,该用 nethogs 查责任人,该用 iftop 查通信对象,两者互补,不是替代。

装完跑不起来?常见权限和依赖坑

nethogs 和 iftop 都需要抓包能力,本质是读取 /dev/net/pf_packet 或调用 libpcap,普通用户没权限 —— 这是最常卡住的地方。

  • 报错 Unable to get pid of the process 或 socket: Operation not permitted:一定是没加 sudo,别信“文档说可普通用户运行”,那是旧版本或特殊编译配置
  • CentOS 8+/AlmaLinux 9 启用 nf_tables 后,iftop 可能无法解析连接状态:临时切回 iptables(sudo update-alternatives --config iptables),或升级到 iftop 1.1.0+
  • Alibaba Cloud Linux 默认禁用 promiscuous 模式:nethogs -p 会失败,去掉 -p 即可;iftop -p 同理
  • Docker 容器里装不了?别试了。容器默认没 CAP_NET_RAW 权限,且网络命名空间隔离,必须在宿主机运行

真要容器内监控,改用 ss -i + cat /proc/net/snmp 粗略估算,或者挂载宿主机 /proc 和 /sys 后跑 nethogs —— 但这就超出“实时排查”范畴了。

以上就是本文的全部内容了,是否有顺利帮助你解决问题?若是能给你带来学习上的帮助,请大家多多支持golang学习网!更多关于文章的相关知识,也可关注golang学习网公众号。

百度AI情感分析怎么用?【洞察指南】百度AI情感分析怎么用?【洞察指南】
上一篇
百度AI情感分析怎么用?【洞察指南】
Windows11更新失败怎么解决?
下一篇
Windows11更新失败怎么解决?
查看更多
最新文章
查看更多
课程推荐
  • 前端进阶之JavaScript设计模式
    前端进阶之JavaScript设计模式
    设计模式是开发人员在软件开发过程中面临一般问题时的解决方案,代表了最佳的实践。本课程的主打内容包括JS常见设计模式以及具体应用场景,打造一站式知识长龙服务,适合有JS基础的同学学习。
    543次学习
  • GO语言核心编程课程
    GO语言核心编程课程
    本课程采用真实案例,全面具体可落地,从理论到实践,一步一步将GO核心编程技术、编程思想、底层实现融会贯通,使学习者贴近时代脉搏,做IT互联网时代的弄潮儿。
    516次学习
  • 简单聊聊mysql8与网络通信
    简单聊聊mysql8与网络通信
    如有问题加微信:Le-studyg;在课程中,我们将首先介绍MySQL8的新特性,包括性能优化、安全增强、新数据类型等,帮助学生快速熟悉MySQL8的最新功能。接着,我们将深入解析MySQL的网络通信机制,包括协议、连接管理、数据传输等,让
    500次学习
  • JavaScript正则表达式基础与实战
    JavaScript正则表达式基础与实战
    在任何一门编程语言中,正则表达式,都是一项重要的知识,它提供了高效的字符串匹配与捕获机制,可以极大的简化程序设计。
    487次学习
  • 从零制作响应式网站—Grid布局
    从零制作响应式网站—Grid布局
    本系列教程将展示从零制作一个假想的网络科技公司官网,分为导航,轮播,关于我们,成功案例,服务流程,团队介绍,数据部分,公司动态,底部信息等内容区块。网站整体采用CSSGrid布局,支持响应式,有流畅过渡和展现动画。
    485次学习
查看更多
AI推荐
  • PubMedQA数据集详解:生物医学问答基准、功能与应用指南
    PubMedQA
    深入了解PubMedQA生物医学问答数据集,涵盖其核心功能、使用方法及在临床决策、药物研发等场景的应用,助力提升NLP模型性能。
    324次使用
  • H2O EvalGPT:开源LLM大模型评估与排行榜工具
    H2O EvalGPT
    H2O EvalGPT是H2O.ai推出的开源LLM评估平台,提供详细的大模型性能排行榜、行业特定基准测试及A/B测试功能,助您快速选择最适合项目的高性能大语言模型。
    378次使用
  • LMArena是什么?伯克利AI模型评估平台使用指南与功能解析
    LMArena
    LMArena是加州大学伯克利分校推出的AI模型匿名评测平台。通过盲测投票机制,用户可对比不同大模型回答并生成实时排行榜,助力开发者优化模型及用户选择最佳AI工具。
    375次使用
  • 斯坦福HELM:大语言模型Holistic Evaluation整体评估框架详解
    HELM
    深入了解斯坦福推出的HELM(Holistic Evaluation of Language Models)大模型评测体系。本文解析其核心功能、安装配置步骤及应用场景,涵盖准确性、公平性、鲁棒性等多维度指标,助力开发者全面优化语言模型性能。
    338次使用
  • MMBench详解:多模态大模型基准测试、功能特点与使用指南
    MMBench
    MMBench是由上海人工智能实验室等机构联合推出的多模态基准测试平台,提供细粒度能力评估、大规模数据集及VLMEvalKit工具。本文详细介绍其核心功能、安装使用方法及应用场景,助力开发者全面评估多模态模型性能。
    164次使用
微信登录更方便
  • 密码登录
  • 注册账号
登录即同意 用户协议 和 隐私政策
返回登录
  • 重置密码