2008年2月14日 星期四

輕量級的流量記錄軟體(Darkstat for Like-UNIX)

對一般人來說,知道網路的流量其實並沒有太大的意義(用多用少都是自己承擔),除非是多人共用同一條寬頻或是架設小型網站,如果是這一類型的使用者,流量在網路的管理上就是一個很重要的參考依據。

如果你手上有中高階的網路設備或是防火牆的話,其實可以直接跳過這一篇,因為那些設備上一定都有流量的記錄,甚至還能分析出區網內每一個IP各別的流量(如果設備等級夠高的話),就算不行,至少也能夠記錄總流量的進出,不成問題。

如果手上沒有中高階的網路設備,可以利用Linux當成IP(頻寬)分享器來使用,只要拿一台舊主機來湊個數,就可以得到不錯的效果,同時也能在這樣子的環境下,練習更多網路管理的技術,一舉兩得的事,何樂不為,這次使用的主機設備如下:
硬體:CPU:XP-1800、RAM:DDR400-512MB、兩張網卡
軟體:OS:CENTOS-5.1Darkstat(小而美的流量統計軟體)
曾經接觸過Linux的人一定都聽過幾種很著名的流量分析軟體,例:MRTG(The Multi Router Traffic Grapher)、NTOP等,而且這兩個相當紅的流量分析軟體,甚至能夠在M$的WINDOWS下運行(MRTGNTOP),由此可知它們功能之強大。(有興趣的人可以看一下NTOP上的這篇文章

但是這兩種流量分析軟體,對於太老舊的機器或是對Linux還不是這麼熟悉的人來說,可能就是一種蠻大的負擔,因為要安裝它們基本上都要其它的套件相配合,才能夠發揮出它們真正的功效,例:MRTG需要GCC、Perl、GD、libpng和zlib(再加上apache-網頁伺服器)等套件(參考文件),雖然有些是在預設安裝時都有,但是那些還未裝上的套件,就要花點時間來安裝及處理它們相依性的問題,這一點對於剛接觸Linux的人或是等級太低的主機(系統負擔增加)就會構成困擾。

所以今天就來介紹這隻輕量級的流量統計軟體「Darkstat」,雖然它沒有辦法分析出各別的IP的流量,不過它能夠透過DNS來解析IP的功能,我覺得就是值得推薦的一個功能,除此之外,最重要的是...它不用煩惱跟其它套件的相依性(這一點就是極大的福音),它官網上所說的優點(大意如下):

1.圖型來顯示HOST的流量,並列出每個PORT的進出資訊。
2.內嵌式的網頁伺服器。(值得佳許)
3.透過DNS解析IP所代表的意義。(可以做為參考使用)
4.小巧、可攜性高、單獨執行、有效率、結構簡單。

接下來我們就來開始安裝吧!其實步驟相當簡單(為了抓圖方便我是用Pietty連進主機做安裝的動作...),可以直接點圖放大觀看。

1.下載Darkstat的RPM檔:(\為斷行符號)
#wget http://apt.freshrpms.net/pub/dag/packages/darkstat/\
darkstat-3.0.707-1.el5.rf.i386.rpm


2.安裝Darkstat的RPM檔:
#rpm -ivh darkstat-3.0.707-1.el5.rf.i386.rpm


3.執行Darkstat:

#/usr/sbin/darkstat -i eth1


4.常用參數說明:

-b:指定嵌入的網頁伺服器IP。(預設0.0.0.0,例:192.168.99.1)
-p:指定嵌入的網頁伺服器port。(預設667,例:-p 8080)
-f:過濾(參考tcpdump)。
-i:網路卡介面。(例:eth0、eth1...等)
-l:定義網段。(例:192.168.99.0/255.255.255.0)
#/usr/sbin/darkstat -p 99 -i eth1 –f "port 22"
eth1的port:22做流量統計(可在主機的port:99看結果)
5.檢查是否正常執行:
# ps ax | grep darkstat (檢查darkstat是否正常執行)
# netstat -tlnp | grep darkstat
(檢查darkstat開啟的port)



6.流量統計結果的圖形:

圖形Graphs:每分、時、日和月的流量


HOST:


有興趣的人可以抓來玩看看唷!輕量級的流量統計軟體,很容易上手,自己實作一次樂趣無窮唷!最後,還是跟大家說一聲:「情人節快樂」(街上應該閃光四射吧!)