咨询热线:020-82315523 18988993510 18988993505

Linux服务器上监控网络带宽的18个常用命令和linux带宽流量监控查看工具

这些工具使用不同的机制来制作流量报告。nload等一些工具可以读取"proc/net/dev"文件,以获得流量统计信息;而一些工具使用pcap库来捕获所有数据包,然后计算总数据量,从而估计流量负载。

下面是按功能划分的命令名称。

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

1. nload

11.jpg

nload是一个命令行工具,让用户可以分开来监控入站流量和出站流量。它还可以绘制图表以显示入站流量和出站流量,视图比例可以调整。用起来很简单,不支持许多选项。

所以,如果你只需要快速查看总带宽使用情况,无需每个进程的详细情况,那么nload用起来很方便。

  1. $ nload 

安装nload:Fedora和Ubuntu在默认软件库里面就有nload。CentOS用户则需要从Epel软件库获得nload。

  1. # fedora或centos 
  2. $ yum install nload -y 
  3. # ubuntu/debian 
  4. $ sudo apt-get install nload 

2. iftop

iftop可测量通过每一个套接字连接传输的数据;它采用的工作方式有别于nload。iftop使用pcap库来捕获进出网络适配器的数据包,然后汇总数据包大小和数量,搞清楚总的带宽使用情况。

虽然iftop报告每个连接所使用的带宽,但它无法报告参与某个套按字连接的进程名称/编号(ID)。不过由于基于pcap库,iftop能够过滤流量,并报告由过滤器指定的所选定主机连接的带宽使用情况。

  1. iftop -n 

n选项可以防止iftop将IP地址解析成主机名,解析本身就会带来额外的网络流量。

安装iftop:Ubuntu/Debian/Fedora用户可以从默认软件库获得它。CentOS用户可以从Epel获得它。

  1. # fedora或centos 
  2. yum install iftop -y 
  3. # ubuntu或 debian 
  4. $ sudo apt-get install iftop 

界面上面显示的是类似刻度尺的刻度范围,为显示流量图形的长条作标尺用的。
中间的<= =>这两个左右箭头,表示的是流量的方向。
TX:发送流量
RX:接收流量
TOTAL:总流量
Cumm:运行iftop到目前时间的总流量
peak:流量峰值
rates:分别表示过去 2s 10s 40s 的平均流量

3. iptraf

iptraf是一款交互式、色彩鲜艳的IP局域网监控工具。它可以显示每个连接以及主机之间传输的数据量。下面是屏幕截图。

  1. $ sudo iptraf 

安装iptraf:

  1. # Centos(基本软件库) 
  2. $ yum install iptraf 
  3. # fedora或centos(带epel) 
  4. $ yum install iptraf-ng -y 
  5. # ubuntu或debian 
  6. $ sudo apt-get install iptraf iptraf-ng 

4. nethogs

nethogs是一款小巧的"net top"工具,可以显示每个进程所使用的带宽,并对列表排序,将耗用带宽最多的进程排在最上面。万一出现带宽使用突然激增的情况,用户迅速打开nethogs,就可以找到导致带宽使用激增的进程。nethogs可以报告程序的进程编号(PID)、用户和路径。

  1. nethogs 

安装nethogs:Ubuntu、Debian和Fedora用户可以从默认软件库获得。CentOS用户则需要Epel。

  1. # ubuntu或debian(默认软件库) 
  2. $ sudo apt-get install nethogs 
  3. # fedora或centos(来自epel) 
  4. yum install nethogs -y 

5. bmon

bmon(带宽监控器)是一款类似nload的工具,它可以显示系统上所有网络接口的流量负载。输出结果还含有图表和剖面,附有数据包层面的详细信息。

安装bmon:Ubuntu、Debian和Fedora用户可以从默认软件库来安装。CentOS用户则需要安装repoforge,因为Epel里面没有bmon。

  1. # ubuntu或debian 
  2. $ sudo apt-get install bmon 
  3. # fedora或centos(来自repoforge) 
  4. $ sudo yum install bmon 

bmon支持许多选项,能够制作HTML格式的报告。欲知更多信息,请参阅参考手册页。

6. slurm

slurm是另一款网络负载监控器,可以显示设备的统计信息,还能显示ASCII图形。它支持三种不同类型的图形,使用c键、s键和l键即可激活每种图形。slurm功能简单,无法显示关于网络负载的任何更进一步的详细信息。

  1. $ slurm -s -i eth0 

安装slurm

  1. # debian或ubuntu 
  2. $ sudo apt-get install slurm 
  3. # fedora或centos 
  4. $ sudo yum install slurm -y 

7. tcptrack

tcptrack类似iftop,使用pcap库来捕获数据包,并计算各种统计信息,比如每个连接所使用的带宽。它还支持标准的pcap过滤器,这些过滤器可用来监控特定的连接。

安装tcptrack:Ubuntu、Debian和Fedora在默认软件库里面就有它。CentOS用户则需要从RepoForge获得它,因为Epel里面没有它。

  1. # ubuntu, debian 
  2. $ sudo apt-get install tcptrack 
  3. # fedora, centos(来自repoforge软件库) 
  4. $ sudo yum install tcptrack 

8. vnstat

vnstat与另外大多数工具有点不一样。它实际上运行后台服务/守护进程,始终不停地记录所传输数据的大小。之外,它可以用来制作显示网络使用历史情况的报告。

  1. $ service vnstat status 
  2. * vnStat daemon is running 

运行没有任何选项的vnstat,只会显示自守护进程运行以来所传输的数据总量。

  1. $ vnstat 
  2. Database updated: Mon Mar 17 15:26:59 2014 
  3. eth0 since 06/12/13 
  4. rx:  135.14 GiB      tx:  35.76 GiB      total:  170.90 GiB 
  5. monthly 
  6. rx      |     tx      |    total    |   avg. rate 
  7.  
  8. ------------------------+-------------+-------------+------------- 
  9. Feb '14      8.19 GiB  |    2.08 GiB  |   10.27 GiB |   35.60 kbit/s 
  10. Mar '14      4.98 GiB  |    1.52 GiB  |    6.50 GiB |   37.93 kbit/s 
  11. ------------------------+-------------+-------------+------------- 
  12. estimated       9.28 GiB |    2.83 GiB  |   12.11 GiB | 
  13. daily 
  14. rx      |     tx      |    total    |   avg. rate 
  15. ------------------------+-------------+-------------+------------- 
  16. yesterday     236.11 MiB |   98.61 MiB |  334.72 MiB |   31.74 kbit/s 
  17. today    128.55 MiB |   41.00 MiB |  169.56 MiB |   24.97 kbit/s 
  18. ------------------------+-------------+-------------+------------- 
  19. estimated       199 MiB |      63 MiB |     262 MiB | 

想实时监控带宽使用情况,请使用"-l"选项(实时模式)。然后,它会显示入站数据和出站数据所使用的总带宽量,但非常精确地显示,没有关于主机连接或进程的任何内部详细信息。

  1. $ vnstat -l -i eth0 
  2. Monitoring eth0...    (press CTRL-C to stop) 
  3. rx:       12 kbit/s    10 p/s          tx:       12 kbit/s    11 p/s 

vnstat更像是一款制作历史报告的工具,显示每天或过去一个月使用了多少带宽。它并不是严格意义上的实时监控网络的工具。

vnstat支持许多选项,支持哪些选项方面的详细信息请参阅参考手册页。

安装vnstat

  1. # ubuntu或debian 
  2. $ sudo apt-get install vnstat 
  3. # fedora或 centos(来自epel) 
  4. $ sudo yum install vnstat 

9. bwm-ng

bwm-ng(下一代带宽监控器)是另一款非常简单的实时网络负载监控工具,可以报告摘要信息,显示进出系统上所有可用网络接口的不同数据的传输速度。

  1. $ bwm-ng 
  2. bwm-ng v0.6 (probing every 0.500s), press 'h' for help 
  3. input: /proc/net/dev type: rate 
  4. /         iface                   Rx                   Tx                T 
  5. ot================================================================= 
  6. ==           eth0:           0.53 KB/s            1.31 KB/s            1.84 
  7. KB             lo:           0.00 KB/s            0.00 KB/s            0.00 
  8. KB------------------------------------------------------------------------------------------------------------- 
  9. total:           0.53 KB/s            1.31 KB/s            1.84 
  10. KB/s 

如果控制台足够大,bwm-ng还能使用curses2输出模式,为流量绘制条形图。

  1. $ bwm-ng -o curses2 

安装bwm-ng:在CentOS上,可以从Epel来安装bwm-ng。

  1. # ubuntu或debian 
  2. $ sudo apt-get install bwm-ng 
  3. # fedora或centos(来自epel) 
  4. $ sudo apt-get install bwm-ng 

10. cbm:Color Bandwidth Meter

这是一款小巧简单的带宽监控工具,可以显示通过诸网络接口的流量大小。没有进一步的选项,仅仅实时显示和更新流量的统计信息。

  1. $ sudo apt-get install cbm 

11. speedometer

这是另一款小巧而简单的工具,仅仅绘制外观漂亮的图形,显示通过某个接口传输的入站流量和出站流量。

  1. speedometer -r eth0 -t eth0 

安装speedometer

  1. # ubuntu或debian用户 
  2.  apt-get install speedometer 

centos中的安装:
speedometer 需要 urwid 模块的支持,安装:
cd /usr/local/src
wget -q https://pypi.python.org/packages/source/u/urwid/urwid-1.3.1.tar.gz
tar -zxvvf urwid-1.3.1.tar.gz
cd urwid-1.3.1
python setup.py install
#这里需要python的版本大于2.6,可用python命令直接查看版本。

cd /usr/local/src/
wget -q http://excess.org/speedometer/speedometer-2.8.tar.gz
tar -zxvvf speedometer-2.8.tar.gz
cd speedometer-2.8
python setup.py install

监控流量:
speedometer -tx eth0 -rx eth0
#其中eth0是网卡,请根据你实际情况来,可用ifconfig命令查看网卡名称

Speedometer:Linux 终端下的网络监测工具

-c 选项可以以垂直分割的方式显示不同的项目:
speedometer -tx eth0 -c -rx eth0

Speedometer:Linux 终端下的网络监测工具

另外,Speedometer 还可以监测某个文件的下载速率,比如你正在下载 downlod.iso 这个文件,那么只要:
speedometer download.iso
就会显示出文件下载的速率,不过这招有时也不是很灵,因为大多数文件下载工具,会缓存下载的数据,或者在临时文件中保存下载的数据,而 Speedometer 只能通过监测文件大小的变化算出速率。
如果你知道下载文件的大小,可以在命令中指定大小,这样 Speedometer 就会帮你显示一个进度条,比如我知道 download.iso 是 80M:
speedometer download.iso $((80*1024*1024))
效果如下:

Speedometer:Linux 终端下的网络监测工具

因为 Speedometer 可以监控文件大小的变化,所以除了网速之外,你还可以用他来监测其他的数据。
比如,你可以用下面的命令监测一下硬盘的写入速度:
dd bs=1000000 count=1000 if=/dev/zero of=big_nothing &
speedometer big_nothing
前面的 dd 命令在当前目录写入一个全零的 1G 大小的文件,然后在写入中,用 Speedmeter 监测速度:

Speedometer:Linux 终端下的网络监测工具Speedometer 可以同时检测多个网络接口、文件,并在一起显示出来,只要你的屏幕够大~

12. pktstat

pktstat可以实时显示所有活动连接,并显示哪些数据通过这些活动连接传输的速度。它还可以显示连接类型,比如TCP连接或UDP连接;如果涉及HTTP连接,还会显示关于HTTP请求的详细信息。

  1. $ sudo pktstat -i eth0 -nt 
  2. $ sudo apt-get install pktstat 

13. netwatch

netwatch是netdiag工具库的一部分,它也可以显示本地主机与其他远程主机之间的连接,并显示哪些数据在每个连接上所传输的速度。

  1. $ sudo netwatch -e eth0 -nt 
  2. $ sudo apt-get install netdiag 

14. trafshow

与netwatch和pktstat一样,trafshow也可以报告当前活动连接、它们使用的协议以及每条连接上的数据传输速度。它能使用pcap类型过滤器,对连接进行过滤。

只监控TCP连接

  1. $ sudo trafshow -i eth0 tcp 
  2. $ sudo apt-get install netdiag 

15. netload

netload命令只显示关于当前流量负载的一份简短报告,并显示自程序启动以来所传输的总字节量。没有更多的功能特性。它是netdiag的一部分。

  1. $ netload eth0 
  2. $ sudo apt-get install netdiag 

16. ifstat

ifstat能够以批处理式模式显示网络带宽。输出采用的一种格式便于用户使用其他程序或实用工具来记入日志和分析。

  1. $ ifstat -t -i eth0 0.5 
  2. Time           eth0 
  3. HH:MM:SS   KB/s in  KB/s out 
  4. 09:59:21       2.62      2.80 
  5. 09:59:22       2.10      1.78 
  6. 09:59:22       2.67      1.84 
  7. 09:59:23       2.06      1.98 
  8. 09:59:23       1.73      1.79 

安装ifstat:Ubuntu、Debian和Fedora用户在默认软件库里面就有它。CentOS用户则需要从Repoforge获得它,因为Epel里面没有它。

  1. # ubuntu, debian 
  2. $ sudo apt-get install ifstat 
  3. # fedora, centos(Repoforge) 
  4. $ sudo yum install ifstat 

17. dstat

dstat是一款用途广泛的工具(用python语言编写),它可以监控系统的不同统计信息,并使用批处理模式来报告,或者将相关数据记入到CSV或类似的文件。这个例子显示了如何使用dstat来报告网络带宽。

安装dstat

  1. $ dstat -nt 
  2. -net/total- ----system---- 
  3. recv  send|     time 
  4. 0     0 |23-03 10:27:13 
  5. 1738B 1810B|23-03 10:27:14 
  6. 2937B 2610B|23-03 10:27:15 
  7. 2319B 2232B|23-03 10:27:16 
  8. 2738B 2508B|23-03 10:27:17 

18. collectl

collectl以一种类似dstat的格式报告系统的统计信息;与dstat一样,它也收集关于系统不同资源(如处理器、内存和网络等)的统计信息。这里给出的一个简单例子显示了如何使用collectl来报告网络使用/带宽。

  1. $ collectl -sn -oT -i0.5 
  2. waiting for 0.5 second sample... 
  3. #         <----------Network----------> 
  4. #Time       KBIn  PktIn  KBOut  PktOut 
  5. 10:32:01      40     58     43      66 
  6. 10:32:01      27     58      3      32 
  7. 10:32:02       3     28      9      44 
  8. 10:32:02       5     42     96      96 
  9. 10:32:03       5     48      3      28 

安装collectl

  1. # Ubuntu/Debian用户 
  2. $ sudo apt-get install collectl 
  3. #Fedora 
  4. $ sudo yum install collectl 

结束语

上述几个使用方便的命令可以迅速检查Linux服务器上的网络带宽使用情况。不过,这些命令需要用户通过SSH登录到远程服务器。另外,基于Web的监控工具也可以用来实现同样的任务。

ntop和darkstat是面向Linux系统的其中两个基本的基于Web的网络监控工具。除此之外还有企业级监控工具,比如nagios,它们提供了一批功能特性,不仅仅可以监控服务器,还能监控整个基础设施。

特别说明:下面的所有服务器为独立物理服务器,不是虚拟的云主机(云服务器、VPS)
租用服务器请自觉遵守服务器所在地的法律法规,国内服务器禁止任何违法违规用途!!!
香港、韩国、日本、美国、台湾、新加坡、菲律宾等境外服务器由机房直供(一手资源,价格最低),我公司只是代购,请自行遵守中国法律和服务器所在地的法规,勿用于违法犯罪用途,做什么用途虽然机房不过问,但是如果您私自做违法用途请自担责任!需要租用服务器请联系QQ16764407或微信18988993510
国内普通防御服务器.png
福建高防服务器租用.png
陕西高防BGP服务器租用.png
下面的香港、韩国、日本、美国、台湾、新加坡、菲律宾等境外服务器由机房直供(物理独立服务器,一手资源,价格最低),我公司只是代购,请自行遵守中国法律和服务器所在地的法规,勿用于违法犯罪用途,做什么用途虽然机房不过问,但是如果您私自做违法用途请自担责任!需要租用服务器请联系QQ16764407或微信18988993510
香港企业型服务器租用.png
香港高防服务器租用.png
韩国普通线路服务器租用.png
韩国KT机房CN2专线.png
韩国LG机房CN2专线.png
日本服务器租用.png
台湾服务器租用.png
新加坡服务器租用.png
菲律宾服务器租用.png
美国CN2高防服务器.png

迅恒运营的IDC数据中心机房介绍
机房名称 机房介绍 是否推荐
广州较场西路机房 中国电信5星级机房,华南骨干出口,广州市中心机房,交通便利,总带宽200G,为华南骨干出口。
广州人民中路机房 中国电信3星级机房,超高速的20Gx2主备双线路带宽直接接入ChinaNET骨干层。
广州天河科技园机房 天河软件园建中路4号,中国互联网应急中心机房,国家政府机关直属。多线接入骨干BGP线路。
电子商务部广州机房 天河软件建业路上(科韵路)的国际电子商务中心大厦甲级写字楼内,机房环境一流。多线接入骨干BGP线路。
广州电信加速器机房 位于广州市萝岗区开源大道1号企业加速器B1栋一楼,按照国际T3+及国标B+级标准建造,机房环境一流。多线接入骨干网。
广州移动旗锐机房 广州科学城南翔二路1号旗锐数字科技园区内,属于第三方私立机房,现由移动运营,从粤西汇聚节点直连CMNET骨干网。
广州移动南方基地机房 中国移动广州南方基地机房位于广州市天河软件园高塘大道333号,用于移动骨干网线路,是移动服务器托管优质机房。
东莞电信道滘机房 中国电信4星级机房,总带宽320G,可提供电信和多线BGP线路,华南骨干机房,稳定高速,性价比高。
东莞电信东城机房 中国电信4星级机房,总带宽320G,性价比高,可提供电信和多线BGP线路和200G集群硬件防火墙VIP防护。
东莞电信樟木头机房 中国电信4星级机房,总带宽320G,可提供电信和多线BGP线路和100G集群硬件防火墙企业级防护。
深圳互联港湾机房 深圳南山高新区中区软件大厦四楼,电信3星级机房,20G带宽接入骨干网络。
深圳南山科兴机房 位于深圳市南山区科技园科苑路15号科兴科学园,3星级机房,可提供双线接入等业务。
深圳百旺信机房 深圳市南山区西丽松白公路百旺信工业区A区(一区)一栋属于第三方机房,可提供双线接入等业务。
佛山电信信息大厦机房 佛山市汾江南路35号电信佛山分公司信息大厦8-9层,是中国电信3星级机房,可提供双线接入等业务。
中山电信火炬机房 机房位于中山市火炬区康乐大道47号电信3楼,是中国电信3星级机房,可提供双线接入等业务。
江苏徐州电信机房 机房位于江苏徐州市新城区镜泊东路4号,徐州市档案馆东侧,是中国电信3星级机房,可提供双线接入等业务。
江苏常州电信机房 机房位于江苏省常州市清凉路108号常州信息港,是中国电信4星级机房,可提供双线接入等业务。
香港TKO机房 机房靠近香港交易所的数据中心位置和香港商业中心,拥有PCCW、GTT、Cogent、Telia、TATA、CT、CN2、CU线路。
香港将军澳机房 机房在香港新界將軍澳工業邨駿昌街22號,与阿里云香港机房同属一栋楼,拥有多种线路接入。
香港新世界机房 香港新世界机房的海底电缆系统遍布全球,能直接连接多个国家,免备案,服务器租用、云服务器等业务。
香港NTT机房 香港NTT电讯机房,是一座专用数据中心,在香港大埔,免备案,提供服务器租用、VPS云服务器等业务。
美国洛杉矶机房 位于美国洛杉矶,直连全球,是全球带宽最集中的地方,是外贸企业首选,该机房只提供服务器租用业务。
美国加州DCS机房 位于美国加州,直连全球,是美国的华人机房,是外贸企业首选,该机房只提供服务器租用业务。
美国圣何塞机房 位于美国圣何塞,紧邻科技中心-硅谷,直连全球,是外贸企业首选,该机房只提供服务器租用业务。
韩国首尔KT机房 韩国首尔的江南区道谷洞数据中心,光纤直连电信(CN2)、移动、PCCW、NTT等网络核心骨干。
台湾中华电信机房 台湾中华电信机房位于台湾台北市114内湖区瑞光路68号3楼,是台湾对外最重要的电信枢纽之一。
菲律宾PLDT机房 菲律宾PLDT机房拥有PCCW、TATA、CT、CN2等线路接入,优化线路到中国大陆速度快,延迟低,网络稳定。
迅恒十多年IT企业和IDC运维经验为您提供优质服务
迅恒专注网站建设10多年,几十人技术团队,品质卓越,服务有保障!
  • 云虚拟主机

    ¥99元/年起 网站空间 原价:199元

  • 独立物理服务器

    ¥488/月起 物理机 原价:699元

  • 网站建设

    ¥580企业建站 原价:1999元起

    迅恒建站·ABOUT US

    迅恒专注于企业建站,海量精美网站风格模板供您选择!

广州网站设计公司哪家好

    建站流程·PROCEDURE

    网络营销推广的第一步就是做一个属于自己的网站

  • 沟通联系

    提出需求,咨询报价
  • 达成协议

    交流达成详细建站协议
  • 支付费用

    支付建站相关费用
  • 建站开发

    根据客户需求,制作网站
  • 验收

    客户验收网站
  • 提交上线

    验收合格,解析域名上线
  • 售后服务

    一对一的售后服务客服
    • 我们的优势·OUR STRENGTHS

      做网站,为什么要选迅恒建站?

  • 技术团队

    专业的设计团队、技术团队,为客户提供专业的技术服务支持

  • 源码交付

    客户查验合格,提供源码交付/FTP信息。网站商业授权,避免产权纠纷

  • 四合一建站多终端展示

    网站能够在CP+平板+手机+小程序 完美响应展示。

  • 无隐形收费

    所有收费项公开透明,正规签订合同,合同清楚明确

  • 高端设计

    提供网站个性化定制设计,拒绝千篇一律

  • 安全稳定

    我司与华为云/腾讯云长期合作,采用安全稳定服务器,保障网站安全稳定运行

  • 迅恒累计为上万网站稳定运行 100000000
    机房接入电信带宽400G、联通带宽200G、移动带宽100G,直连核心骨干网络;
    所有重要网络节点和核心设备均采用华为电信级交换设备,网络总体交换能力高达684G,网络联通率达到99.99%,
    并且多点冗余备份,提高网络性能,避免单点故障。
  • 快速导航
  • 广州迅恒信息科技有限公司:
  • 增值电信业务经营许可证和ICP备案 粤B2-20061054
  • 公司业务咨询电话:
  • 020-82315523
  • 公司企业QQ/商务QQ:
  • 923109991 16764407 20300996
  • 销售经理:18988993510 13533213185
  • 备案咨询和售后服务电话:18988993505
  • 专注广州服务器托管
    请加销售经理微信
    Copyright 2005-2020 迅恒 版权所有   公司地址:广州市天河区中山大道中路77号  广州机房:较长西路21号广州电信超级信息港 香港机房:香港新界葵涌葵丰街钟意恒胜中心  粤公网安备44010602002183