当前位置:首页 > Linux > 正文

Linux如何查看网速

Linux中查看网络、磁盘或系统速率常用工具:iftop/nload监控实时网络带宽,iotop/iostat查看磁盘读写速度,top/htop观察CPU/内存使用率,sar提供历史性能数据报告。

实时监控工具(推荐场景:快速诊断当前速率)

  1. nload(可视化界面)

    • 安装sudo apt install nload(Debian/Ubuntu)或 sudo yum install nload(CentOS/RHEL)
    • 使用
      nload eth0  # 指定网卡(如eth0)
      • 输出解读
        • Incoming:下行速率(RX)
        • Outgoing:上行速率(TX)
        • 实时曲线图直观展示波动(单位:Mbit/s、Kbit/s)。
    • 优势:轻量级、无依赖,适合终端实时监控。
  2. iftop(按连接排序)

    • 安装sudo apt install iftopsudo yum install iftop
    • 使用
      sudo iftop -i eth0 -P  # -P显示端口号
      • 输出解读
        • 顶部:总速率(RX/TX)。
        • 中部:实时连接列表(按流量排序)。
        • 底部:2s/10s/40s平均速率。
    • 场景:精准定位高流量IP或端口(如检测DDoS攻击)。
  3. ifstat(多网卡对比)

    Linux如何查看网速  第1张

    • 安装sudo apt install ifstatsudo yum install ifstat
    • 使用
      ifstat -t -i eth0  # -t加时间戳,-i指定网卡
      • 输出示例
        Time        eth0 RX(KB/s)   TX(KB/s)
        10:00:01      24.8         12.3
    • 优势:支持同时监控多网卡(ifstat eth0 wlan0)。

历史数据与统计(推荐场景:长期趋势分析)

  1. vnStat(自动日志记录)

    • 安装
      sudo apt install vnstat   # Debian/Ubuntu
      sudo yum install vnstat   # CentOS/RHEL(需先启用EPEL仓库)
    • 使用
      vnstat -l    # 实时模式(按小时/天/月汇总)
      vnstat -d    # 查看日流量统计
      vnstat -m    # 查看月流量统计
    • 配置:数据存储在/var/lib/vnstat/,开机自启守护进程。
    • 优势:低资源占用,适合7×24小时监控。
  2. sar(系统级历史报告)

    • 安装sudo apt install sysstatsudo yum install sysstat
    • 查看历史速率
      sar -n DEV 1 5  # 每1秒采样1次,共5次(实时)
      sar -n DEV -f /var/log/sa/sa01  # 查看1号历史数据
      • 关键字段
        • rxkB/s:每秒接收千字节数
        • txkB/s:每秒发送千字节数
        • %ifutil:网卡利用率(需内核支持)。

基础命令(快速检查瞬时速率)

  1. ip命令(查看累计流量)

    ip -s link show eth0
    • 输出关键行
      RX: bytes  packets  errors ...  # 接收总量
      TX: bytes  packets  errors ...  # 发送总量
    • 计算实时速率
      间隔10秒执行两次,手动计算差值(例:(第二次RX字节 - 第一次RX字节)/10)。
  2. ethtool(诊断物理层速率)

    sudo ethtool eth0 | grep Speed
    • 输出Speed: 1000Mb/s(网卡协商的理论最大值)。

高级工具(按需使用)

工具 命令示例 适用场景
bmon bmon -p eth0 彩色界面,支持多网卡对比
dstat dstat -nt --net-rate 综合监控(CPU、磁盘、网络)
iptraf-ng sudo iptraf-ng 交互式菜单,支持TCP/UDP分析

最佳实践建议

  1. 实时诊断:优先用 nloadiftop(可视化直观)。
  2. 长期统计:部署 vnStat(自动记录,节省人力)。
  3. 故障排查:结合 ip -s(检查丢包/错误包)和 ethtool(验证物理连接)。
  4. 脚本集成:使用 ifstat -tsar 输出机器可读数据。

重要提示

  • 部分工具需root权限(如iftop)。
  • 云服务器用户需注意:虚拟网卡名称可能为ens5eth1等,用ip link确认。
  • 速率单位换算:1 Byte = 8 bits(运营商常用bps,工具常显示B/s)。

引用说明

  • nload:官方文档 https://github.com/rolandriegel/nload
  • vnStat:手册页 https://humdi.net/vnstat/
  • Linux内核网络统计:内核文档 https://www.kernel.org/doc/html/latest/networking/statistics.html
  • 数据单位标准:IEEE 1541-2002(二进制前缀规范)。
0