在windows2003安裝網(wǎng)絡(luò)流量監(jiān)控軟件簡明教程
mrtg是一款用于監(jiān)控服務器網(wǎng)絡(luò)流量的小軟件,它能以圖形的方式顯示網(wǎng)卡每5分鐘(可自定義)、每天、每周、每月、每年的數(shù)據(jù)吞吐量和速度,并生成html格式的報告。
步驟/方法
- 報告圖在windows 2003上安裝了mrtg稍微羅嗦一些,所以貼這篇文章出來給初次使用mrtg的用戶多一個參考。
- 一、服務器網(wǎng)絡(luò)結(jié)構(gòu)
一般訪問量比較大的網(wǎng)站都會由幾臺服務器分擔各項工作,例如將防火墻、web服務、數(shù)據(jù)庫服務、文件服務各由一臺或多臺服務器運行,如下圖:現(xiàn)在準備在192.168.0.10這臺服務器上,用mrtg監(jiān)控 192.168.0.10/20/30這3臺(windows 2003)服務器的網(wǎng)絡(luò)流量。 - 二、在被監(jiān)控的windows 2003服務器上安裝SNMP服務
windows 2003本身帶有snmp服務,從控制面板->添加刪除程序->添加刪除windows組件->網(wǎng)絡(luò)監(jiān)視工具->簡單網(wǎng)絡(luò)管理協(xié)議。 - 添加了snmp服務之后,需要設(shè)置安全選項,否則控制端將連接不了snmp服務。在 計算機管理->服務 列表里可以找到 "snmp服務" 一項。從服務的”屬性“進入,選擇”安全“標簽頁,添加一個接受團體的名稱,一般添加”public-只讀“,我這里添加的是”linsaw-只讀“,然后在”接受來自這些主機的snmp數(shù)據(jù)包“里加入控制端服務器的ip地址——192.168.0.10。
- 設(shè)置好安全選項之后,還要在windows防火墻中打開snmp的服務端口: udp-161和 udp-162,如下圖:
- 三、在控制端服務器中安裝MRTG軟件。
mrtg是用perl寫的腳本程序,所以需要先下載并安裝ActivePerl,安裝過程一路”Next“即可,安裝路徑我選擇的是 c:\perl。
下載MRTG壓縮包:解壓到硬盤的一個目錄,如 c:\mrtg_root。
現(xiàn)在需要為每一臺被監(jiān)控的服務器生成一個配置文件,用如下的命令:
C:\Perl\bin\perl cfgmaker linsaw@192.168.0.10 --global "WorkDir: c:\mrtg_www" --output mrtg_10.cfg
C:\Perl\bin\perl cfgmaker linsaw@192.168.0.11 --global "WorkDir: c:\mrtg_www" --output mrtg_11.cfg
C:\Perl\bin\perl cfgmaker linsaw@192.168.0.12 --global "WorkDir: c:\mrtg_www" --output mrtg_12.cfg
命令中的 cfgmaker是 mrtg的配置文件生成器, linsaw是剛才在”snmp服務“安全設(shè)置里的接收團隊名稱, WorkDir是等一下生成報告的位置,--output mrtg_10.cfg 是生成的配置的文件名。
用記事本打開 mrtg_10.cfg 等配置文件,在文件的最末尾加上:
RunAsDaemon: yes
加上這行之后,監(jiān)控端就可以一直地對被監(jiān)控端每隔5分鐘檢查一次,否則每次檢查都需要運行一次命令。 - 檢查的命令是:
c:\perl\bin\perl mrtg --logging eventlog10 mrtg_10.cfg
其中 mrtg_cfg是剛才生成的配置文件的名稱,而 eventlog10 是監(jiān)控的日志文件,名字可以根據(jù)自己需要改變。
要監(jiān)控另外兩臺服務器的命令就是:
c:\perl\bin\perl mrtg --logging eventlog11 mrtg_11.cfg
c:\perl\bin\perl mrtg --logging eventlog12 mrtg_12.cfg
至此流量監(jiān)控就架設(shè)好了,運行成功之后會在 c:\mrtg_www目錄里看到一些報告文件,如:
192.168.0.10_65539.html
192.168.0.11_65538.html
192.168.0.12_65540.html
為了方便在遠程查看,可以用iis將 c:\mrtg_www目錄做一個虛擬目錄,這樣就可以在遠程通過瀏覽器查看報告了。
另外,如果不想再運行監(jiān)控程序時看到黑乎乎的控制臺窗口(防止有時意外關(guān)閉掉了),還可以用 wperl命令啟動監(jiān)控程序:如下
start /D c:\mrtg_root\bin c:\perl\bin\wperl mrtg --logging eventlog10 mrtg_10.cfg
start /D c:\mrtg_root\bin c:\perl\bin\wperl mrtg --logging eventlog11 mrtg_11.cfg
start /D c:\mrtg_root\bin c:\perl\bin\wperl mrtg --logging eventlog22 mrtg_12.cfg - 最后也說一下網(wǎng)關(guān)的配置。該示例的網(wǎng)關(guān)是用linux構(gòu)建的,為了讓外網(wǎng)能訪問內(nèi)部網(wǎng)的web和郵件服務,需要做端口轉(zhuǎn)發(fā)(NAT)或者用軟件做tcp端口重定向(例如 balance,http://www.inlab.de/balance.html)。使用balance的優(yōu)點是配置很簡單,敲一個命令指明需要轉(zhuǎn)發(fā)哪個tcp端口到哪臺計算機的哪個端口就行了,如:
/usr/sbin/balance -b 222.222.222.123 80 192.168.0.10:80
不過在實際使用過程當中發(fā)現(xiàn),如果服務器的訪問量比較大,例如并發(fā)連接數(shù)達到2000左右(一般還會發(fā)現(xiàn)有5000多個tcp連接處于 TIME_WAIT狀態(tài),一般是下載軟件瘋狂連接造成的),balance就會造成死機。所以使用linux的iptables做的nat比較可靠,命令如下:
#!/bin/bash
echo 1 > /proc/sys/net/ipv4/ip_forward
iptables -t nat -A PREROUTING -p tcp -i eth2 -d 222.222.222.123 --dport 80 -j DNAT --to-destination 192.168.0.10
iptables -t nat -A POSTROUTING -o eth2 -p tcp --dport 80 -j SNAT --to-source 222.222.222.123:2000-20000
關(guān)鍵詞:windows2003,網(wǎng)絡(luò)流量監(jiān)控
閱讀本文后您有什么感想? 已有 人給出評價!
- 1
- 1
- 1
- 1
- 1
- 1