私はさまざまなIPの毎日のネットワーク消費(帯域幅ではない)をキャプチャする方法を探しています。 {192.168.122.0/25}としましょう。
これらのIP範囲が毎日消費するトラフィック/データの量を計算したいと思います。これは、各IPが1日に消費するデータのKB / MB / GB /数を確認するための検証目的にすぎません。
私の環境はRHEL / Centos 7です。
これを達成するためのオプションを備えたツールを提案できますか?使用量/消費を追跡する方法を見つけたら、毎日プロセスを自動化します。
グラフィックツールではなくCLIを探しています。また、itraf、nmap、iftopを試しましたが、IP範囲全体でネットワーク消費のオプションが見つかりませんでした。
答え1
あなたのニーズに合ったツールの1つは次のとおりです。シャーク:
$ tshark -q -i eth0 -a duration:86400 -z conv,ip net 192.168.122.0/25
そして:
-q
:連続してキャプチャされたパケット数を表示しません。-i eth0
:インターフェイスからトラフィックをキャプチャします(またはすべてのインターフェイスでトラフィックをキャプチャするeth0
ために使用することもできます)。-i any
-a duration:86400
:一日のトラフィックをキャプチャします。-z conv,ip
:IP統計の取得net 192.168.122.0/25
: キャプチャフィルタ
出力例:
$ tshark -q -i any -a duration:10 -z conv,ip net 192.168.134.0/24
| <- | | -> | | Total | Relative | Duration |
| Frames Bytes | | Frames Bytes | | Frames Bytes | Start | |
151.101.122.217 <-> 192.168.134.142 571 43915 591 3186555 1162 3230470 0,994980222 6,3748
192.168.134.142 <-> 192.168.136.27 5 1347 6 788 11 2135 5,714866377 0,0350
192.168.134.96 <-> 192.168.134.255 0 0 10 1060 10 1060 0,000000000 9,1583
151.101.129.69 <-> 192.168.134.142 5 608 5 632 10 1240 6,193916779 0,1324
ここでは、必要に応じて他のCLIツールを使用して出力と合計バイトを解析できます(例awk
:)。
答え2
だからあなたはネットワークトラフィックが欲しい帯域幅使用量、毎日の要約です。
あなたはプライベートIP範囲を提供したので、接続されたインターネットホストのIPアドレスではなく、自分のコンピュータのIPアドレスにそれをインポートしたいとします。
原則として、2つの方法があります。
1) 各マシンのトラフィックを監視します。カーネルは各ネットワークインターフェイスのパケットカウンタをに保持するため、/proc
これらのカウンタを読み取って平均/合計トラフィックを計算できます。
2) 中央ルータのトラフィックを監視します。ローカルIPでソートするには、トラフィック全体よりも多くのトラフィックが必要なため、パケットを確認する必要があります。多くのトラフィック監視ツールは、ネットワークインターフェイスで無差別モードを使用して動作し、これにより測定可能なCPU負荷が発生する可能性があります。別のオプションは、iptable
使用量を計算するカスタムルールを作成することです。
一つあるトーン利用可能なさまざまなツールについては、以下を参照してください。ここまたはここ一部のユーザー(およびより多くのGoogleの場合、ソフトウェアの推奨事項はこのStack Exchangeの範囲外です)。
代替 1 を選択した場合、監視対象のすべてのホストの情報を 1 つの中央の場所に収集するために広く使用されているプロトコルは次のとおりです。シンプルなネットワーク管理プロトコルそのため、Google検索に含めてください。