Rocky Linuxでのネットワーク帯域幅の制限設定方法

Rocky Linuxでのネットワーク帯域幅の制限設定方法

この記事では、Rocky Linuxでネットワーク帯域幅を制限する方法について解説します。帯域幅の制限は、ネットワークリソースを効率的に管理し、過剰なトラフィックが他のアプリケーションに影響を与えないようにするために有用です。

1. 帯域幅制限の必要性と利点

ネットワーク帯域幅の制限を行うことで、トラフィックの混雑を防ぎ、システムの安定性を向上させることができます。特に、サーバーで多数のユーザーが同時にアクセスする場合や、特定のアプリケーションのトラフィック量を抑えたい場合に役立ちます。

2. tc(Traffic Control)ツールの確認

帯域幅を制御するために、Rocky Linuxにはtcコマンドがインストールされています。まず、iproute2パッケージがインストールされているかを確認します。

sudo dnf install -y iproute-tc

3. ネットワークインターフェースの確認

帯域幅制限を設定するインターフェースを確認します。以下のコマンドで利用可能なネットワークインターフェースを一覧表示します。

ip link show

4. tcを使用して帯域幅を制限する

次に、特定のネットワークインターフェースに帯域幅制限を適用します。以下は、ダウンロード帯域幅を1Mbpsに制限する例です。

sudo tc qdisc add dev eth0 root tbf rate 1mbit burst 32kbit latency 400ms

5. アップロード帯域幅の制限

アップロード帯域幅も同様に制限できます。以下のコマンドで、アップロード速度を500Kbpsに設定する例を示します。

sudo tc qdisc add dev eth0 root handle 1: htb default 10
sudo tc class add dev eth0 parent 1: classid 1:1 htb rate 500kbit

6. 帯域幅制限の確認と削除

設定が正しく適用されているかを確認し、不要になった制限を削除する場合は次のコマンドを使用します。

設定の確認
sudo tc qdisc show dev eth0

帯域幅制限の削除
sudo tc qdisc del dev eth0 root

7. IPアドレス別に帯域幅を制限する方法

特定のIPアドレスに対して帯域幅制限を適用する場合は、iptablestcを併用します。以下の例では、IPアドレス192.168.1.10のダウンロード帯域幅を200Kbpsに制限しています。

sudo iptables -A OUTPUT -t mangle -d 192.168.1.10 -j MARK --set-mark 10
sudo tc qdisc add dev eth0 root handle 1: htb default 12
sudo tc class add dev eth0 parent 1: classid 1:10 htb rate 200kbit

8. 永続化の設定

再起動後も帯域幅制限設定を保持するために、スクリプトを作成して自動実行されるように設定することをおすすめします。以下のようにスクリプトファイルを作成し、起動時に実行するように設定します。

sudo nano /etc/network/if-up.d/bandwidth_limit

スクリプト内容
!/bin/bash
tc qdisc add dev eth0 root tbf rate 1mbit burst 32kbit latency 400ms

まとめ

Rocky Linuxでのネットワーク帯域幅の制限は、システム全体のパフォーマンス管理に役立ちます。tcコマンドを使用することで、簡単に帯域幅の設定と調整が可能です。各アプリケーションやユーザーに合わせた最適な設定を行い、安定したネットワーク環境を構築しましょう。