手当たり次第に書くんだ

飽きっぽいのは本能

Ubuntu 26.04 Bonding の基本設定

Ubuntu 26.04 で Bonding を使うと、複数の NIC を 1 つの論理インターフェースとして扱えます。主な目的は、物理 NIC 障害時の通信継続、リンク冗長化、構成の単純化です。

この記事では Netplan で Bonding を作る基本を扱います。Bonding はサーバー側だけで完結する設定ではなく、特に 802.3ad を使う場合はスイッチ側の LAG / LACP 設定と必ずセットで考えます。

この記事で扱うこと

  • Ubuntu 26.04 で Bonding を使う目的を整理する
  • 802.3adactive-backup の基本的な違いを確認する
  • Netplan で bond インターフェースを定義し、反映後に状態を確認する
項目この記事の例実作業で見るポイント
対象 OSUbuntu 26.04Ubuntu Server を前提にします。
Bond IFbond0複数 NIC をまとめる論理インターフェースです。
構成 NICens160 / ens192bond に参加させる物理 NIC または仮想 NIC です。
LACP モード802.3adスイッチ側の LAG / LACP 設定が必要です。
冗長化モードactive-backup単純な冗長化を目的にする場合に扱いやすいモードです。
固定 IPv4192.0.2.10/24例示用アドレスです。実際の管理セグメントに変更します。
  1. Step 1

    Bonding の目的を決める

    冗長化、LACP によるリンク集約、仮想化ホストの uplink など、目的を先に決めます。

  2. Step 2

    スイッチ側設定を確認する

    802.3ad を使う場合は、スイッチ側の LACP 設定と対象ポートを確認します。

  3. Step 3

    Netplan に bond を定義する

    物理 NIC から IP アドレスを外し、bond 側にアドレス、ルート、DNS を設定します。

  4. Step 4

    構文確認して反映する

    netplan generatenetplan try で確認してから反映します。

  5. Step 5

    bond の状態を確認する

    /proc/net/bonding/bond0、IP アドレス、ルート、疎通を確認します。

参考
書籍
参考書籍

Advanced Ubuntu Administration and Management Best Practices

Ubuntu Server のネットワーク設定や運用項目を体系的に確認したい場合の参考書籍です。価格や在庫はリンク先で確認してください。

Amazon で見る

このリンクは Amazon アソシエイトリンクです。

Bonding の用途

Bonding は、複数の NIC を 1 つの論理インターフェースとして扱うための仕組みです。単に帯域を増やすためだけではなく、NIC 障害時の冗長化や、仮想化ホスト・ストレージノードの uplink 整理にも使います。

  • 物理 NIC 障害時の冗長化
  • 複数リンクによる帯域確保
  • 仮想化ホストやストレージノードの uplink 集約
  • Bridge や VLAN の下位インターフェースとして使う

補足: Bonding はサーバー側の設定だけではなく、スイッチ側の設計と合わせて成立します。特に 802.3ad は、対向スイッチの LACP 設定が前提です。

モードを決める

Bonding では mode の選択が重要です。よく使うのは LACP を使う 802.3ad と、片系障害に備える active-backup です。

  • 802.3ad: スイッチ側の LACP 設定が必要
  • active-backup: スイッチ側の設定が比較的単純
  • balance-rr など: 環境によって扱いに注意が必要

注意: 802.3ad をサーバー側だけで設定しても、スイッチ側が LACP として構成されていなければ期待どおりに動きません。まず対向ポートの設定を確認します。

NIC を確認する

Bonding に入れる物理 NIC を確認します。すでに IP アドレスを設定している NIC を bond に入れる場合は、アドレスは bond 側へ移します。

コマンド

ip link
ip address

LACP Bonding の Netplan 例

次は ens160ens192bond0 にまとめ、802.3ad で動かす例です。IP アドレス、DNS、デフォルトルートは bond0 側に設定します。

設定ファイル例

network:
  version: 2
  ethernets:
    ens160: {}
    ens192: {}
  bonds:
    bond0:
      interfaces:
        - ens160
        - ens192
      addresses:
        - 192.0.2.10/24
      routes:
        - to: default
          via: 192.0.2.1
      nameservers:
        addresses:
          - 192.0.2.53
      mtu: 1500
      parameters:
        mode: 802.3ad
        mii-monitor-interval: 100
        lacp-rate: fast
        transmit-hash-policy: layer3+4

active-backup の例

スイッチ側で LACP を組まない場合は、active-backup の方が扱いやすい場合があります。帯域集約ではなく、片系障害時の切り替えを主目的にする構成です。

設定ファイル例

network:
  version: 2
  ethernets:
    ens160: {}
    ens192: {}
  bonds:
    bond0:
      interfaces:
        - ens160
        - ens192
      addresses:
        - 192.0.2.10/24
      routes:
        - to: default
          via: 192.0.2.1
      parameters:
        mode: active-backup
        mii-monitor-interval: 100

補足: active-backup は構成が比較的単純ですが、実際に障害時に切り替わるかは別途確認が必要です。ケーブル抜線やスイッチポート停止など、検証できる範囲で切り替えを確認します。

設定を反映する

Bonding の反映では、SSH の接続経路が変わる可能性があります。コンソールや別経路で復旧できる状態にしてから作業します。

注意: 管理用 NIC を bond に組み込む場合、反映時に SSH が切断される可能性があります。既存の SSH セッションを残し、可能ならコンソールアクセスを確保してから作業します。

コマンド

sudo netplan generate
sudo netplan try

確認: netplan try で接続や名前解決に問題がないことを確認してから、設定を永続反映します。

コマンド

sudo netplan apply

状態を確認する

反映後は bond の状態、所属 NIC、ルート、疎通を確認します。/proc/net/bonding/bond0 には、現在のモード、参加 NIC、リンク状態などが表示されます。

確認: bond0 に IP アドレスが付いていること、参加 NIC が期待どおりであること、デフォルトルートとゲートウェイ疎通が成立していることを確認します。

コマンド

cat /proc/net/bonding/bond0
ip address show bond0
ip route
ping -c 3 192.0.2.1

まとめ

Bonding は NIC 冗長化や帯域確保に有効ですが、サーバー側だけで完結しない構成です。Ubuntu 側の Netplan 設定、スイッチ側の LACP、MTU、障害時の切り替わり確認をまとめて見ることが重要です。

次に読む記事

Ubuntu 26.04 Bonding の基本設定

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)

トップへ戻る