web-dev-qa-db-ja.com

リモートホストとの間の送受信トラフィックを監視および記録するために何を使用できますか?

私はWebサーバー(VPS上のDebian Squeeze)を実行しており、ホスティング会社から提供されたグラフは、発信トラフィックと比較して約2倍のトラフィックがサーバーに着信していることを一貫して示しています。私はこれに少し混乱しているので、アップロード/ダウンロードの数値を確認するだけでなく、関係するリモートホストによってそれらを分割する、ある種のロギングユーティリティをマシンで実行したいので、着信トラフィックの大部分は、特定のソースからのものです。

私は発信トラフィックのほとんどがApacheを経由していると思いますが、着信トラフィックはほとんどがApache経由であるか、他のスクリプトやcronジョブが支配している可能性があるため、Apache内ではなく、インターフェイスレベルでトラフィックを監視するツールを使用します。

理想的には、数日間実行したままにして、戻ってきて、着信トラフィックと発信トラフィックの両方について「リモートホストあたりのバイト数」の出力を取得できるツールが欲しいです。

これは、標準のLinuxツールと少しの構成(ある場合、どのように?)または専門のプログラム(ある場合、それは?)で可能ですか?

14
Ian Renton

ntop はおそらくこれを行うための最良の解決策です。長期間実行し、あなたが探しているものを正確にキャプチャするように設計されています。
これは、最も使用されているリモート宛先、送受信されたトラフィック量、使用されているプロトコルとポートなどを表示できます。ルーターを使用すると、ローカルクライアントでも同じ統計情報を確認できます。
次に、Web GUIを使用して、この情報をナビゲートして表示します。

ntop

11
Patrick

ルートがある場合は、tcpdumpを使用してすべてを取得できます。次に、それを Wireshark にプルアップして、心の底から分析します。

$ Sudo tcpdump -i <interface> -w mycapture.tcpdump  

...十分になったらctrl-cを押します。切り離す必要がある場合などは、screenセッションで実行します。

デフォルトでは、各パケットの最初の部分のみをキャプチャしますが、Origin分析に主に関心があるため、問題ありません。 tcpdumpの他のオプションのトン 冒険したい場合。

[〜#〜] edit [〜#〜]:実際、Wiresharkに読み込まれると、メニューオプション統計| IPアドレス...とカウント/レート/パーセントでトラフィックの素晴らしい要約を取得します:

enter image description here

10
ckhan

そして、より高度なメトリックについては、monitorixのようなものを使用できます。これには、最も一般的なサービスのモジュールがあり、それは単純です。

apt-get install monitorix

また、完全なGUI RDDtoolはcactiですが、リアルタイムではありません。

そして、私にとってトップ1は、複数の構成が可能なgrafanaです。インストールと構成は少し難しいですが、完璧です。すべてを詳細にリアルタイムで測定できます。それには、JVM、グラファイト、ささやきなどの依存関係が必要です... JSONについてのある程度の知識が必要ですが、魅力的なように機能します。

おそらくあなたのケースに適した設定は次のようになります:

collectd + graphite + whisper + grafana

実際、グラファナは私のオフィスでの生活を変えました。

4
Gxt

承知しました ;)

https://github.com/graphite-project/whisper

また、すべてを接続する方法のミニハウツーが必要な場合: https://linuxboss.wordpress.com/2015/12/03/graphite-grafana/

0
Peter. K