web-dev-qa-db-ja.com

非ルーターマシンのiptablesによる帯域幅の監視

私はこのチュートリアルに出くわしました ここ iptablesを使用して帯域幅を監視する方法を説明しています。ルーター以外のマシンに適応させたかったので、どのくらいのデータが出入りし、通過しないのか知りたいです。

追加したルールは次のとおりです。

iptables -N ETH0_IN
iptables -N ETH0_OUT
iptables -I INPUT -i eth0 -j ETH0_IN
iptables -I OUTPUT -o eth0 -j ETH0_OUT

そして、これが出力のサンプルです:

user@Host:/tmp$ Sudo iptables -x -vL -n
Chain INPUT (policy ACCEPT 1549 packets, 225723 bytes)
    pkts      bytes target     prot opt in     out     source               destination         
     199    54168 ETH0_IN    all  --  eth0   *       0.0.0.0/0            0.0.0.0/0           

Chain FORWARD (policy ACCEPT 0 packets, 0 bytes)
    pkts      bytes target     prot opt in     out     source               destination         

Chain OUTPUT (policy ACCEPT 1417 packets, 178128 bytes)
    pkts      bytes target     prot opt in     out     source               destination         
     201    19597 ETH0_OUT   all  --  *      eth0    0.0.0.0/0            0.0.0.0/0           

Chain ETH0_IN (1 references)
    pkts      bytes target     prot opt in     out     source               destination         

Chain ETH0_OUT (1 references)
    pkts      bytes target     prot opt in     out     source               destination         

上で見たように、ETH0_INとETH0_OUTのパケットとバイトの値はありません。これは、私が参照したチュートリアルの結果と同じではありません。

どこかで間違えたことがありますか?御時間ありがとうございます。

1
user1591276

すべてのトラフィックに一致し、何もしない(ただしカウントする)用語を作成します。

iptables -A ETH0_IN
iptables -A ETH0_OUT

チュートリアルでは、カスタムチェーンに同様のエントリが含まれています。 (IPごと、プロトコルごと...)


入出力トラフィックを考慮したいだけで、転送(「ルーター以外のマシン」から読み取ったもの)を行わない場合は、インターフェイスカウンターを取得します。

# ifconfig eth0 | grep 'RX bytes'
      RX bytes:7029377146 (7.0 GB)  TX bytes:923972351 (923.9 MB)


合計だけを実行している場合は、カスタムチェーンを保存して実行することもできます

iptables -A INPUT  -i eth0
iptables -A OUTPUT -o eth0

あなたのカウンターを取得するには....

2
Michuelnik