ウェブサイト検索

Ubuntuでネットワークバンディングまたはチーミングを構成する方法


ネットワークインターフェースのバンディングは、Linuxサーバーで使用されるメカニズムで、より多くの物理ネットワークインターフェースを結合することで、単一のインターフェースが提供できる以上の帯域幅を提供するか、ケーブルの故障時にリンク冗長性を提供します。この種のリンク冗長性は、Linuxではバンディング、チーミング、またはリンク集約グループ(LAG)などの複数の名前があります。

関連情報: RHEL/CentOSでのネットワークボンディングまたはチーミングの設定方法

Ubuntu または Debian ベースの Linux システムでネットワークボンディングメカニズムを使用するには、まずボンディングカーネルモジュールをインストールし、modprobe コマンドを使用してボンディングドライバが読み込まれているかテストする必要があります。

$ sudo modprobe bonding

古いリリースのDebianまたはUbuntuでは、以下のコマンドを実行してifenslaveパッケージをインストールする必要があります。

$ sudo apt-get install ifenslave

システム内の最初の2つの物理的なNCで構成されるボンドインターフェースを作成するには、以下のコマンドを発行してください。しかし、このボンドインターフェースの作成方法は一時的であり、システムの再起動後は維持されません。

$ sudo ip link add bond0 type bond mode 802.3ad
sudo ip link set eth0 master bond0
sudo ip link set eth1 master bond0

モード0タイプで永久的なボンドインターフェースを作成するには、下に示す抜粋のようにインターフェース設定ファイルを手動で編集する方法を使用します。

$ sudo nano /etc/network/interfaces
# The primary network interface
auto bond0
iface bond0 inet static
	address 192.168.1.150
	netmask 255.255.255.0	
	gateway 192.168.1.1
	dns-nameservers 192.168.1.1 8.8.8.8
	dns-search domain.local
		slaves eth0 eth1
		bond_mode 0
		bond-miimon 100
		bond_downdelay 200
		bond_updelay 200

ボンドインターフェイスをアクティブにするためには、ネットワークサービスを再起動するか、物理インターフェイスを停止してボンドインターフェイスを起動するか、またはマシンを再起動してカーネルが新しいボンドインターフェイスを認識できるようにします。

$ sudo systemctl restart networking.service
or
sudo ifdown eth0 && ifdown eth1 && ifup bond0

ボンドインターフェース設定は、以下のコマンドを発行することで確認できます。

$ ifconfig 
or 
ip a

下記のカーネルファイルの内容をcatコマンドで表示することで、バンドインターフェースに関する詳細を取得できます。

$ cat /proc/net/bonding/bond0

他の結合インターフェースメッセージを調査したり、結合物理NICSの状態をデバッグしたりするために、以下のコマンドを発行してください。

$ tail -f /var/log/messages

次に、mii-tool ツールを使用して、ネットワークインターフェースコントローラー (NIC) パラメーターを確認します。

$ mii-tool

ネットワークバンディングの種類は以下の通りです。

  • モード=0 (バランス-rr)
  • モード=1(アクティブバックアップ)
  • モード=2(バランス-排他的論理和)
  • モード=3 (ブロードキャスト)
  • モード=4 (802.3ad)
  • モード=5(バランス-TLB)
  • モード=6 (バランス-アルバ)

NICボンディングに関する詳細なドキュメントは、Linuxカーネルのドキュメントページで見つけることができます。

関連記事: