
我運行一個 Web 伺服器(VPS 上的 Debian Squeeze),託管公司提供的圖表始終顯示,傳入伺服器的流量大約是傳出流量的兩倍。我對此有點困惑,所以我想在電腦上運行某種日誌記錄實用程序,它不僅會確認上傳/下載數據,還會按所涉及的遠端主機將它們分開,這樣我就可以查看是否有很大一部分傳入流量來自一個特定來源。
我懷疑大部分傳出流量都通過 Apache,但傳入流量可能主要透過 Apache,或者可能由其他腳本和 cron 作業主導,因此我更喜歡一個能夠在介面層級監控流量的工具,而不是 Apache 中的工具。
理想情況下,我想要一個可以運行幾天的工具,然後返回並獲取傳入和傳出流量的「每個遠端主機位元組數」的輸出。
是否可以使用標準 Linux 工具和一些配置(如果可以,如何?)或使用專業程式(如果可以,使用哪一個?)
答案1
恩托普可能是您執行此操作的最佳解決方案。它旨在長期運行並準確地捕捉您正在尋找的內容。
它可以向您顯示最常用的遠端目標、發送到/發自的流量有多少、正在使用哪些協定和連接埠等。看到本地客戶的統計數據也相同。
然後,它使用 Web GUI 來導航和顯示此資訊。
答案2
如果你有root權限,你就可以使用tcpdump
並取得一切。然後您可以將其拉入Wireshark並隨心所欲地分析。
$ sudo tcpdump -i <interface> -w mycapture.tcpdump
……然後當你受夠了時按 ctrl-c。screen
如果需要分離等,請在會話中運行。
預設情況下,它只會捕獲每個資料包的第一部分,但由於您最感興趣的是來源分析,所以應該沒問題。tcpdump 的大量其他選項如果你喜歡冒險。
編輯:事實上,一旦載入到Wireshark中,您就可以使用選單選項統計數據|IP 位址...並按計數/速率/百分比取得流量的詳細摘要:
答案3
對於更高級的指標,您可以使用類似的東西監視器其中包含最常見服務的模組,而且很簡單:
apt-get install monitorix
還有你有仙人掌一個完整的 GUI RDD 工具,但不是即時的。
對我來說,排名第一的是多重配置格拉法納。它的安裝和配置有點困難,但它非常完美,您可以詳細且即時地測量所有內容。它需要一些依賴 JVM、graphite、whisper...一些關於 JSON 的知識,但它的工作方式就像一個魅力,我真的推薦它!
也許適合您的情況的一個好的配置應該是:
collectd + graphite + whisper + grafana
實際上 grafana 改變了我的辦公室生活。
答案4
當然 ;)
https://github.com/graphite-project/whisper
另外,如果您想要一個關於如何連接所有內容的迷你指南: https://linuxboss.wordpress.com/2015/12/03/graphite-grafana/