linux 下常用的网络工具

本贴最后更新于 1905 天前,其中的信息可能已经时移世异

背景

linux 上带宽够不够用,哪个应用占用的带宽多?

找到了趁手的工具,就赶紧记录下来吧。

工具集

nethogs

安装

yum install nethogs

使用

nethogs

结果

NetHogs version 0.8.5

    PID USER     PROGRAM                    DEV        SENT      RECEIVED
      ? root     ...11.22.33:23456-183.240              0.336       0.128 KB/sec
      ? root     unknown TCP                            0.000       0.000 KB/sec

  TOTAL                                                 0.336       0.128 KB/sec

其中抓到的包会保存到当前目录下,比如文件 221.130.199.237.64309-011.022.033.044.00443,

内容为:

GET https://httpbin.org/get?show_env=1 HTTP/1.1
Host: httpbin.org
Accept-Encoding: identity
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/55.0.2883.87 Safari/537.36

nload

安装

yum install nload

运行

nload

结果

Device venet0 [127.0.0.1] (2/2):
================================================================================
Incoming:




                                                       Curr: 0.00 Bit/s
                                                       Avg: 1.18 kBit/s
                                                       Min: 0.00 Bit/s
                                                       Max: 12.95 kBit/s
                                                       Ttl: 8.79 GByte
Outgoing:





                                                       Curr: 1.43 kBit/s
                                                       Avg: 5.11 kBit/s
                                                       Min: 728.00 Bit/s
                                                       Max: 95.66 kBit/s
                                                       Ttl: 14.24 GByte

iftop

安装

yum install iftop

使用

iftop

结果

               	12.5Kb          25.0Kb          37.5Kb          50.0Kb    62.5Kb
└───────────────┴───────────────┴───────────────┴───────────────┴───────────────
11.22.33.44.55clouds.com   => 111.222.333.44             1.48Kb  1.20Kb   934b
                           <=                             208b    342b    242b
11.22.33.44.55clouds.com   => google-public-dns-a.googl     0b     58b     29b
                           <=                               0b     89b     48b
11.22.33.44.55clouds.com   => scanners.labs.rapid7.com      0b     32b      8b
                           <=                               0b     32b      8b
11.22.33.44.55clouds.com   => 111.22.33.44                  0b      0b     93b
                           <=                               0b      0b     87b









────────────────────────────────────────────────────────────────────────────────
TX:             cum:   7.02KB   peak:   3.31Kb  rates:   1.48Kb  1.29Kb  1.04Kb
RX:                    2.53KB           2.42Kb            208b    463b    385b
TOTAL:                 9.55KB           5.73Kb           1.69Kb  1.74Kb  1.41Kb

vnstat

安装

yum install vnstat

首次使用

# vnstat -u -i venet0

结果

Error: Unable to read database "/var/lib/vnstat/venet0".
Info: -> A new database has been created.

再次使用

# vnstat -i venet0

结果

Database updated: Thu Feb  7 21:15:26 2019

   venet0 since 02/07/2019

          rx:  1 KiB      tx:  11 KiB      total:  12 KiB

   monthly
                     rx      |     tx      |    total    |   avg. rate
     ------------------------+-------------+-------------+---------------
       Feb '19         1 KiB |      11 KiB |      12 KiB |    0.00 kbit/s
     ------------------------+-------------+-------------+---------------
     estimated        --     |      --     |      --     |

   daily
                     rx      |     tx      |    total    |   avg. rate
     ------------------------+-------------+-------------+---------------
         today         1 KiB |      11 KiB |      12 KiB |    0.00 kbit/s
     ------------------------+-------------+-------------+---------------
     estimated        --     |      --     |      --     |

其它

  • slurm
  • collectl
  • iotop
  • iptraf
  • dstat
  • bwm-ng: Bandwidth Monitor NG
  • ibmonitor: Interactive bandwidth monitor
  • ss -tunap | col
  • ss -tunap | column -t
  • netstat -tunape | col
  • netstat -tunape | column -t
  • vmstat -w 1
  • dstat -lcdnmspyt

后记

  • 监控总体带宽使用: nload、bmon、slurm、bwm-ng、cbm、speedometer 和 netload
  • 监控总体带宽使用(批量式输出: vnstat、ifstat、dstat 和 collectl
  • 每个套接字连接的带宽使用: iftop、iptraf、tcptrack、pktstat、netwatch 和 trafshow
  • 每个进程的带宽使用: nethogs

参考

  • Linux

    Linux 是一套免费使用和自由传播的类 Unix 操作系统,是一个基于 POSIX 和 Unix 的多用户、多任务、支持多线程和多 CPU 的操作系统。它能运行主要的 Unix 工具软件、应用程序和网络协议,并支持 32 位和 64 位硬件。Linux 继承了 Unix 以网络为核心的设计思想,是一个性能稳定的多用户网络操作系统。

    915 引用 • 931 回帖

相关帖子

欢迎来到这里!

我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。

注册 关于
请输入回帖内容 ...
  • 841V

    nethogs