在FreeBSD上用mrtg来监控整网流量

from:http://blog.chinaunix.net/u/2986/showart_35060.html 在BSD板块和这个板块经常看到说mrtg的,刚才还看到有人说论坛里面的资料不对,其实不是不对,是有些说的不详细而已,我刚开始作的时候也是费了不少时间的,整理一下,发到这里吧,希望能为后来的兄弟们省下时间:em02: 前 言:我实验的机器是FreeBSD4.10,其他版本的应该也一样,其他unixlike系统估计也是可以的,因为我只用过FreeBSD,不敢肯定。 另外我这篇文章的前提是你的机器上已经安装了apache,并能正常使用,如果没有请参考网上其他文章安装,本文就不再赘述。

一:先介绍如何用mrtg来监控本机的流量 1:安装snmp cd/usr/ports/net-mgmt/p5-SNMP makeinstallclean 当中会叫你填写你的email、操作系统等等,直接回车即可。 可以用以下命令启动snmp,/usr/local/etc/rc.d/snmpd.shstart 2:安装mrtg cd/usr/ports/net-mgmt/mrtg makeinstallclean 3:配置index.cfg文件监控服务器流量 /usr/local/bin/cfgmaker--output=/usr/www/mrtg/index.cfgpublic@192.168.0.1 然后修改index.cfg文件,主要修改以下内容,以符合你的实际情况,此处的192.168.0.1是你要监控的网卡的ip地址。 WorkDir:/usr/www/mrtg Options[_]:growright,bits Language:GB2312 ########################让他5分钟执行一次############## RunAsDaemon:Yes Refresh:300 ######或者可以这样:################################# crontab-e */5****/usr/local/bin/mrtg/usr/www/mrtg/index.cfg 建议使用后面的方法,因为前者用RunAsDaemon的方式并不能使MRTG开机自动运行 ################################################ 下面接着: /usr/local/bin/mrtg/usr/www/mrtg/index.cfg 这个需要运行3次,前两次都会报错,不用去理会他,第3次就应该没有错误了,不过, 若是有问题的话,就需要改index.cfg,再执行直到没有错误发生为止。 制作首页index.html: /usr/local/bin/indexmaker--output=/usr/www/mrtg/index.html/usr/www/mrtg/index.cfg 这样以后就可以通过:http://******/mrtg/index.html看你的代理的流量了,注意此处是以你的apache主目录设置为/usr/www来说的,你可以根据实际情况修改。 二、下面来介绍一下如何监控整网的流量 我们的核心交换是cisco6509,下面的交换机是cisco3524,我们没有其他交换机,所以下面我说的命令是针对cisco的,其他的可参考手册自己作相应的修改。 在6509的二层上设置: setsnmprmonenable setsnmpcommunityread-onlymrtg 在FreeBSD机器上: /usr/local/bin/cfgmaker--output=/usr/www/mrtg/6509.cfgmrtg@10.0.0.1 然后修改6509.cfg文件,主要修改以下内容,以符合你的实际情况,此处的10.0.0.1是6509的ip地址。 ee/usr/www/mrtg/6509.cfg WorkDir:/usr/www/mrtg Options[_]:growright,bits Language:Chinese /usr/local/bin/mrtg/usr/www/mrtg/6509.cfg 这个需要运行3次,前两次都会报错,不用去理会他,第3次就应该没有错误了,不过, 若是有问题的话,就需要改6509.cfg,再执行直到没有错误发生为止。 制作首页index.html: /usr/local/bin/indexmaker--output=/usr/www/mrtg/6509.html/usr/www/mrtg/6509.cfg 让它每隔5分钟运行一下: crontab-e */5****/usr/local/bin/mrtg/usr/www/mrtg/6509.cfg 三、监控下面交换机的流量 方法类似6509,只是命令有点不同: snmp-servercommunitymrtgro,其他的照抄改一下文件的名字就行了。 FAQ: ################Q1############################ Q1:我在英文下 MaxIn:935.6kb/s(0.9%) MaxOut:5306.4kb/s(5.3%) 可是在中文下只显示 最大流入:935.6$1$2/秒(0.9%) 最大流出:5306.4$1$2/秒(5.3%) 这是怎么回事? A1:编辑/usr/local/lib/perl5/site_perl/5.8.5/locales_mrtg.pm 查找到subgb2312的下面 原来是这样的: 代码: '([kMG]?)([bB])/s'=>'$1$2/秒', '([kMG]?)([bB])/min'=>'$1$2/分', '([kMG]?)([bB])/h'=>'$1$2/时', 改成这样: 代码: '([kMG]?)([bB])/s'=>'$1$2/秒', '([kMG]?)([bB])/min'=>'$1$2/分', '([kMG]?)([bB])/h'=>'$1$2/时', A2:修改你的mrtg.cfg文件。把语言一项改成:Chinese 也就是: Language:Chinese ########################################## #######################Q2################## Q2:我运行了/usr/local/bin/cfgmaker--output=/usr/mrtg/6509.cfgmrtg@10.0.0.1 以后生成了四十多个TrafficAnalysisfor1--6509等等,我们的6509上是加了个48口的板子, 总共应该有五十多个,现在只有四十多个是不是因为我在执行这个命令的时候只有这四十多个机 器是开着的?以后他们再开的时候会不会被监控到?会自动给我生成TrafficAnalysisfor1--6509 这样的表吗? A:没有处于connected的端口是不能被cfgmaker抓取的。要想实现不开机流量为0,开机以后就开始监控流量, 需要自己手动更改cfg文件,把所有未使用端口的注释去掉,注意空格和空行,一定要和cfgmaker生成的一致, 否则是抓不到的,然后再执行/usr/local/bin/mrtg/usr/www/mrtg/6509.cfg即可。####################################################### ####################Q3################################ Q3:在这个机器上我只监控全部交换机上的流量,并不监控本身的流量,因为它也在6509上接着, 是不是就不需要运行snmpd了? A:是交换机上的SNMP模组在做服务,与你的主机没关系,你的主机自然也就不用运行SNMPD了, 但在交换机中抓到的你的这台主机的流量是反的,(即流入和流出是相反的,这个是显然的了) #########################################################

下面是另一篇

来自:http://blog.gslin.org/archives/2007/08/19/1275/

自從 bsnmpd 進 base 後,在 FreeBSD 上要做流量統計所需要做的事情愈來愈簡單了。

首先是修改 /etc/rc.conf,開機時會自動跑 bsnmpd:

bsnmpd_enable="YES"

第一次啟動時可以手動跑:

# /etc/rc.d/bsnmpd start

然後裝 net-mgmt/mrtg

# cd /usr/ports/net-mgmt/mrtg # make install clean

裝完後跑 cfgmaker 產生檔案:

# cfgmaker public@127.0.0.1 > mrtg.cfg

然後修改 mrtg.cfg 內的 WorkDir,最後產生 index.html:

# indexmaker mrtg.cfg > index.html

然後將 mrtg 指令放到 crontab 裡跑就可以了。

注意此处:bsnmpd 預設只會聽 127.0.0.1。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值