云服务器网络流量监控指南
本文介绍如何在 Linux 系统中监控网络流量,包括实时带宽、历史统计、按进程分析等方法。 适用于 Ubuntu、Debian 等主流发行版。
概述
在 Linux 系统下进行网络流量监控有多种方式,从轻量级命令行工具到图形化可视化分析平台。 常见需求包括:
实时监控 当前带宽和连接; 历史记录 分析网络使用趋势; 按进程统计 各程序带宽消耗; 安全分析 检查异常连接或流量峰值。
基础监控工具
ifconfig命令
ifconfig是一款基本的网络配置和流量监控工具。它能够显示网络接口的详细信息,包括IP和MAC地址,还有接收与发送的数据包数量。通过ifconfig ,我们能快速了解网络接口的运行情况。一旦发现数据包数量出现异常,可能表明网络存在某些问题。发送的数据包数量不断增加,但接收到的数据包却很少,这可能表明网络连接不稳定,存在问题。
不过,这个指令仅能展示当前网络状况。若想观察一段时间内的流量变化,还需结合其他指令。对于网络新手,能帮助你初步认识网络接口的工作情况。
实时流量分析
问题是抓住瞬时流量及相关进程
nethogs命令
nethogs 是最常用的 按进程流量监控工具,能实时显示每个程序的网络使用情况。
sudo apt install nethogs
sudo nethogs
交互说明:
- q 退出
- m 切换显示单位
- s 排序模式切换
适用于排查哪个程序在“偷跑流量”。
iftop命令
iftop 可显示每个远程连接的带宽使用(类似于 “top” 命令监控 CPU)。
sudo apt install iftop
sudo iftop -i wlp3s0
界面说明:
- 左侧为本机地址,右侧为远端主机;
- 实时显示发送和接收 速率;
- 支持按主机或端口过滤。
图形化监控工具
Sniffnet
Sniffnet 是一款现代化的跨平台图形化网络分析工具,支持 Linux,Windows 和 MacOS。
安装示例(Debian/Ubuntu):
sudo apt install ./Sniffnet_LinuxDEB_amd64.deb
sniffnet
特点:
- 友好的 GUI;
- 按应用、主机、协议分类;
- 可导出流量报告。
日志查看
find命令
find命令用于在文件系统中搜索符合条件的文件或目录。基本语法如下:
find [搜索路径] [搜索条件] [动作]
例如,搜索/home/user目录下所有.txt文件:
find /home/user -name "*.txt"
但是等等!如果其中一些扩展名是大写怎么办? -iname 类似于 -name,但不区分大小写:
find ~ -iname '*jpg'
grep命令
使用grep查找某目录下包含关键字内容的文件
grep -r “{关键字}” {路径}
例如:
grep -r "data" /data/notes/
声明:本文素材来源网络,版权归原作者所有。如涉及作品版权问题,请与我联系删除。