この記事では、私は、Linux上のネットワークトラフィックを制限するには、2つの異なる方法を説明します。
Linux上でアプリケーショントラフィックを制限(レートはANのLinux上のアプリケーションを制限します)
ネットワークトラフィックの速度を制限する方法は、コマンドラインツールを使用してトリクルと呼ばれています。
実行することにより、レート制限ソケットライブラリのメソッドで事前にロードされ、トリクルコマンドを使用すると、いずれか1つの特定のプログラムの流れを変更することができます。
トリクルコマンドは、便利な機能を持っている、それが唯一のユーザ空間で実行されることであるあなたがプログラムの帯域幅の使用を制限するために、root権限を必要としないことを意味し、。
帯域幅トリクルプログラム制御プログラムを使用できるようにするには、プログラムは非静的リンクライブラリソケットインタフェースを使用する必要があります。
あなたは、プログラムが速度制限の内蔵の帯域制御機能を持っていないたい場合は、トリクルを助けすることができます。
インストールトリクル
Ubuntuの、Debianとその誘導体のリリースでインストールトリクル:
$ sudoのTR ickleいとしのインストールapt-getを
Fdora又は(EPELデポーを有する)のCentOS / RHELで:
$ sudoのyumのTR ickleいとしのインストール
トリクルの基本的な使用
ただ、単にあなたが前に実行するコマンドにコマンド(およびレートパラメータ)をトリクル。
$トリクル-d <ダウンロードレート> -u <アップロード速度> <コマンド>
これは、指定したレート制限値(キロバイト/秒単位)の<コマンド>のダウンロードおよびアップロードします。
例えば、SCPセッションを提供最大アップロード帯域幅は、100 KB / sです。
$トリクル-u 100 SCP backup.tgz alice@remote_host.com:
あなたはあなたのFirefoxブラウザのために(例えば、300キロバイト/秒)の最大ダウンロード速度を設定するには、次のコマンドを使用し、創造の方法によりスターターをカスタマイズすることができ、希望する必要があります。
trickle -d 300 firefox %u
最後に、トリクルも、このモードでは、デーモンモードで実行することができ、それはプログラムのトリクルと実行して、すべてのスタートの総帯域幅を制限します。これは、(例えば、細流)トリクルデーモンとして開始しました:
$ sudo trickled -d 1000
一度バックグラウンドで実行されているデーモンを細流、あなたはトリクルコマンドによって他のプログラムを起動することができます。あなたはトリクル経由でプログラムを起動する場合は、このプロセスの最大ダウンロード速度1000 KB /秒になりますあなたはトリクル経由で別のプログラムを起動した場合、その後、各プログラムについて(ダウンロード)レートリミットは500キロバイトに制限されます/ sの、などが挙げられます。
Linuxのネットワークインターフェイスを制限
もう一つは、あなたの帯域幅リソースを制御する各インターフェイスの帯域幅を制限する方法です。あなたが他の人とあなたのアップストリーム帯域幅のネットワーク接続を共有する場合に特に便利です。他と同じように、Linuxはあなたのためにそれを行うためのツールを持っています。wondershaperはそれをやっています。
実際wondershaper流量調整コマンドを定義するには、TCを使用するシェルスクリプトは、特定のネットワーク・インタフェースを処理するためにQoSを使用しています。異なる優先キュー上の発信トラフィックは、発信トラフィックのレートを制限する目的を達成するために、パケット損失率によって着信トラフィックは、限定の目的を達成します。
実際にはその帯域幅の制限を向上させるだけのインタフェースではありませんwondershaper、述べた目的、一括ダウンロードまたは進行中のアップロード時に、wondershaperもSSH、低レイテンシなどのインタラクティブセッションを維持しようとしました。同様に、それはまた、一括アップロードを制御する(例えば、Dropboxの同期)は、その逆のダウンロード「窒息」とすることはありません。
インストールwondershaper
WondershaperはUbuntuの、Debianのその誘導体に取り付けられました:
$ sudoのwondershaperをインストールapt-getを
(EPELデポと)FdoraのwondershaperまたはCentOSの/ RHELに搭載されました:
$ sudoのyumをwondershaperをインストール
基本的な使い方wondershaper
$ sudoをwondershaper <インターフェース> <ダウンロードレート> <アップロード速度>
$ WonderShaperネットワークインターフェース[名前] [下り速度(KB)アップストリーム速度] [(KB)]
例えば、最大eth0をダウンロード/アップロード帯域幅が1000Kbit / sおよび500Kbit / sに設定されています。
$ sudoをwondershaper eth0の1000年500
あなたはまた、レート制限は、次のコマンドを実行することによって除去することができます。
明確なeth0のwondershaper $ sudoを
あなたが作品のwondershaperに興味があるなら、あなたはシェルスクリプトでそれを読むことができます(/ sbinに/ wondershaper)