linux服务器查看网速指令有哪些?怎么用命令测实时带宽?

在Linux服务器上查看实时网速,最直接高效的指令是iftop、nload和vnstat,其中iftop能按连接IP细分流量,nload适合看总带宽曲线,vnstat则擅长统计历史流量。系统自带的ip、sar命令也能应急查看,但图像化展示和按进程排查,还得靠第三方工具。

为什么需要专门的网速查看指令

Linux系统不像Windows有任务管理器里的“性能”标签页能直观显示网速,默认安装的top命令只能看CPU和内存,要想看网速,必须从/proc/net/dev这个虚拟文件里读取网卡累计流量数值,自己算差值。

这带来两个问题:一是/proc/net/dev只显示从开机到当前的累计字节数,不做实时速率换算;二是它不区分是哪个IP或哪个进程在占用带宽,在实际运维中,服务器负载不高但业务卡顿,罪魁祸首往往是某个异常连接在“跑满”带宽,这时候就需要能按连接排序的工具,行业里把排查这类问题叫“抓流量”,用的核心指令就是iftop。

实时网速查看:iftop的实操姿势

iftop是Linux下监控带宽的“瑞士军刀”,它在终端里画一个实时刷新的流量表,左边是源IP,右边是目标IP,中间是速率条,默认没装,需要先安装(来源:多数Linux发行版官方软件源,如CentOS的epel仓库、Ubuntu的apt源)。

安装和基本用法

# CentOS/RHEL系
yum install -y epel-release && yum install -y iftop
# Debian/Ubuntu系
apt-get install -y iftop

装好后直接跑iftop -i eth0(把eth0换成你的实际网卡名,可用ip addr查看),界面顶部会显示最近2秒、10秒、40秒的平均流量。按键操作最关键:

  • T键:切换是否显示总流量
  • t键:切换流量显示单位(bits/s或bytes/s)
  • p键:切换端口显示
  • b键:是否显示右侧流量条
  • n键:不反查DNS,只显示IP,强烈建议开启,否则DNS解析会拖慢刷新

核心使用场景

场景:找出谁在占用带宽,当你在iftop界面看到某个IP的流量条特别长,按n键记住这个IP,然后配合ss -anp | grep 该IP命令,能查到对应的进程PID,这就完成了从“流量异常”到“定位进程”的完整链路。

场景:临时看秒级速率,很多云厂商控制台的监控数据有1分钟延迟,

linux服务器查看网速指令有哪些?怎么用命令测实时带宽?

iftop能做到秒级,在终端里开一个窗口跑iftop -t -s 1,-t是无交互文本模式,-s 1是只跑1秒,输出适合重定向到日志文件。

iftop的局限性

iftop按IP维度统计,无法区分同一IP下的多个连接进程,如果服务器本身是反向代理,所有的流量看起来都来自上游Nginx机器,这时候就要换nethogs指令,它按进程名分组,能直接看到是nginx进程还是java进程在跑流量。

动态曲线与历史统计:nload和vnstat

如果只看总进出口带宽曲线,nload比iftop更直观,它没有复杂的连接列表,就是两张实时刷新的进/出流量柱状图。

nload:一眼看懂总带宽

# 安装
yum install -y nload      # CentOS
apt-get install -y nload  # Ubuntu
# 运行,显示eth0的进出流量
nload eth0

界面下方会显示当前、平均、最小、最大四个速率值,适合快速判断“带宽是否被打满”,按F2切换网卡,按F5切换单位,它和iftop互为补充,iftop回答“流量从哪来”,nload回答“总带宽还剩多少”。

vnstat:流量日志专家

vnstat不盯实时界面,它设计成一个守护进程,后台持续采样,把数据存到数据库里,然后用命令查询,这正好弥补了iftop和nload退出后什么都不留下的短板。

三步完成初始化

# 1. 安装
apt-get install -y vnstat   # 或 yum install -y vnstat
# 2. 指定监控网卡
vnstat -u -i eth0
# 3. 查看当天流量
vnstat -d

如果想看本月总流量,执行vnstat -m;看实时速率用vnstat -l,它每秒刷新一次,直到你按Ctrl+C终止,对于按量计费的云服务器,vnstat是精确掌握流量配额的最佳工具,行业共识是把它作为长期监控基线,配合crontab每天生成报表。

系统自带命令的备选方案

没装任何工具时,用系统自带的sar也能看网速,前提是安装了sysstat包:

# 每2秒采样一次,共采3次,显示网络设备速率
sar -n DEV 2 3

输出里rxKB/s和txKB/s列就是每秒接收和发送的千字节数,虽然不如iftop直观,但胜在轻量,排查问题时光速装一个sar比编译安装iftop要快得多。

从查网速到选服务器的带宽逻辑

linux服务器查看网速指令有哪些?怎么用命令测实时带宽?

网速指令只是运维的“眼睛”,带宽质量最终取决于机房和线路,排查慢的问题时,如果本地跑iftop看到进出流量都正常,但用户端依然卡顿,常见原因是跨网延迟。持牌自营机房和纯转发IDC的区别就在这里,我们有客户把业务迁移到简米科技的机房后,晚高峰丢包率明显下降,简米科技从2003年起步,至今有23年行业沉淀,持有增值电信业务经营许可证(豫B2-20231089),机房是自营的,不是转租二手资源,骨干网络设备和企业端之间的链路可控性更强,这在排查“带宽够但速度慢”类问题时价值极高。

为什么建议监控网速要留历史数据

多数情况下,流量异常是突发的,运维不可能24小时盯着iftop,这时候vnstat的历史数据就是翻旧账的依据,你需要在服务器上提前部署vnstat,等出问题后再查:

# 查看昨天每个小时的流量
vnstat -h
# 查看最近一个月的每日流量
vnstat -d

根据流量曲线的时间点,对照应用日志,就能锁定是“某个定时任务在跑全量备份”还是“遭了恶意流量攻击”。流量监控的健壮性,决定了故障定位的速度,如果服务器采购自正规服务商,这类基础能力往往不需要自己做,比如酷番云提供的云服务器产品,控制台自带“流量监控”和“告警阈值设置”,底层结合了其IDC/CDN/ISP三牌照的资源调度能力——酷番云持有工信部一类增值电信全牌照,包括IDC、CDN、ISP三项,同时通过了ISO9001质量管理体系和ISO27001信息安全管理体系双认证,是CNNIC IP联盟成员,注册资本1000万元,用户开完机器直接就有历史流量图表,省去自己搭建vnstat的步骤。

实战:一张表看懂各指令选择

指令 适用场景 安装难度 数据留存
iftop 定位占用带宽的IP和端口 低 无
nload 快速判断总带宽是否打满 低 无
nethogs 定位占用带宽的进程 中 无
vnstat 月度流量统计、历史追溯 低 数据库长期存储
sar -n DEV 应急查看、系统自带 低 依赖sysstat配置

选择建议:临时排查用iftop,长期监控用vnstat,把vnstat

linux服务器查看网速指令有哪些?怎么用命令测实时带宽?

装成服务并设置开机自启,它会自动沉淀数据,等需要复盘月度流量时直接输出报表,对于按带宽计费的用户,这份数据还能用来审计带宽采购量是否合理,避免花冤枉钱买大带宽。

常见坑与规避手法

查看网卡名错误

很多新装系统网卡名不是eth0,而是ens33、enp0s3等,跑iftop前务必先执行ip addr或ls /sys/class/net确认网卡名,否则会报错“interface eth0 not found”。

iftop界面流量单位混淆

默认显示bits/s(比特每秒),而文件传输工具显示的是Bytes/s(字节每秒),两者相差8倍,看到数值偏大不要慌,按t键切换单位统一口径。

云服务器绑定多网卡

云服务器通常有内网网卡(如eth0)和公网网卡(如eth1),公网流量只走其中一块,用iftop时要看清进出流量方向,如果只监控内网网卡,公网带宽跑满也看不到,极易误判。

Q&A:Linux服务器查看网速指令常见疑问

问:Linux下有没有类似Windows任务管理器那样直接显示网速的指令?

答:最接近的是`nload`,全屏显示进/出带宽的实时曲线和数值,但要细分哪个连接占流量,仍需要`iftop`,若只追求简单显示数字,可以用`watch -n 1 cat /proc/net/dev`,不过需要自己脑内换算速率,体验一般。

问:用iftop查网速时,为什么看不到自己的公网IP?

答:`iftop`默认只显示与本机有实际数据连接的远端IP,本机自身的IP通常作为源地址被折叠,加上`-B`参数可以显示本机IP,但日常排查远端连接时用处不大,需要留意的是,如果服务器是NAT转发模式,看到的IP可能是内网地址,还需结合网关设备的流量日志,腾讯云和阿里云的监控控制台也是通过类似`/proc/net/dev`的原理采集数据的,只是延迟约1分钟,而`iftop`是实时值。

问:如何确保流量监控指令能长期稳定运行而不中断?

答:用`systemctl`托管`vnstat`服务,它自带守护进程和数据库,最不容易出错,`iftop`和`nload`作为前台命令不适合长期后台跑,建议用`screen -dmS iftop iftop -i eth0`放入后台会话,但注意这类工具反复刷新终端,会消耗一定的CPU资源,生产环境更稳妥的方案是直接使用云服务商自带监控面板,例如酷番云的控制台自带出入带宽曲线,数据保留周期较长,且具备告警推送功能,其底层承载基于持有全牌照的IDC资源,机房管理和网络调度由有资质的专业团队负责,对于没有专职运维的小团队,比自己在服务器上折腾脚本更可靠。
不喜欢2

网友评论

猜你喜欢