各ネットワークポートのトラフィック統計

各ネットワークポートのトラフィック統計

複数のネットワークポート(TCPとUDP)を介して互いに通信する2つのアプリケーションを持つ2台のコンピュータがあります。彼らが送受信するトラフィックを計算したいと思います。合計数が必要になるだけでなく、1日に1マシンあたりの各ポートの統計も必要です。頑張った暗い状態、ただし、毎日の統計は提供せず、全体のカウンターのみを提供します。

トラフィックを計算する別の方法があります(2つのシステム間にいくつかのプロキシまたはゲートウェイを配置できます)。

答え1

iptables は各ルールがトリガーされた回数に関する統計情報を提供するため、関心のあるポート (ポート 20 やポート 80 など) に LOG ルールを追加できます。

iptables -A INPUT -p tcp --dport 22
iptables -A INPUT -p tcp --dport 80

それから

iptables -n -L -v

このポートを介して送信されたパケット数とバイト数を示します。もちろん、出力から関心のあるポートを解析する必要があります。

正しい値が必要な場合は、-xを追加してください。

iptables -n -L -v -x

答え2

iptables構成に会計規則を追加できます。これは、ESTABLISHEDおよびRELATEDトラフィックを受け入れる前に発生する必要があります。それ以外の場合は、通過するトラフィックの計算を見逃す可能性があります。ネットワークトラフィックを計算するには、次の規則を試してください。

iptables -A INPUT -p tcp --dport 80 

これらのチェーンが多い場合は、会計チェーンを作成して他のチェーンと隔離されたカウンタを報告して消去できます。

これ桟橋の壁ファイアウォールを使用すると、ルールセットに会計ルールを簡単に追加できます。

答え3

出力トラフィック統計を含めることを忘れないでください。

# Port 80 (HTTP).
iptables -A INPUT -p tcp --dport 80
iptables -A OUTPUT -p tcp --sport 80

# Port 443 (HTTPS).
iptables -A INPUT -p tcp --dport 443
iptables -A OUTPUT -p tcp --sport 443


iptables -n -L -v
iptables -n -L -v -x


iptables -n -L -v -x | grep -i "Chain\|:443\|:80"

Chain INPUT (policy DROP 357 packets, 22828 bytes)
 1286265 75076978 ACCEPT tcp  --  *      *    0.0.0.0/0  0.0.0.0/0  tcp dpt:80
 1305378 75018232 ACCEPT tcp  --  *      *    0.0.0.0/0  0.0.0.0/0  tcp dpt:443

Chain OUTPUT (policy ACCEPT 303516 packets, 94716311 bytes)
     442   255112        tcp  --  *      *    0.0.0.0/0  0.0.0.0/0  tcp spt:80
      46    10515        tcp  --  *      *    0.0.0.0/0  0.0.0.0/0  tcp spt:443

答え4

すべての宛先IPを使用する必要があるかどうかはわかりませんが、統計資料インターフェイスごとのトラフィック使用量を記録するのに便利なツールです。vnstat -u -i eth0監視する各インターフェイスに対してインストールして実行します。その後、毎日の使用量を入手してくださいvnstat -i eth0 -d

関連情報