已有很多文章介绍了Windows操作系统中对带宽的监测方法,本文讨论在Linux中对网络带宽的监测问题。
因为各种各样的原因,了解网络的带宽利用情况是一件好事情,特别是对带宽的记录成为必需时(如在根据带宽的利用数量来支付互联网服务时)更是极其重要的。
Linux中一个强大的监测工具是vnStat,大家可从http://humdi.net/vnstat/下载得到这个程序。一些Linux发行版本可能会捆绑vnStat,不过用户***根据源程序自己编译一下这个软件。
在下载vnStat之后,对程序包进行如下处理:
复制 以下是引用片段:
复制 $ curl -O http://humdi.net/vnstat/vnstat-1.4.tar.gz
复制 $ tar xvzf vnstat-1.4
复制 $ cd vnstat-1.4
复制 $ make
复制 $ sudo make install
|
注意***一行,如果用户在一个64位平台上编译,应改用make 64bit命令。
下一步要创建一个计时程序用以每隔5分钟就执行vnStat来收集带宽利用数据。例如,用如下内容创建/etc/cron.d/vnstat:
复制 以下是引用片段:
复制 0-55/5 * * * * if [ -x /usr/local/bin/vnstat ] && [ `ls
复制 /var/lib/vnstat/ | wc -l` -ge 1 ];
复制 then /usr/local/bin/vnstat -u; fi
|
在这里我们假定,vnStat安装在/usr/local,并假定/etc/cron.d是用于系统运行计时程序的位置。(这是多数Linux发行版本的默认位置)。
接下来,请为用户想要跟踪的每一个端口初始化数据库:
复制 以下是引用片段:
复制 # /usr/local/bin/vnstat -u -i eth0
复制 # /usr/local/bin/vnstat -u -i eth1
|
一旦这项工作完成之后,计时程序就会接管剩余的工作。用户只需等着计时程序执行几次之后,查看数据的利用情况:
复制 以下是引用片段:
复制 # vnstat -i eth1 --short
复制 rx / tx / total / estimated
复制 eth1:
复制 yesterday 82.15 MB / 809.36 MB / 891.52 MB
复制 today 83.20 MB / 704.07 MB / 787.28 MB / 907 MB
|
不过,现在已有一个PHP front-end可以使用了,它配置起来相当容易,它允许用户用web图形方式查看数据,用户可以从vnStat的Web站点下载。而且有多种选项可供选择,用户可以依靠这个软件查看当天和当月的通信数据。但愿这个软件能对您管理网络有所帮助。
【编辑推荐】