windows下MRTG安裝全攻略

clown_發表於2016-09-29

在一個網路中,作為網路工程師或者網路管理員,需要隨時瞭解網路的各種狀態,以判斷網路是否處於健康狀態或者隨時瞭解網路的流量、每個路由器的流量、每個交換機埠的流量…,以供年度報告時向上級領導提供詳實的資料及圖形報告。在這裡,我先把自己有關如何獲取網路流量的方法向大家講解一下,如果有必要,您可以立即動手,自己做一個公司的網路流量監控圖出來。網路流量的監控需要涉及到SNMP、PERL、MRTG和一點網頁的相關知識,現在我就 STEP BY STEP給大家講解怎麼具體實施。我的水平有限,如有錯誤或者更好的解決辦法,還懇請大家提出,謝謝!
注:文中有部份資料從Internet網路收集。


目錄
在WINDOWS下安裝MRTG全攻略--網路流量監控 1
代序 1
目錄 1
SNMP簡介 2
MRTG簡介 4
STEP BY STEP教您安裝PERL 7
STEP BY STEP教您設定SNMP 11
STEP BY STEP教您安裝MRTG 14
把流量圖加入您的網站 19

SNMP簡介
一個網路管理系統一般要包含以下幾個元素:①若干個(可能很多個)需要被管理的網路設 備節點,如 路由器、伺服器等裝置,每個節點上都執行著一個稱為裝置代理(agent)的應 用程式,其實現對被管理設 備的各種被管理物件的資訊如流量等的蒐集和對這些被管物件 的訪問的支援;②至少一個管理工作站,該 管理站執行著管理平臺應用系統,實現為管理 員提供對被管裝置的視覺化的圖形介面,從而使管理員可以 方便的進行管理;③一個管理 協議,用來定義裝置代理和管理工作站之間管理資訊傳送的規程。其中管理 協議的操作是 在管理框架下進行的,管理框架定義了和安全相關的認證,授權,訪問控制和加密策略等各 種安全防護框架。
在執行TCP/IP協議的網際網路環境中,管理協議標準是簡單網路管理協議(Simple Network Management Protocol,SNMP),其定義了傳送管理資訊的協議訊息格式及管理站和裝置代 理相互之間進行訊息傳送的規 程。
出於業界對網路管理協議標準化的迫切要求的驅動,IETF於1990釋出了SNMPv1的正式RFC 文件;其設 計思想重點放在保證協議的簡單性、靈活性和可擴充套件性上,並希望把SNMP作為 一個過渡性的網管協議來作 為實現對互連的網路裝置進行管理時遵循的標準,待OSI的網 絡管理協議—CMIP的開發、實現和標準化成 熟和完善到可以在業界推廣之後,再用CMIP來 替換SNMP。但是由於各種的原因,CMIP並沒有替代SNMP,而 SNMP發展為業界的標準。
SNMP一共發展有3個主版本,分別為SNMPv1 ,SNMPv2和SNMPv3。其中SNMPv2又分為若干個 子版本,其中 SNMPv2c應用最為廣泛:
SNMPv1: 是第一個正式協議版本,在RFC1155-RFC1158中定義,該版本採用了基於共同體 名的安全機制;
SNMPv2c: 這個版本被稱為基於共同體名的SNMPv2,使用基於共同體名的安全機制和 SNMPv2p做出的協議操 作方面的擴充,由RFC1901-RFC1906定義;
SNMPv3: 該協議版本採用基於使用者的安全機制,其安全機制是在SNMPv2u和SNMPv2*基礎上 進行大量的評議 以後進行了更新,並且對協議機的邏輯功能模組的進行了劃分而保證了良 好的可擴充性,由RFC2271- RFC2275所定義。
執行SNMP管理系統的原理及SNMP協議
使用SNMP協議的網路管理系統管理結構工作一般包括:管理程式透過定時向各個裝置的設 備代理程式 傳送查詢請求訊息(以輪詢方式),來跟蹤各個裝置的狀態;而當裝置出現異常 事件如裝置冷啟動等時,設 備代理程式主動向管理程式傳送陷阱訊息,彙報出現的異常事 件。這些輪詢訊息和陷阱訊息的傳送和接受 規程及其格式定義都是由SNMP協議定義的;而 被管理裝置將其各種管理物件的資訊都存放在一個稱為管理 資訊庫(Management Information Base)庫結構中。
其中SNMP協議是執行在UDP協議之上,它利用的是UDP協議的161/162埠。其中161埠被 裝置代理監 聽,等待接受管理者程式傳送的管理資訊查詢請求訊息;162埠由管理者進 程監聽等待裝置代理程式發 送的異常事件報告陷阱訊息,如Trap。
裝置的所有的需要被管理的資訊被看作一個各種被管理物件的集合,這些被管理物件由 OSI定義在一 個被稱作管理資訊庫(Management Information Base,MIB)的虛擬的資訊庫 中。
管理物件庫MIB
MIB 是一個按照層次結構組織的樹狀結構(定義方式類似於域名系統),管理物件為定義 為樹中的相 應葉子節點。管理物件是按照模組的形式組織,每個物件的父節點表示該種對 象屬於上層的哪一個模組。 而且OSI為樹中每一層的每個節點定義唯一的一個數字標識, 每層中的該數字標識從1開始遞增,這樣樹中 的每個節點都可以用從根開始到目的節點的 相應的標識對應的一連串的數字來表示,如1.3.6.1.2.1.1表 示了MIBII中系統組子樹,而 1.3.6.1.2.1.1.1.0表示系統組中的系統描述(sytem Descrption)物件。每個 物件的一連 串數字表示被稱為物件識別符號(Object Indentifier,OID)。
相關的一組物件的集合被定義為一個MIB模組。這些模組使用OSI的抽象語法標記 (Abstract Syntax Notation One,ASN.1)的一個子集寫成。該子集被定義為管理資訊結 構(Management Information,SMI)。
SNMP的訊息在傳送和傳輸時訊息是採用基本編碼規則(BER)對訊息進行編碼。
SNMP基本的標準MIB庫是MIBII,具體請參考RFC 1213。
SNMP協議操作
SNMP提供有三類操作,分別為Get,Set和Trap。
Get操作實現對被管理物件所表示的管理資訊的讀操作。在SNMPv1中,GET操作具體一共有 兩種形式
Get 和GetNext操作: Get操作指示直接讀取操作引數指定的OID所表示的被管理物件的管 理資訊 值。GetNext操作指示讀取操作引數指定的OID所表示的被管理物件在MIB樹中按照 字典順序的下一個被管 理物件的管理資訊的值。在SNMPv2中,增加了一種GetBulk操作, 其是Get和GetNext的綜合,是為了提高 對被管理資訊的訪問的效率而增加的。
Set操作實現對被管理物件的管理資訊進行寫操作,其實現直接對操作引數指定的OID所表 示的被管理 物件對應的管理資訊的值的設定。
前面幾種訊息是由管理工作站主動實現對被管理裝置進行輪詢訪問時發出以得到被管理設 備的各種信 息;而在被管理裝置出現異常事件需要及時向管理工作站報告時,就需要Trap 操作,該操作實現被管理設 備向管理工作站報告裝置上出現的異常事件,如網路介面出現 故障或恢復工作,裝置重新啟動等資訊。另 外在SNMPv2中新增加了一種Inform操作來實現 管理站與管理站之間的通訊
其中上述操作的訊息都可以在操作引數中一次指定一個或多個管理物件OID資訊,也就是 說一個訊息 一次可以實現對多個被管理物件的操作。
SNMPv1和SNMPv2c採用了一種簡單的基於共同體名的安全機制:
管理站和被管裝置上都儲存有該充當密碼作用的共同體名;訊息傳送者(一般是管理者)在 要傳送的消 息中的共同體名欄位中填入對應於接收者的共同體名,然後以明文方式在網路 上傳送訊息,接收方(被管 理裝置)接收到訊息以後,如果訊息格式是正確的,則讀取該字 段,與自身儲存的共同體名相比較,來實 現對傳送訊息者的認證。在一些實現中,對應於 每個共同體名還有一個機器地址列表,來表示只有地址在 這個列表中的機器使用該共同體 名傳送的訊息才認為是可信的。這裡的共同體名就擔任密碼的作用。同時 對應於每個共同 體名都有一個訪問控制許可權,可能值為讀或讀寫。只有請求的操作和使用的共同體名的權 限一致才允許進行。
詳細情況請參考RFC 1157、RFC 1902、RFC 2273、RFC 2274。

MRTG簡介
mrtg具有以下特色:
可移植性:目前可以執行在大多數Unix系統和Windows NT之上。
原始碼開放:Mrtg是用perl編寫的,原始碼完全開放。
高可移植性的SNMP支援:Mrtg採用了Simon Leinen編寫的具有高可移植性的SNMP實現模 塊,從而不依賴於 作業系統的SNMP模組支援。
支援SNMPv2c:MRTG可以讀取SNMPv2c的64位的記數器,從而大大減少了記數器迴轉次數。
可靠的介面標識:被監控的裝置的介面可以以IP地址、裝置描述、SNMP對介面的編號及 Mac地址來標識。
常量大小的日誌檔案:MRTG的日誌不會變大,因為這裡使用了獨特的資料合併演算法。
自動配置功能:MRTG自身有配置工具套件,使得配置過程非常簡單。
效能:時間敏感的部分使用C程式碼編寫,因此具有很好的效能。
PNG格式圖形:圖形採用GD庫直接產生PNG格式。
可定製性:MRTG產生的web頁面是完全可以定製的。
mrtg的主頁是http://www.mrtg.org,可以從這裡下載軟體。
Mrtg相容性
mrtg軟體可以執行在以下的作業系統上:
Linux 1.2.x, 2.0.x, 2.2.x, 2.4.x (Intel and Alpha and Sparc and PowerPC)
Linux MIPS, Linux S/390
SunOS 4.1.3
Solaris 2.4, 2.5, 2.5.1, 2.6, 7, 8
AIX 4.1.4, 4.2.0.0, 4.3.2
HPUX 9,10,11
WindowsNT 3.51, 4.0, 2k, XP
IRIX 5.3, 6.2
BSDI BSD/OS 2.1, 4.x, 3.1
NetBSD 1.5.x
FreeBSD 2.1.x, 2.2.x, 3.1, 3.4, 4.x
OpenBSD 2.x
Digital Unix 4.0
SCO Open Server 5.0
Reliant UNIX
NeXTStep 3.3
OpenStep 4.2
Mac OS X 10.1
And about and other sensible Unix
可以透過mrtg監控的裝置(目前市場上絕大多數產品都支援SNMP協議,只要支援SNMP協議的裝置就都可以 使用MRTG來監控):
3Com NETBuilders, LANplex 6012 and 2500
3Com etherswitches and hubs
3Com Linkswitch 1000 1100 3300
3Com Superstack II switch 3900, 3300 MX
3Com 812 ADSL Router
Alantec powerhub 7000
Allied Telesyn - 8224XL and 8324XL 24 port managed switches
Annex terminal server
Asante Hub
Ascend (Lucent) Max 600, [24]00x, Pipeline 50, TNT, APX-8000, MAX-6000
Alcatel (Assured Access) x1600, OmniSR9, OmniCore 5022
AT&T Wave Point, Lan
BayNetworks (Wellfleet) 7.80 and up, BayStack 350T, Instant Internet, see Nortel
BreezeCom AP,SA
Cabletron ESX-820 Etherswitch, Smartswitch 2000,6000 and router
Centillion Token Ring SpeedSwtich 100 (IBM 8251 Token Ring Switch)
About every Cisco Kit there is ...
CentreCOM 8116
Compatible Systems
DECBridge 620, DEC 900EF, 900EE, Gigaswitch
ELSA Lancom L 11 (Wireless Router)
Enterasys Matrix E5, VH-4802 and VH-2402S Switche
Ericsson Tirgis Series RAS Servers
Extreme Networks -- Blackdiamond 6808 & Alpine 3808 Layer 3 Switches
Fore ASX200 ATM
FlowPoint 2200 ATM/DSL Router
formula 8200 series
Foundry BigIron 8000 Gigabit, FastIron Switch, ServerIron Switch
Cable Modems from Lancity, Terayon and DOCSIS
HP - network interfaces, disks, database Informix
HP AdvanceStack/Procurve Switch 2000 and 2524, AdvanceStack Switch 200
HP Procurve Switches , model 4000m, 2424m and 2400m
IBM 8260 swtich (with 155MB ATM blades installed), IBM 2210 ISDN Routers.
Intel switches (details) -- 510T, Intel Gigabit Server adapter
IMV Victron NetPro 3000 UPS
Kentrox Pacesetter Pro
Lantronix Bridge
Lucent/Xedia Access PointT 450, 1000
Livingston (Lucent) IRX 3.2.1R, IRX 114, PM2E(R) PM3-2E OR-U
Motorola 6560 Regional Node, SB3100 CableModem, 320, 6430 and 6455 routers
Morningstar terminal servers/routers
MGE (Merlin Gerin) UPSes (details)
Network Appliance
Netopia R7100C SDSL
Netscreen 5 / 10 / 100
Nortel Networks, Bay Routers BCN, BLN, ASN, ARN, AN, Passport 1k and Passport 8k3 series L3 switches, BayStack 450 L2 switches.
Nortel Networks, Accelar L3 Switches
Nokia IP 330/440/650
Nbase ethernet switch
Novell 3.11, 4.11
Rmon probes
SGI-Server (Irix 5.3)
Any server server running HP-UX, Ultrix, Solaris, SunOS, OSF, NetBSD, FreeBSD, BSDi, Linux, AIX, OpenBSD, Irix or even Windows operating systems (badly), when using NET-SNMP (former UCD-SNMP).
Apple Mac (An snmp service is included on the OS CD >= 8.5 )
Shiva Accesport
Solaris Server
Squid Web cache
US-Robotics Total Control Modemracks
Wellfleet (later Bay Networks): see Nortel routers
WaveWireless SpeedLan 8x00 RF Routers
WinNT, MS Proxy
Xylan (today Alcatel) 4024C 24port 10/100 OmniStack Switch, 9k devices, including ATM links.
Yamaha rt100i
Zyxel Prestige P310, 153X, 642.
不支援mrtg的裝置:
D-Link switches (details)

STEP BY STEP教您安裝PERL
Perl的安裝比較簡單了,目前使用的一般是Active Perl for windows,現在最新的版本是5.8.0,它需要使用者先安裝IIS或者APACHE等常用的WEB伺服器平臺。在這裡,我就以最常用的IIS作為安裝的示例,如果大家需要在APACHE平臺裡面安裝PERL,結果會稍有些不同.
Perl 適用於五花八門的各種作業平臺, 包括所有已知的 UNIX/Linux
及微軟的作業系統, 以及足夠支援 POSIX 的下列平臺: BeOS, Cygwin, Netware,MPE/iX, OS/2, QNX, VMS, VOS, 以及 z/OS. 麥金塔 MacOS Classic 的使用者也可以在http://dev.macperl.org/ 下載專屬的移植版本.
在本例子中,我們以ActivePerl-5.6.1作為安裝示例教大家怎麼安裝,Perl For WINDOWS 版本是msi的安裝包,一般的情況如ActivePerl-5.6.1.633-MSWin32-x86.msi ,大家可以去http://downloads.activestate.com/ActivePerl/Windows/5.8 /ActivePerl-5.8.0.805-MSWin32-x86.msi 下載最新版本的ActivePerl。

安裝Perl的過程很簡單的,但還是要講解一下:
我現在的環境是WINDOWS 2000 SERVER 英文版+PACK3 ,IIS5.0平臺。
1、 開啟Perl的安裝檔案 ,點下一步,


2、 沒得選擇,只有同意協議才能下一步。

3、 在這裡千萬要注意了,系統預設是安裝在 Perl 目錄裡面,但為了我們以後使用程式的方便,一定要記得修改為 usr 目錄,磁碟機代號一般應和web的根目錄所在的盤一致,結果如下:

4、 下一個畫面會讓您確認是否使用[PPM3傳送個人資訊至ASPN],還是省著點兒,不要選它,直接按下一步。
5、 這裡可以全部選擇上,下一步。

6、 提示準備好了開始安裝了,下一步。
7、 開始安裝

8、 硬碟一陣狂響之後,系統就安裝成功了!大概在等幾分鐘吧
9、 安裝Perl 到此結束,是不是超級簡單。

Perl安裝好之後,您可以開啟 [Internet Information Services]->[Default WebSite]->[Properties]->[Home Directory]->[Configuration]看到如下的畫面

看到其中有pl,plx,就表示安裝成功了,其他.cgi的是我自己手工加上去的,方法是點選其他的[Add…]

在出現的對話方塊中輸入如圖所示的字串即可。


然後我們可以測試一下安裝的結果,一般使用所謂的CGI探針,可以在網上找到。出現如上圖所示的內容,就表示我們的PERL安裝配置成功,可以進入下一步學習了。


STEP BY STEP教您設定SNMP
我們將PERL安裝好後,要先設定一下您需要監控流量的裝置,它可能是路由器、交換機…甚至於一臺安裝了WIN2K的電腦。只要其支援SNMP的traps,都可以使用來作用被監控的物件。我在這裡面以一臺CISCO2950交換機和華為2600路由器為例給大家介紹,因為涉及到iOS版本和其他不確定因素,在實際操作中,希望大家靈活運用。當然,下面的例子是我親手除錯透過的,您只需要改變一下相關名稱,就可以正常使用了。
為了方便大家閱讀,我簡單的解釋一下:在設定community 字串時,不要使用預設的public,因為它無容易被某些駭客監聽,或者出現安全漏洞,可以選擇自己認為有意義的字串;host是接收traps的主機IP名字,可以根據您的實際需要調整。

以下命令在CISCO 2950環境裡面除錯透過:

C:telnet 您的交換機的IP

User Access Verification

Password:
TNKSW>en
Password:
TNKSW# conf t
TNKSW(config)# nmp-server community chinatnk RO
TNKSW(config)# snmp-server trap-source FastEthernet0/1
TNKSW(config)# snmp-server contact cqfanli@163.com
TNKSW(config)# snmp-server host 192.168.0.6 chinatnk
TNKSW(config)# snmp-server enable traps
TNKSW# sh run
TNKSW# wr
(以下為部份摘錄show run命令)
……

……

可以看到,到此我們的交換機的SNMP已經正常工作了,當然,最重要的是別忘了儲存呀,要不然就前功盡棄了,呵呵…

再看看華為2600路由器的配置,其實也差不多的,不過華為的產品好象幾個命令的CISCO有些不一樣,^_^

C:telnet 您的交換機的IP
User Access Verification

Password:
qjrouter> en
Password:
qjrouter# conf (華為產品不帶terminal引數,*_*)
qjrouter(config)#snmp-server ?
community Enable SNMP ; set community string
contact Text for mib object sysContact
enable Enable SNMP Traps
host Specify hosts to receive SNMP TRAPs
location Text for mib object sysLocation
trap-authentication Send TRAP on receipt of incorrect community string

qjrouter(config)#snmp-server enable traps
qjrouter(config)#snmp-server contact cqfanli@163.com
qjrouter(config)#snmp-server location chinatnk
qjrouter(config)#snmp-server community ?
ro Read-only access with this community string
rw Read-Write access with this community string

qjrouter(config)#snmp-server community ro chinatnk
qjrouter(config)#
qjrouter#wr
qjrouter#sh ru
(以下為部份摘錄show run命令)
……
……
友情提示:一定要儲存,不要忘記了,^_^


STEP BY STEP教您安裝MRTG

我們首先要從Internet上面下載最新的MRTG回來,MRTG的官方網址是:http://people.ee.ethz.ch /~oetiker/webtools/mrtg/ MRTG的中國鏡象網址是:http://mrtg.openunion.org/ MRTG的下載網址是:http://people.ee.ethz.ch/~oetiker/webtools/mrtg/pub/ ,現在最新的版本是:mrtg-2.9.27.zip 如果您使用的是LINUX或者UNIX系統,可以直接下載mrtg-2.9.27.tar.gz 。軟體下載回來後,我們要先將其解壓。由於MRTG是一個PERL寫的程式,不需要安裝,稍後有些安裝過程需要在DOS裡面完成,所以建議解壓的路徑為 C:MRTG。
下面給出詳細的安裝步驟:
1、 執行cmd,進入DOS狀態;
2、 c:>cdmrtgbin 進入剛才解壓的MRTG目錄,準備執行命令;
3、 使用perl mrtg 命令測試MRTG是否正確;
4、 執行命令列perl cfgmaker chinatnk@192.168.0.254 --global "WorkDir: c:wwwmrtg" --output mrtg.cfg
這一行命令我要解釋一下:
chinatnk@192.168.0.254 使用的是您需要獲得SNMP資料的裝置的community 和它的IP地址;
WorkDir: c:wwwmrtg 使用的是正確安裝MRTG後,需要使用到的WEB目錄,要根據實際情況更改;
output mrtg.cfg 則是輸出後的配置檔名稱;

改好了之後按一下回車,系統就開始執行配置了。由於我是先使用的是交換機來作為的SNMP源,上面命令執行後,它會繫結24個埠,有一些資訊顯示出來,而路由器上沒有那麼多需要繫結的埠,所以資訊量會稍微少一些。

此一步驟正常執行完後,系統將在MRTG的目錄下生成指定的mrtg.cfg檔案,我們下一步要做的就是修改MRTG檔案,使之符合我們的要求。
有的裝置不支援SNMP協議,在這裡將會出現錯誤的提示資訊,請各位朋友注意一下。
注意,如果您是需要同時監控多個裝置的流量,則需要修改output 引數後面的配置檔名,此例中是mrtg.cfg。

詳細資料如下:

C:mrtgbin>perl cfgmaker chinatnk@192.168.0.4 --global "WorkDir: e:webrootmrt
g" --output mrtg4.cfg
--base: Get Device Info on chinatnk@192.168.0.4:
--base: Vendor Id: cisco
--base: Populating confcache
--snpo: confcache chinatnk@192.168.0.4: Name Fa0/1 --> 1
--snpo: confcache chinatnk@192.168.0.4: Name Fa0/2 --> 2
--snpo: confcache chinatnk@192.168.0.4: Name Fa0/3 --> 3
--snpo: confcache chinatnk@192.168.0.4: Name Fa0/4 --> 4
--snpo: confcache chinatnk@192.168.0.4: Name Fa0/5 --> 5
--snpo: confcache chinatnk@192.168.0.4: Name Fa0/6 --> 6
--snpo: confcache chinatnk@192.168.0.4: Name Fa0/7 --> 7
--snpo: confcache chinatnk@192.168.0.4: Name Fa0/8 --> 8
--snpo: confcache chinatnk@192.168.0.4: Name Fa0/9 --> 9
--snpo: confcache chinatnk@192.168.0.4: Name Fa0/10 --> 10
--snpo: confcache chinatnk@192.168.0.4: Name Fa0/11 --> 11
--snpo: confcache chinatnk@192.168.0.4: Name Fa0/12 --> 12
--snpo: confcache chinatnk@192.168.0.4: Name Fa0/13 --> 13
--snpo: confcache chinatnk@192.168.0.4: Name Fa0/14 --> 14
--snpo: confcache chinatnk@192.168.0.4: Name Fa0/15 --> 15
--snpo: confcache chinatnk@192.168.0.4: Name Fa0/16 --> 16
--snpo: confcache chinatnk@192.168.0.4: Name Fa0/17 --> 17
--snpo: confcache chinatnk@192.168.0.4: Name Fa0/18 --> 18
--snpo: confcache chinatnk@192.168.0.4: Name Fa0/19 --> 19
--snpo: confcache chinatnk@192.168.0.4: Name Fa0/20 --> 20
--snpo: confcache chinatnk@192.168.0.4: Name Fa0/21 --> 21
--snpo: confcache chinatnk@192.168.0.4: Name Fa0/22 --> 22
--snpo: confcache chinatnk@192.168.0.4: Name Fa0/23 --> 23
--snpo: confcache chinatnk@192.168.0.4: Name Fa0/24 --> 24
--snpo: confcache chinatnk@192.168.0.4: Name Nu0 --> 25
--snpo: confcache chinatnk@192.168.0.4: Name Vl1 --> 26
--snpo: confcache chinatnk@192.168.0.4: Descr FastEthernet0/1 --> 1
--snpo: confcache chinatnk@192.168.0.4: Descr FastEthernet0/2 --> 2
--snpo: confcache chinatnk@192.168.0.4: Descr FastEthernet0/3 --> 3
--snpo: confcache chinatnk@192.168.0.4: Descr FastEthernet0/4 --> 4
--snpo: confcache chinatnk@192.168.0.4: Descr FastEthernet0/5 --> 5
--snpo: confcache chinatnk@192.168.0.4: Descr FastEthernet0/6 --> 6
--snpo: confcache chinatnk@192.168.0.4: Descr FastEthernet0/7 --> 7
--snpo: confcache chinatnk@192.168.0.4: Descr FastEthernet0/8 --> 8
--snpo: confcache chinatnk@192.168.0.4: Descr FastEthernet0/9 --> 9
--snpo: confcache chinatnk@192.168.0.4: Descr FastEthernet0/10 --> 10
--snpo: confcache chinatnk@192.168.0.4: Descr FastEthernet0/11 --> 11
--snpo: confcache chinatnk@192.168.0.4: Descr FastEthernet0/12 --> 12
--snpo: confcache chinatnk@192.168.0.4: Descr FastEthernet0/13 --> 13
--snpo: confcache chinatnk@192.168.0.4: Descr FastEthernet0/14 --> 14
--snpo: confcache chinatnk@192.168.0.4: Descr FastEthernet0/15 --> 15
--snpo: confcache chinatnk@192.168.0.4: Descr FastEthernet0/16 --> 16
--snpo: confcache chinatnk@192.168.0.4: Descr FastEthernet0/17 --> 17
--snpo: confcache chinatnk@192.168.0.4: Descr FastEthernet0/18 --> 18
--snpo: confcache chinatnk@192.168.0.4: Descr FastEthernet0/19 --> 19
--snpo: confcache chinatnk@192.168.0.4: Descr FastEthernet0/20 --> 20
--snpo: confcache chinatnk@192.168.0.4: Descr FastEthernet0/21 --> 21
--snpo: confcache chinatnk@192.168.0.4: Descr FastEthernet0/22 --> 22
--snpo: confcache chinatnk@192.168.0.4: Descr FastEthernet0/23 --> 23
--snpo: confcache chinatnk@192.168.0.4: Descr FastEthernet0/24 --> 24
--snpo: confcache chinatnk@192.168.0.4: Descr Null0 --> 25
--snpo: confcache chinatnk@192.168.0.4: Descr Vlan1 --> 26
--snpo: confcache chinatnk@192.168.0.4: Ip 192.168.0.4 --> 26
--snpo: confcache chinatnk@192.168.0.4: Type 6 --> 1
--snpo: confcache chinatnk@192.168.0.4: Type 6 --> 2 (duplicate)
--snpo: confcache chinatnk@192.168.0.4: Type 6 --> 3 (duplicate)
--snpo: confcache chinatnk@192.168.0.4: Type 6 --> 4 (duplicate)
--snpo: confcache chinatnk@192.168.0.4: Type 6 --> 5 (duplicate)
--snpo: confcache chinatnk@192.168.0.4: Type 6 --> 6 (duplicate)
--snpo: confcache chinatnk@192.168.0.4: Type 6 --> 7 (duplicate)
--snpo: confcache chinatnk@192.168.0.4: Type 6 --> 8 (duplicate)
--snpo: confcache chinatnk@192.168.0.4: Type 6 --> 9 (duplicate)
--snpo: confcache chinatnk@192.168.0.4: Type 6 --> 10 (duplicate)
--snpo: confcache chinatnk@192.168.0.4: Type 6 --> 11 (duplicate)
--snpo: confcache chinatnk@192.168.0.4: Type 6 --> 12 (duplicate)
--snpo: confcache chinatnk@192.168.0.4: Type 6 --> 13 (duplicate)
--snpo: confcache chinatnk@192.168.0.4: Type 6 --> 14 (duplicate)
--snpo: confcache chinatnk@192.168.0.4: Type 6 --> 15 (duplicate)
--snpo: confcache chinatnk@192.168.0.4: Type 6 --> 16 (duplicate)
--snpo: confcache chinatnk@192.168.0.4: Type 6 --> 17 (duplicate)
--snpo: confcache chinatnk@192.168.0.4: Type 6 --> 18 (duplicate)
--snpo: confcache chinatnk@192.168.0.4: Type 6 --> 19 (duplicate)
--snpo: confcache chinatnk@192.168.0.4: Type 6 --> 20 (duplicate)
--snpo: confcache chinatnk@192.168.0.4: Type 6 --> 21 (duplicate)
--snpo: confcache chinatnk@192.168.0.4: Type 6 --> 22 (duplicate)
--snpo: confcache chinatnk@192.168.0.4: Type 6 --> 23 (duplicate)
--snpo: confcache chinatnk@192.168.0.4: Type 6 --> 24 (duplicate)
--snpo: confcache chinatnk@192.168.0.4: Type 1 --> 25
--snpo: confcache chinatnk@192.168.0.4: Type 53 --> 26
--snpo: confcache chinatnk@192.168.0.4: Eth 00-0b-be-b2-b8-81 --> 1
--snpo: confcache chinatnk@192.168.0.4: Eth 00-0b-be-b2-b8-82 --> 2
--snpo: confcache chinatnk@192.168.0.4: Eth 00-0b-be-b2-b8-83 --> 3
--snpo: confcache chinatnk@192.168.0.4: Eth 00-0b-be-b2-b8-84 --> 4
--snpo: confcache chinatnk@192.168.0.4: Eth 00-0b-be-b2-b8-85 --> 5
--snpo: confcache chinatnk@192.168.0.4: Eth 00-0b-be-b2-b8-86 --> 6
--snpo: confcache chinatnk@192.168.0.4: Eth 00-0b-be-b2-b8-87 --> 7
--snpo: confcache chinatnk@192.168.0.4: Eth 00-0b-be-b2-b8-88 --> 8
--snpo: confcache chinatnk@192.168.0.4: Eth 00-0b-be-b2-b8-89 --> 9
--snpo: confcache chinatnk@192.168.0.4: Eth 00-0b-be-b2-b8-8a --> 10
--snpo: confcache chinatnk@192.168.0.4: Eth 00-0b-be-b2-b8-8b --> 11
--snpo: confcache chinatnk@192.168.0.4: Eth 00-0b-be-b2-b8-8c --> 12
--snpo: confcache chinatnk@192.168.0.4: Eth 00-0b-be-b2-b8-8d --> 13
--snpo: confcache chinatnk@192.168.0.4: Eth 00-0b-be-b2-b8-8e --> 14
--snpo: confcache chinatnk@192.168.0.4: Eth 00-0b-be-b2-b8-8f --> 15
--snpo: confcache chinatnk@192.168.0.4: Eth 00-0b-be-b2-b8-90 --> 16
--snpo: confcache chinatnk@192.168.0.4: Eth 00-0b-be-b2-b8-91 --> 17
--snpo: confcache chinatnk@192.168.0.4: Eth 00-0b-be-b2-b8-92 --> 18
--snpo: confcache chinatnk@192.168.0.4: Eth 00-0b-be-b2-b8-93 --> 19
--snpo: confcache chinatnk@192.168.0.4: Eth 00-0b-be-b2-b8-94 --> 20
--snpo: confcache chinatnk@192.168.0.4: Eth 00-0b-be-b2-b8-95 --> 21
--snpo: confcache chinatnk@192.168.0.4: Eth 00-0b-be-b2-b8-96 --> 22
--snpo: confcache chinatnk@192.168.0.4: Eth 00-0b-be-b2-b8-97 --> 23
--snpo: confcache chinatnk@192.168.0.4: Eth 00-0b-be-b2-b8-98 --> 24
--snpo: confcache chinatnk@192.168.0.4: Eth --> 25
--snpo: confcache chinatnk@192.168.0.4: Eth 00-0b-be-b2-b8-80 --> 26
--base: Get Interface Info
--base: Walking ifIndex
--base: Walking ifType
--base: Walking ifAdminStatus
--base: Walking ifOperStatus
--base: Walking ifAlias
--base: Walking ifSpeed
--base: Writing mrtg4.cfg

C:mrtgbin>perl mrtg mrtg4.cfg

C:mrtgbin>
C:mrtgbin>perl cfgmaker chinatnk@192.168.0.254 --global "WorkDir: e:webrootm
rtg" --output mrtg5.cfg
--base: Get Device Info on chinatnk@192.168.0.254:
--base: Vendor Id:
--base: Populating confcache
--snpo: confcache chinatnk@192.168.0.254: Descr Ethernet0 --> 1
--snpo: confcache chinatnk@192.168.0.254: Descr Serial0 --> 2
--snpo: confcache chinatnk@192.168.0.254: Descr Bri0 --> 3
--snpo: confcache chinatnk@192.168.0.254: Descr LoopBack0 --> 4
--snpo: confcache chinatnk@192.168.0.254: Ip 127.0.0.1 --> 4
--snpo: confcache chinatnk@192.168.0.254: Ip 192.168.0.254 --> 1
--snpo: confcache chinatnk@192.168.0.254: Ip 202.104.141.177 --> 1
--snpo: confcache chinatnk@192.168.0.254: Type 6 --> 1
--snpo: confcache chinatnk@192.168.0.254: Type 23 --> 2
--snpo: confcache chinatnk@192.168.0.254: Type 23 --> 3 (duplicate)
--snpo: confcache chinatnk@192.168.0.254: Type 24 --> 4
--snpo: confcache chinatnk@192.168.0.254: Eth 00-e0-fc-06-d4-21 --> 1
--snpo: confcache chinatnk@192.168.0.254: Eth 00-00-00-00-00-00 --> 2
--snpo: confcache chinatnk@192.168.0.254: Eth 00-00-00-00-00-00 --> 3 (duplicate
)
--snpo: confcache chinatnk@192.168.0.254: Eth 00-00-00-00-00-00 --> 4 (duplicate
)
--base: Get Interface Info
--base: Walking ifIndex
--base: Walking ifType
--base: Walking ifAdminStatus
--base: Walking ifOperStatus
--base: Walking ifSpeed
--base: Writing mrtg5.cfg

C:mrtgbin>perl mrtg mrtg5.cfg

C:mrtgbin>

5、 開始生成流量圖及配置檔案
6、
C:mrtgbin>perl mrtg mrtg.cfg

命令成功執行完成後,將會在我們前一個命令所指定的WEB目錄裡面生成以IP+埠命名的網頁和一些png圖片,這些圖片就是網路當時的流量圖。我們可以直接開啟這個網頁檢查一下,看是否正常。剛開始生成後很多都是空白的,需要讓它自動執行一段時間後才可以有圖形表現出來。

7、 要使MRTG可以隨時得到最新的流量圖,我們還需要修改一下配置指令碼,主要是剛才output引數所帶的檔名mrtg.cfg,使用文字編輯器開啟它。
檔案頭部已經說明了在Windows系統裡面或者在UNIX系統裡面的不同配置方法,現在因為是新版的MRTG,已經自動在尾部新增了工作目錄,不需要我們再手工編輯。
為了使網路流量圖可以每5分鐘自動更新一次,我們還需要在
###Global Config Options的下一行加入一條命令:

RunAsDaemon: yes
這條命令的作用是使MRTG每5分鐘自動去獲取一次SNMP的資料及更新網路流量圖形。

儲存檔案,退出。

8、 當我們需要同時監控的裝置多於一個時或者裝置的介面多於一個時,將會涉及到生成了多個配置檔案,這樣檢視起來比較困難,這時我們需要使用indexmaker命令將多個資料收集起來做成一個檔案裡面。
執行如下命令:

C:MRTGBIN> perl indexmaker --output=index.htm mrtg.cfg
此時,系統將會自動生成index.htm在我們指定的WEB目錄裡面,我們現在可以開啟網頁檔案來檢視是否正常了。

9、 為了使系統在每次開機後,能自動執行該命令,我們還需要在啟動裡面加入這個快捷方式。

1)、在桌面擊右鍵,選擇快捷方式。
2)、輸入快捷方式的執行命令列為 start /D c:mrtg/bin wperl mrtg –logging=eventlog mrtg.cfg
3)、輸入一個好記的檔名,如”mrtg流量監控”。
9、至此,MRTG已經可以正常執行了,並且會給我們提供每5分鐘流量圖,每日流量圖,每週流量圖,每月流量圖,每年流量圖。

更詳細的安裝MRTG的方法在MRTG的官方網站:http://people.ee.ethz.ch/~oetiker/webtools/mrtg/nt-guide.html

把流量圖加入您的網站

前面,我們已經生成了圖量圖檔案了,現在是把它美化,並加入您的網站。
我們使用Dreamwaver MX等網頁製作軟體開啟它,按自己所需要或者網站的網格美化一下,就可以正常使用了。

(全文完)

本文作者水平有限,如有錯誤之處,還懇請各位朋友提出來,謝謝!

作者:樊禮 於 廣東

相關文章