站長新書 站長開講 首頁 最新文章 站長著作及審校 FreeBSD 筆記 Linux 筆記 Windows 筆記 虛擬化筆記 網管人雜誌 遊山玩水 關於本站
站長新書 VMware vSphere ICM 團購開跑了!!

darkstat-統計指定網卡的封包流量

前言

[Darkstat - Nework Traffic Analyzer] 簡單來說就是把通過指定網卡的封包利用圖表統計方式呈現,讓您可以很簡單的了解現在網卡上進、出的流量。

Darkstat 特色:

Darkstat 成果展示畫面:

[Darkstat Graphs Screenshots]

[Darkstat Hosts Screenshots]

[Darkstat Hostnames Screenshots]

實作環境

安裝及設定

步驟1.下載 darkstat RPM

[RPM Search darkstat-3.0.707-1.el5.rf.i386.rpm] 下載 darkstat-3.0.707-1.el5.rf.i386.rpm

 #wget ftp://ftp.pbone.net/mirror/dries.studentenweb.org/apt/redhat/el5/en/i386/RPMS.dries/darkstat-3.0.707-1.el5.rf.i386.rpm

步驟2.安裝 darkstat RPM

利用 rpm 指令來安裝 DarkStat RPM

 #rpm -ivh darkstat-3.0.707-1.el5.rf.i386.rpm
 Preparing...                ########################################### [100%]
    1:darkstat               ########################################### [100%]

步驟3.啟動 darkstat

 #/usr/sbin/darkstat -i eth0
 darkstat 3.0.707 (built with libpcap 2.4)
 darkstat (21240): starting up
 darkstat (21240): daemonizing to run in the background!
 darkstat (21241): I am the main process
 darkstat (21240): parent waiting
 darkstat (21242): set uid/gid to 99/99
 darkstat (21241): DNS child has PID 21242
 darkstat (21241): caplen is 54
 darkstat (21241): capturing in promiscuous mode
 darkstat (21241): listening on 0.0.0.0:667
 darkstat (21241): loaded 133 protos
 darkstat (21241): loaded 4594 tcp and 4549 udp servs, from total 9158
 darkstat (21241): chrooted into: /var/empty
 darkstat (21241): set uid/gid to 99/99                     
 darkstat (21241): local_ip update(eth0) = 61.60.59.58
 darkstat (21241): entering main loop
 darkstat (21240): parent done reading, calling waitpid
 darkstat (21240): waitpid ret 0, status is 3

檢查 darkstat service 是否開啟服務的 Port (Default 667)

 #netstat -tnl |grep 667
 tcp        0      0 0.0.0.0:667                 0.0.0.0:*                   LISTEN

檢查 darkstat process 是否執行中

 #ps ax |grep darkstat
 21241 ?        Ss     0:00 /usr/sbin/darkstat -i eth0
 21242 ?        Ss     0:00 /usr/sbin/darkstat -i eth0

若要停止監聽的話則 kill 掉主行程即可,通常在啟動 darkstat 後第四行訊息就是說明該 process id 為 main process

 #/usr/sbin/darkstat -i eth0
 darkstat 3.0.707 (built with libpcap 2.4)
 darkstat (21240): starting up
 darkstat (21240): daemonizing to run in the background!
 darkstat (21241): I am the main process

補充: DarkStat 可用參數說明

參數說明
-i interface 指定監聽的網路卡名稱
--debug開啟除錯模式
--no-promisc不使用混亂模式(promiscuous mode )
--no-dns不使用 DNS 來解析 IP -> Hostname 名稱
-p port指定 embedded webserver 使用的 Port (預設為 667)
-b bindaddr指定 embedded webserver 使用的 IP Address 預設使用 0.0.0.0
-f filter指定過濾 (packet filter),詳細過濾語法請參考 man tcpdump
-l network/netmask定義本地網段(local network),所以進入及出去的封包將會顯示在圖表(Graphs)中
--chroot dir指定 Chroot 資料夾
--user username指定執行服務的使用者 (預設使用 nobody)
--daylog filename指定 daily Log traffic statistics (必須配合 --chroot 設定)
--import filename匯入 darkstat database
--export filename匯出 darkstat database(必須配合 --chroot 設定)
--pidfile filename建立 darkstat process ID

參考

[Darkstat - Nework Traffic Analyzer or Network Monitor and Screenshots]

[Darkstat幫你快速分析網絡通信(組圖)_網絡技巧_網絡_IT專家網]

[Darkstat - Nework Traffic Analyzer or Network Monitor and Screenshots]

[Installing Darkstat in Debian]

[Linuxのトラフィック統計をシンプルにグラフ化できる「darkstat」 - GIGAZINE]

[RPM Search darkstat-3.0.707-1.el5.rf.i386.rpm]

Go To Oddmuse OrgGo To FreeBSD OrgCreative Commons 2.5 Taiwansitestates.com