Mac终端实时监控网卡速率可用iftop、sysctl差值法或vnstat:1. iftop需brew安装,sudo iftop -i en0按连接显示双向流量;2. sysctl命令每秒读取rxbytes/txbytes并换算为KB/s;3. vnstat后台采集后用vnstat -l查看滚动均值;4. networkQuality用于端到端带宽诊断而非实时监控。

Mac终端中实时监控各网卡上传下载速率,需绕过图形界面直接读取内核级网络接口统计,避免浏览器或应用层干扰,确保看到的是en0(Wi-Fi)、en1(有线)等真实接口每秒字节数。
用iftop命令按接口实时监控流量
方法一:安装并运行iftop(推荐用于临时诊断)
1、打开“终端”,执行:brew install iftop;若未安装Homebrew,先运行官方安装脚本:/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"。
2、确认Wi-Fi接口名:执行 networksetup -listallhardwareports | grep -A 1 "Wi-Fi",通常为en0;有线网卡多为en1。
3、以root权限启动监控:sudo iftop -i en0;界面顶部显示全局速率汇总,中间列表按连接实时排序,单位默认为KB/s或MB/s。
4、按 Shift + P 切换显示端口,Shift + T 切换显示目标IP,q 退出。
注意:iftop不区分上传/下载方向,而是按连接对(source→destination)展示双向流量,发送即为该连接的“outgoing”,接收即为“incoming”——需结合本地IP判断流向。
用netstat和while循环实现纯原生实时速率计算
方法一:单接口秒级吞吐量(无需额外安装)
1、执行以下命令即可实时刷新en0每秒收发字节数:while true; do echo "$(date +%H:%M:%S) — $(ifconfig en0 | awk '/bytes.*received/ {print \"↓\" $3} /bytes.*sent/ {print \"↑\" $3}')"; sleep 1; done
2、该命令每秒抓取一次ifconfig输出,定位到“bytes received”和“bytes sent”字段后第三项数值(即累计字节数),再通过前后差值隐含计算速率——但注意:它只输出累计值,不自动做减法。
3、要真正获得B/s,必须用两次采样做差;因此更可靠的做法是改用sysctl:while true; do RX=$(sysctl -n net.if.en0.stats.rxbytes); TX=$(sysctl -n net.if.en0.stats.txbytes); echo "$(date +%H:%M:%S) ↓$(($RX/1024)) KB/s ↑$(($TX/1024)) KB/s"; sleep 1; done
⚠️【此命令依赖en0存在且已启用,若使用有线请将en0替换为en1,否则会报错中断】
用vnstat实现后台持续记录+终端快速查看
第一步:初始化数据库并启用监控
1、执行 brew install vnstat 安装工具。
2、选择要监控的接口(如en0):sudo vnstat -u -i en0;这一步会创建数据库并开始后台采集。
3、启动守护进程:sudo brew services start vnstat(macOS Sonoma及以后需确认launchd权限)。
第二步:终端中即时查看实时速率
4、执行 vnstat -l -i en0,终端立即显示最近10秒、分、小时的实时平均速率,单位为kbit/s;
5、数值稳定、无抖动,因vnstat采用内核计数器+滑动窗口算法,比轮询ifconfig更准——但它不是“瞬时”值,而是滚动均值。
6、可同时监控多个接口:分别对en0、en1执行 sudo vnstat -u -i en1,再用 vnstat -l 查看全部。
用networkQuality验证端到端带宽质量(非实时但具诊断价值)
当iftop或vnstat显示速率异常高但实际业务卡顿时,说明问题不在链路带宽,而在协议栈或服务器侧。
1、在终端中输入:networkQuality -v;加-v参数可输出更详细过程日志,包括连接阶段耗时、重试次数、丢包标记。
2、等待8–12秒,观察是否出现 "error": "connection failed" 或 "ul_target_bitrate": 0;若上传始终为0,大概率是ISP策略限速或防火墙拦截了Apple测速节点出向连接。
3、此时应配合 ping -c 5 1.1.1.1 和 curl -I https://apple.com 确认基础连通性——【networkQuality结果为0不代表网卡没流量,只代表它无法完成端到端测速握手】。

















