前言
我們時常開一些遊戲伺服器讓他人玩,又或是租伺服器給別人。但是我們通常難以分析流量都去哪裡了,或是都怎麼走,所以我們需要透過一些方式來記錄網路流量流向。而今天這篇文章就是要講 sFlow 這個酷東西可以分析流量,來監視網路使用情況。
但這篇文章只會講解在 Linux 上的設定層面,不會講到其他流量分析軟體。如果有需要,可以參考 啟用 Cloudflare 流量監控功能 – Magic Network Monitoring 這篇文章!
安裝軟體
今天會使用的是 Host sFlow 這套軟體,首先我們先到 官方網站 下載適用於你作業系統的版本。依照本文撰寫的當下,我們會使用 Debian 作業系統,最新版本為 v2.0.53-1
。
sudo wget https://github.com/sflow/host-sflow/releases/download/v2.0.53-1/hsflowd-debian12_2.0.53-1_amd64.deb
下載後安裝他。
sudo dpkg -i hsflowd-debian12_2.0.53-1_amd64.deb
設定參數
接著,我們必須設定一些有用的參數,檔案在 /etc/hsflowd.conf
。而下面我只列舉常用的,更多設定細節可以參考 官方文件。
sflow {
# 採樣率
sampling = 1000
# 欲採樣網卡
pcap { dev = ens4 }
# 蒐集資料那端的 IP 位址及端口
collector { ip=127.0.0.1 udpport=6343 }
}
存檔完成後,我們就要開始讓服務跑起來囉。
sudo systemctl start hsflowd
接著我們要設定開機就會自動啟動。
sudo systemctl enable hsflowd
這樣就完成囉!