Network-Monitoring

通過 PORT 監控網路流量/使用情況

  • January 21, 2015

如果這超出主題,我提前道歉。

我目前正在使用 Icinga 和 Cacti 分別監控機器和網路。雖然我對這個設置沒有什麼大問題,但我真的很想可以選擇通過埠實時監控網路流量。

有沒有一個實用程序可以做到這一點?我只知道 Paesler 和 Solar Winds,但現在任何非開源的東西都是不可能的。

有任何想法嗎?

你徵求意見,然後……這是我的。

要解決您的問題,您有兩個非常有限的條件:

  1. 您無法使用您的 Cisco(因為它不是您的,並且無法更改其配置以滿足您的需求);
  2. 您無法(至少,不容易)改變 Zeroshell 的工作方式(由於 Zeroshell 本身的性質

$$ it’s quite complex to rebuild Zeroshell to suite your needs [see below $$).

另一方面,當您想要 REAL_TIME_MONITORING 和 PER-PORT-TRAFFIC-ACCOUNTING 時,您大多被迫至少擁有一個點(一個網路介面),其中:

  1. 所有的流量都會流動,所以你要“記”它的全部;
  2. 該界面由您可以管理的某些設備“擁有”。

我在這種情況下所做的是用我可以不受限制地完全管理的東西替換現有的設備(在你的情況下: Zeroshell;在我的情況下來自不同供應商的各種硬體設備):一個普通的 Linux 盒子,至少有兩個正確配置的介面路由/防火牆流量。

讓我們假設這對您來說可能沒問題(……由於最初的設置工作,我明白這對您來說可能是一個問題)。

如果有這樣的機器可用,那麼我將添加到要在其上安裝的軟體集:

  • IPTRAF:儘管年代久遠,它仍然能夠完美地從您的網路介面發出實時數據。它提供了一個字元使用者界面,因此可以通過簡單的 SSH 連接(無需 Web、無需大型 GUI 庫等)遠端啟動它;
  • NTOP:來自官方網站:“ ……顯示網路使用情況的網路流量探測,類似於流行的頂級 Unix 命令…… ”。NTOP 比 IPTRAF 功能豐富得多。絕對更強大(但配置/安裝比單個“ apt-get install ”或“ yum install ”更複雜)

如明確所述,上述兩種工具都提供了良好的實時數據(正如您在問題中所問的那樣)。無論如何,我非常有信心您還需要非同步數據:我確定您還希望能夠檢查以下內容:“昨天誰是生成/消耗大部分流量的主機/MAC?以及為哪個協議? ”,可能會將此類數據向下鑽取到單個 IP/MAC/PORT,並向下鑽取到…. 1 分鐘的粒度。不是嗎?在這種情況下,我強烈建議:

  • PMACCT:來自官方網站:“ …pmacct 是一個小型的被動網路監控工具,用於測量、記賬、分類、聚合和導出 IPv4 和 IPv6 流量.. ”。請注意,PMACCT 可以解決範圍廣泛的問題,其中大部分適用於大型/大型 ISP/運營商。儘管如此,它可以完美地在您的 linux-box 上執行,並考慮沿其介面流動的流量。使用這樣的配置:
host:~# cat /etc/pmacct/pmacctd.conf

interface: eth0
daemonize: true
aggregate: src_mac,dst_mac,src_host,dst_host,proto,src_port,dst_port

ports_file: /etc/pmacct/ports.list 

plugins: mysql

sql_user: pmacct
sql_passwd: sqlpassword
sql_db: pmacct
sql_table: acct_v4_%Y_%m_%d
[...]

它可以輕鬆地跟踪 mysql 表中沿 eth0 的流量,因此您可以使用常見/簡單的 SQL 查詢輕鬆檢查網路上發生的情況。

只是為了給你一些真實的數字,我已經成功地在一台裝有 XEON X3350 的伺服器上使用了 PMACCT;4GB 記憶體;4 個 Broadcom GigaEth 介面;在 eth0 上配置了近 70 個 VLAN,並且 pmacct 都在監聽它們;每天路由 +/- 300GB 的各種 IP 流量;PMACCT 為 EVERY_VLAN、每個元組(src_mac、dst_mac、src_ip、dst_ip、src_port、dst_port)生成記帳 EVERY_MINUTE;每天 +/- 60.000.000 條會計記錄。所有這一切,沒有任何問題(但寫在文本文件上,而不是在 MySQL 中)。無論如何,在較小的環境中,直接寫入 MySQL 是沒有問題的。

另外,請注意,感謝 PMACCT,我每天都會跟踪在我的網路上看到的每個IP 地址(換句話說:我知道自 2014 年 7 月 16 日以來沒有見過 10.29.19.89;從未見過 172.17.1.45見過

$$ since the start of PMACCT accounting $$; ETC。)。 同樣在 PMACCT 上:我已經配置了連接我的主要 Internet 網關的乙太網交換機,以將其流量“鏡像”到一個空閒埠,在那裡我插入了一個 ad-hoc linux-box,用於計算所有 Internet 流量(一個 1GEth 連結) . 完全沒有問題。

關於 PMACCT 的最後一點說明:如果您(或其他一些讀者)想知道為什麼我選擇一些更常見的 NETFLOW/IPFIX 探針/收集器,原因很簡單:PMACCT 是我發現的唯一一個也可以考慮 MAC -地址。

引用自:https://serverfault.com/questions/652168