〔摘 要〕MRTG是一款源代碼公開的網絡流量監控軟件,隨著計算機網絡的發展,高校圖書館計算機網絡管理應當具有高效性,網絡的運行管理及維護,在很大程度上都依賴對網絡狀態參數的監測,本文介紹了簡單網絡管理協議和開源軟件MRTG的工作原理和特點,論述了在圖書館網絡中使用MRTG在Windows2003 Server系統上搭建的網絡流量監控系統的實現過程。MRTG可以對圖書館的交換機,路由器、服務器等設備進行流量監控,第一時間發現異常網絡流量,可以有效防范黑客和病毒的攻擊,以保障數字圖書館的安全運轉。
〔關鍵詞〕SNMP;MRTG;網絡流量
DOI:10.3969/j.issn.1008-0821.2010.12.023
〔中圖分類號〕G250.7 〔文獻標識碼〕A 〔文章編號〕1008-0821(2010)12-0084-03
Study on Net Control System of University Library Based on MRTGMa Dong1 Yuan Zhiye2
(1.Library,Jilin Agricultural University,Changchun 130118,China;
2.Songyuan Traffic Rules Fee-collection Administrative Bureau,Songyuan 138000,China)
〔Abstract〕MRTG is a kind of open source code network traffic monitoring software.With the development of internet,network management of university library should be high efficiency.Maintenance and management of network depend a lot on monitoring the parameter.This paper introduced the theory and characteristic of MRTG and analyzed the process of network traffic monitoring system which uses MRTG on the Windows2003 Server platform.MRTG monitors the flow of the switchboard,router and server of library.It could find the abnormal flow of network to avoid the attack of hacker and virus which can protect of the digital library.
〔Keywords〕SNMP;MRTG;network traffic
隨著計算機網絡的發展,高校圖書館爭相向數字化圖書館邁進的過程中,網絡管理優勢日益凸顯。在圖書館計算機網絡中,交換機、路由器、各數據庫服務器等設備的狀態(包括端口流量、CPU利用率等)是網絡管理人員要注意的重點。然而對復雜的網絡連接和逐漸增加的網絡流量。作為網絡管理員需要花費相當多的時間和精力來了解這些網絡設備運行狀況,以維持網絡系統的正常運作,如果出現網絡瓶頸,就需要我們快速做出判斷,第一時間發現異常網絡流量,有效防范黑客和病毒的攻擊。這就需要一個有效率的流量監控系統,來對網絡流量進行有效統計,及時了解網絡的運行狀態,出現異常我們就能夠快速的發現和排除。MRTG是一款在SNMP協議基礎上實現的流量監測的開源軟件,能滿足圖書館網絡流量監控的需要。為廣大師生有一個安全可靠的網絡查詢環境,創造了條件。
1 概 述
1.1 snmp簡介
自從簡單網絡管理協議(SNMP)1990年正式發布第一個版本以來,經過短短幾十年時間的完善和發展,它已經成為目前使用最廣泛的網絡管理標準協議。
最初,SNMP因其簡單性而易于實施,但它最明顯的一個缺點是安全性差。為解決這個問題,互聯網工程任務組(IETF)陸續發布了一些新的RFC,這些后來出現的RFC文檔在SNMP的安全性方面做了很多工作,同時在其他方面也做了一些修訂。1993年,IETF發布了新的SNMP標準,成為SNMPv2,而以前的標準成為SNMPv1。
SNMPv2由下面的RFC文檔組成:
(1)RFC1901基于共同體的SNMPv2介紹;
(2)RFC1902 SNMPv2使用的SMI;
(3)RFC1903 SNMPv2使用的文本約定;
(4)RFC1904 SNMPv2的一致性陳述;
(5)RFC1905 SNMPv2協議操作;
(6)RFC1906 SNMPv2傳輸層映射;
(7)RFC1907 SNMPv2使用的MIB;
(8)RFC1908 SNMPv1與SNMPv2的共存。
SNMP標準在安全性增強的同時也增加了實施的復雜性,而且當時人們對安全性并不十分重視,因此,后來真正被采用的是稱為SNMPv2c的簡化版本,這個版本中并沒有改進SNMPv1的安全性,仍然沿用了SNMPv1中的安全機制。
真正在安全方面得到加強的是1998年發布的版本SNMPv3,這和近年來人們越來越重視網絡安全有很大關系。SNMPv3由下面的RFC文檔組成:
(1)RFC3410第3版互聯網標準網絡管理框架介紹;
(2)RFC3411 SNMP網絡管理框架結構;
(3)RFC3412 SNMP消息處理與分發;
(4)RFC3413 SNMP應用;
(5)RFC3414 SNMPv3基于用戶的安全模式;
(6)RFC3415 SNMPv3基于視圖的訪問控制模式。
SNMP版本是向下兼容的,設備運行的版本是SNMPv3時,它可以處理接收到SNMP任何版本的消息[1]。
1.2 MRTG簡介
MRTG(Multi Router Traffic Grapher)是一個使用非常廣泛的網絡流量統計軟件,它通過SNMP協議得到設備的流量信息,并將流量負載以HTML文檔方式顯示給用戶,其中的流量以png格式的圖形來表示,非常直觀的形式顯示各種網絡接口之間的流量的實時數據。
MRTG能及時繪出網絡流量的統計圖,管理員可以根據統計圖觀察網絡實際的流量。
MRTG具有以下特色[2]:
(1)可靠的接口標識:被監控的設備的接口可以以ip地址、設備描述、snmp對接口的編號及mac地址來標識。
(2)png格式圖形:圖形采用gd庫直接產生png格式。
(3)源碼開放:MRTG是用Perl編寫的,源代碼完全開放。
(4)常量大小的日志文件:MRTG的日志不會因為使用時間而變大,因為使用了獨特的數據合并算法。
(5)高可移植性的SNMP支持:MRTG采用了simon leinen編寫的具有高可移植性的snmp實現模塊,從而不依賴于操作系統的SNMP模塊支持。
(6)支持snmpv2c:MRTG可以讀取SNMPv2c的64位的計數器,從而大大減少了計數器回轉次數。
(7)自動配置功能:mrtg自身有配置工具套件,使得配置過程非常簡單。
(8)可定制性:mrtg產生的web頁面是完全可以定制的。
(9)可移植性:目前可以運行在大多數unix系統和windows NT之上。
2010年12月第30卷第12期基于MRTG軟件的高校圖書館網絡監控系統探究Dec.,20102 MRTG流量監測系統的實現
2.1 配置被監控設備的snmp協議
被監控設備可以是路由器、交換機,防火墻,甚至是一臺安裝了Windows Server 2003的電腦,只要支持SNMP協議,都可以作為被監控的對象。下面就以華為S5500交換機為例來說明:
[s5500]snmp-agent enable /使能snmp服務/
[s5500]snmp-agent community read public /設置讀團體名:public/
[s5500]snmp-agent sys-info version all /配置snmp版本允許為所有版本/
[s5500]snmp-agent trap enable /使能trap/
[s5500]snmp-agent target-host trap address udp-domain 10.0.128.10 udp-port 5000 params securityname public /設置管理機的地址為10.0.128.10,并設置團體名:public/
[s5500]save /保存配置/
2.2 配置管理機
MRTG是用Perl編寫的,它的運行需要Perl的支持,所以在安裝MRTG之前必須下載并安裝Perl語言。由于MRTG的流量監測是基于Web頁面,這里我們還需要在Windows2003 Server上安裝iis。
2.2.1 安裝MRTG
將mrtg壓縮包(mrtg-2.16.4.zip,可以從http:∥www.mrtg.org下載)解壓縮到c盤(盤符可以自選)并將文件夾改名為mrtg。同時建立一個文件夾來存放生成的圖片和網頁文件,如:c:\netmanager。進入cmd命令行,執行以下命令:c:\>cd mrtg\bin,然后執行:C:\mrtg\bin>perl cfgmaker private@10.0.128.5--global″WorkDir:c:\netmanager″--output jifang.cfg,這里的IP地址10.0.128.5是被網管交換機的IP地址,c:\web\netmanager是輸出的HTML文件所存放的路徑,jifang.cfg是生成的配置文件名稱。在C:\mrtg\bin目錄下執行是因為cfgmaker、mrtg、indexmaker文件都在這個目錄里面。
2.2.2 修改配置文件
用記事本打開jifang.cfg文件,在文件的末尾加入如下語句:
RunAsDaemon:yes
Interval:5
language:chinese
RunAsDaemon:yes
RunAsDaemon:yes這個參數是為了讓MRTG全天24小時監控,否則Perl執行MRTG后會自然中止;interval:5表示使MRTG每隔5分鐘采集一次數據,可根據實際情況進行修改;language:chinese的意思是使顯示界面為漢語,否則為英語;另外將#Options[]:growright,bits前面的#符號去掉使得Options頂格。該操作的目的是將時間軸(橫坐標)方向改為向右,縱坐標單位改為bits。默認的時間軸方向向左,默認的縱坐標單位為Bytes[3]。
2.2.3 啟動MRTG
C:\mrtg\bin>perl indexmaker jifang.cfg>c:\netmanager\index.htm
此命令說明:使用IndexMaker生成index.htm文件
C:\mrtg\bin>perl mrtg--logging=jifang.log jifang.cfg
此命令說明:啟動MRTG進行監控。從“jifang.cfg”中讀取配置并啟動MRTG程序,同時記錄日志信息到“jifang.log”中。
完成以上操作后,我們就可以通過iis進行發布,發布主目錄為c:\netmanager,定義一個端口號:例如8089,然后我們就可以通過瀏覽器輸入地址:http:∥10.0.128.10:8089來查看被監控設備的各個端口的流量狀態圖。
3 MRTG網絡流量統計圖實例分析圖1 某校園圖書館電子閱覽室一天的流量圖
從上圖可以看出早上8點開始流量增長,到10點左右流量出現一個峰值,穩定在30M左右,13點流量開始增長,到15點穩定在60M左右,到17點回落到40M左右,17點過后流量又穩步上升,到19點以后逐漸降低,22點降到最低。這正反映了圖書館電子閱覽室上網的情況,早上8點開館,電子閱覽室正常開放,到電子閱覽室上網的人員逐漸增加,中午11點左右部分上機人員下機去吃午飯,流量下降,13點流量又開始上升,17點左右出現一個低點,部分上機人員去吃晚飯,吃完晚飯后,5點左右上機人員逐漸增加,流量又開始上升,出現高峰,到22點電子閱覽室關閉,流量達到最低。
經過長期監控,就會對所在部門的網絡流量形成一個定量的流量數據。通過流量監控就可以及時的發現問題,然后采取相應的措施進行處理。4 結 語
MRTG是一個非常優秀的網絡流量統計軟件,它可以按每日,每周,每月,每年生成流量統計圖,通過長時間的分析,能夠形成定性和定量的網絡流量數據,這對于我們判斷網絡中的異常流量,定位網絡故障提供了幫助。我們通過對交換機、路由器、服務器等設置MRTG,就可以直觀地了解網絡中各個節點的帶寬使用情況,可見MRTG在日常的網絡維護中起著非常重要的作用。
參考文獻
[1]武孟軍.visual c++開發基于snmp的網絡管理軟件(第2版)[M].
[2]孫躍進,王向超.基于MRTG的校園網絡流量監控[J].中國科技信息,2009,(1):79,81.
[3]范義山.基于MRTG的網絡流量監控系統的實現[J].科技信息,2010,(17):616.