各ネットワーククライアントのインターネット帯域幅を監視および制限します。

各ネットワーククライアントのインターネット帯域幅を監視および制限します。

LAN上のすべてのクライアントのインターネットゲートウェイとして機能するdhcpdを持つLinuxサーバーでは、IP / MACアドレスに基づいてインターネット使用量を監視し、特定の帯域幅消費を超えた場合にインターネットアクセスを拒否する方法は何ですか?

答え1

Linuxでは、いくつかのスクリプトを使用してこれを行うことができます。

  • iptables各クライアントのすべての帯域幅が別々のルールを通過するようにファイアウォールルールを作成します。カーネルのファイアウォールサブシステムは、特定のルールに一致するネットワークパケットとバイトを計算します。走るとカウンターが見えますiptables -vL。パフォーマンスを向上させるために、次のオプションを使用することもできます-niptables -vnL
  • 各クライアントがどのくらいのデータを使用しているかを確認するために、cronで実行されるスクリプトを作成します。その後、特定の数を超えると、クライアントがインターネットにアクセスできなくなるようにスクリプトでファイアウォールを変更するようにします。

iptablesファイアウォールが消去されると(たとえば、再起動後またはこれを実行するときなど)、カウンタがリセットされますiptables -F。そのため、スクリプトにデータベースなどの結論を明示させることができます。

答え2

トラフィック制限に対するあなたの回答はServerfaultに提供されます。

https://serverfault.com/questions/174010/limit-network-bandwith-for-an-ip

トラフィックを監視するには、iftopをインストールしてください。

関連情報