新闻中心

在FREEBSD 5中使用MRTG画出Packet图表

 
一、安装MRTG绘图软件
cd /usr/ports/net/net-mrtg
make install

即可安装成功!

二、配置Packet-MRTG
我计划把配置文件放到/usr/local/etc目录里面。
vi /usr/local/etc/packet-mrtg.cfg

这文件里面的内容如下:
Target[packet]:ifInUcastPkts.1&ifOutUcastPkts.1:public@www.onlinecq.com
WorkDir: /home/onlinecq.com/mrtg/
MaxBytes[packet]: 100000000
Options[packet]:growright,bits
Title[packet]: IP Packet Count MRTG
PageTop[packet]: IP Packet Count MRTG – OnlineCQ.com
#Language:gb2312
YLegend[packet]: IP Packet Count
Colours[packet]: Packet IN#FF6600,Packet OUT#006600,DARK GREEN#006600,VIOLET#FF00FF

说明一下:Target 是数据的抓取的方式 如同MRTG测流量时的public@community一样,这里是关键,因为是要用MRTG画封包数量图形时,要先用它统计封包的数量,所以用的是
ifInUcastPkts.n&ifOutUcastPkts.n:community@host.domain
其中n表示您的网络适配卡,如果你有多张网络卡,请注意不要观测错了哦,要不然是没有数据出来的。(通常应该是1,但如果你有多张,可能就是2,3,4…啦)
public是snmp默认的公共字符串,当然你可以在snmp里面更改它的设置的。
host.domain是你的主机名字,也可以使用IP,在这里我的就是www.onlinecq.com的。
个人想法:大家可以试一下,用它来监测其它主机的封包情况会是怎么样子?^_^

MaxBytes: 制绘图的最大封包值
Title: HTML 网页的title 语法
PageTop: 在显示画面的"标题"
Options: 采用标准格式,并且让MRTG由右往左绘图
YLegend: 图表的Y轴名称
ShotLegend: 图表Y 轴的单位
WorkDir: 工作目录 也就是网页中显示图表的路径,一般是可以通过浏览器访问的
Language: 英文 (我喜欢使用英文的,如果你要使用简体中文,麻烦你改为gb2312,否则注释掉即可)
Colours:颜色

三、执行&查看图形
现在我们试着运行一下,看能否生成封包流量图:
mrtg /usr/local/etc/packet-mrtg.cfg

因为首次运行时,系统没有MRTG需要的某些旧图形档案,可能会有报错的,请多执行2-5次即可。
这时候在前面的packet-mrtg.cfg文件设置的WorkDir目录里面/home/onlinecq.com/mrtg,将会产生一些png图形文件和一个.html的文件,我们可以通过网页访问它:
http://网站名字/mrtg/packet-mrtg.html

如果可以正常看到Packet封包流量图,那就说明你前面设置一切正常了,恭喜你!

四、排程自动执行
一般来说,每5分钟执行一次即可,时间太短反而会加重系统的负载的。
crontab -e 来增加排程事件
*/5 * * * * mrtg /usr/local/etc/packet-mrtg.cfg

五、结束语
至此为止,可以投入正式使用的MRTG封包流量图就建立起来了,您可以reboot一下,让最新的设置及软件生效。 
如果在安装过程中出现错误,您可以先检查完错误,再接着安装下去。或者你可以选择你感兴趣的某些部份安装! 
当然因为时间仓促,并且涉及到的知识太广,加上本人能力有限,其中错误在所难免,恳请各位朋友提出来,大家共同提高,共同进步! 

香港云主机