GNU/Linux >> Linux の 問題 >  >> Linux

Wondershaperを使用してLinuxでネットワーク帯域幅を制限する方法

このチュートリアルは、LinuxおよびUnixオペレーティングシステムでネットワーク帯域幅を簡単に制限し、ネットワークトラフィックを形成するのに役立ちます。ネットワーク帯域幅の使用を制限することで、パッケージマネージャー(pacman、yum、apt)、Webブラウザー、トレントクライアント、ダウンロードマネージャーなどのアプリケーションによる不要な帯域幅の消費を節約できます。帯域幅を制限すると、ネットワーク内の1人または複数のユーザーによる帯域幅の乱用も防止されます。 Wondershaperに挨拶します 、システムのネットワークアダプタの帯域幅を制限するための簡単なスクリプト。 iprouteのtcを使用して帯域幅を制限します コマンドですが、操作が大幅に簡素化されます。 Wondershaperは、インターネットまたはローカルネットワークの帯域幅の使用を制限するために私が遭遇した中で最も簡単で迅速なソリューションの1つです。

Wondershaperは、ルーターやモデムのインターフェースではなく、ローカルネットワークインターフェースの着信および発信トラフィックのみを制限できることに注意してください。つまり、Wondershaperは、ローカルシステム自体のネットワーク帯域幅のみを制限し、ネットワーク内の他のシステムは制限しません。このユーティリティは、主にローカルシステムの1つまたは複数のネットワークアダプタの帯域幅を制限するために設計されています。 Wondershaperを使用してネットワークトラフィックを形成する方法を見てみましょう。

LinuxにWondershaperをインストールする

最新バージョンをインストールするには、git clone wondershaperリポジトリ:

$ git clone  https://github.com/magnific0/wondershaper.git

wondershaperディレクトリに移動し、以下のようにインストールします

$ cd wondershaper
$ sudo make install

また、次のコマンドを実行して、再起動するたびにワンダーシェイパーサービスを自動的に開始します。

$ sudo systemctl enable wondershaper.service
$ sudo systemctl start wondershaper.service

ディストリビューションのパッケージマネージャー(公式または非公式)を使用してインストールすることもできます。

WondershaperはAURで利用できます 、したがって、 YayなどのAURヘルパープログラムを使用してArchベースのシステムにインストールできます。 。

$ yay -S wondershaper-git

Debian、Ubuntu、Linux Mintの場合:

$ sudo apt-get install wondershaper

Fedoraの場合:

$ sudo dnf install wondershaper

RHEL、CentOSで、EPELリポジトリを有効にし、以下に示すようにwondershaperをインストールします。

$ sudo yum install epel-release
$ sudo yum install wondershaper

最後に、再起動するたびに自動的にワンダーシェイパーサービスを開始します。

$ sudo systemctl enable wondershaper.service
$ sudo systemctl start wondershaper.service

Wondershaperを使用してLinuxのネットワーク帯域幅を制限する

まず、ネットワークインターフェイスの名前を見つけます。ネットワークカードの詳細を見つける一般的な方法は次のとおりです。

$ ip addr
$ route
$ ifconfig

ネットワークカード名を見つけたら、以下に示すように帯域幅レートを制限できます。

$ sudo wondershaper -a <adapter> -d <rate> -u <rate>

たとえば、ネットワークカード名が enp0s8の場合 帯域幅を1024Kbpsに制限したい ダウンロードの場合 および512kbps アップロードの場合 、コマンドは次のようになります:

$ sudo wondershaper -a enp0s8 -d 1024 -u 512

どこで、

  • -a :ネットワークカード名
  • -d :ダウンロード率
  • -u :アップロード率

ネットワークアダプタから制限をクリアするには、次のコマンドを実行するだけです。

$ sudo wondershaper -c -a enp0s8

または

$ sudo wondershaper -c enp0s8

ご使用のシステムで複数のネットワークカードを使用できる場合に備えて、上記のように各ネットワークインターフェースカードのダウンロード/アップロードレートを手動で設定する必要があります。

GitHubリポジトリのクローンを作成してWondershaperをインストールした場合は、 wondershaper.confという名前の構成ファイルがあります。 /etc/conf.d/に存在します 位置。このファイルの適切な値(ネットワークカード名、ダウンロード/アップロードレート)を変更して、ダウンロードまたはアップロードレートを設定していることを確認してください。

$ sudo nano /etc/conf.d/wondershaper.conf
[wondershaper]
# Adapter
#
IFACE="eth0"

# Download rate in Kbps
#
DSPEED="2048"

# Upload rate in Kbps
#
USPEED="512"

Wondershaperの前のサンプルは次のとおりです:

Wondershaperを有効にする前のダウンロードレート

Wondershaperを有効にした後:

ワンダーシェイパーを有効にした後のダウンロード率

ご覧のとおり、Ubuntu 18.04 LTSサーバーでWondershaperを使用して帯域幅を制限した後、ダウンロード速度が大幅に低下しました。

推奨される読み物:

  • LinuxにNetDataパフォーマンス監視ツールをインストールする
  • vnStat-LinuxおよびBSDでネットワーク帯域幅を監視する

詳細については、次のコマンドを実行してヘルプセクションを表示してください。

$ wondershaper -h

または、マニュアルページを参照してください。

$ man wondershaper

テストされた限り、Wondershaperは上記のように問題なく動作しました。試してみて、このユーティリティについてどう思いますか。


Linux
  1. Ansibleを使用してLinuxユーザーを作成する方法

  2. vnStat を使用して Linux でネットワーク トラフィックを監視する方法

  3. ネットワーク帯域幅を制限するには?

  1. gdbを使用してLinuxでCプログラムをデバッグする方法

  2. LinuxでプロセスのCPU使用率を制限する方法

  3. vnStat を使用して Linux でネットワーク トラフィックを監視およびログに記録する方法

  1. Linux VPSでCS:GOサーバーを作成する方法

  2. dd を使用してネットワーク経由で Linux ディスク パーティションのクローンを作成する方法

  3. Linux で rsync 転送速度を制限/調整する方法