EtherChannel

目次

EtherChannelとは何か

EtherChannelは、複数の物理リンクをまとめて1つの論理的なリンクとして扱う技術です。一般的には「リンクアグリゲーション」と呼ばれますが、Cisco機器ではEtherChannelという名前で実装されています。

例えば、1Gbpsのリンクを2本まとめれば2Gbpsの帯域幅として利用でき、10Gbpsリンクを2本まとめれば20Gbpsに拡張できます。さらに、スパニングツリーにおいても1本のリンクとして認識されるため、ループ防止のために一方のリンクがブロックされることもなく、冗長構成を取りながら帯域を有効活用できます。もし1本のリンクが故障しても、残りのリンクで通信が継続されるため、耐障害性も向上します。

機種によっては2本だけでなく、4本や8本といったより多くのリンクを束ねることも可能です。FastEthernet、GigabitEthernet、10GigabitEthernetの各インターフェースで利用できます。

L2 EtherChannel と L3 EtherChannel

EtherChannelには2つの種類があります。

種類スイッチポート設定説明
L2 EtherChannelswitchport複数のスイッチポートをまとめて1つの論理的なL2ポートとする
L3 EtherChannelno switchport複数のルーテッドポートをまとめて1つのL3インターフェースとする

L3 EtherChannelを使用すると、ルーティングプロトコルも1つのリンクとして扱ってくれるため、EtherChannelの中の1本に障害があってもルーティングの再収束は不要です。

Port-Channelとは

Port-Channelとは、EtherChannelで束ねられた論理ポートのことです。設定を行うときには、物理ポートごとではなくPort-Channelに対して設定を適用します。例えば、VLANやトランクの設定はPort-Channelインターフェースにまとめて行います。

なお、EtherChannelに参加する物理ポートはすべて同じ設定(スピード、デュプレックス、VLAN番号、トランク/アクセスの種別など)でなければなりません。設定が揃っていないとEtherChannelは正しく形成されません。

EtherChannelの形成方法

EtherChannelは、スタティックまたはダイナミックの2つの方法で形成できます。

方法説明
スタティックネゴシエーションを行わず、強制的にEtherChannelを作成する
ダイナミックPAgPやLACPといったプロトコルを使い、ネゴシエーションでEtherChannelを形成する

ダイナミック方式を利用すると、プロトコルを通じて自動的にEtherChannelを生成・維持できます。ただし、両端のポートで同じプロトコルを使用する必要があります。

  • PAgP(Cisco独自、最大8ポートまで)
  • LACP(IEEE 802.3ad標準、最大16ポート。ただし同時に利用できるのは8ポートで残りはスタンバイ)

Cisco同士ならPAgPでもよいですが、マルチベンダー環境やサーバ接続では標準のLACPが一般的に使われます。

PAgPのモード

PAgPには2つの動作モードがあります。

モード説明
auto受信したPAgPに応答はするが、自分からはネゴシエーションを開始しない
desirable積極的にPAgPを送信し、ネゴシエーションを開始する

EtherChannelを形成するには、両方が「desirable」、もしくは一方が「desirable」でもう一方が「auto」である必要があります。両方が「auto」の場合は形成されません。Ciscoではdesirableモードの利用を推奨しています。

LACPのモード

LACPも同様に2つのモードがあります。

モード説明
passive受信したLACPに応答はするが、自分からはネゴシエーションを開始しない
active積極的にLACPを送信し、ネゴシエーションを開始する

EtherChannelを形成するには、両方が「active」、もしくは一方が「active」で他方が「passive」である必要があります。両方が「passive」の場合は形成されません。

LACPにおけるアクティブポートとスタンバイポート

LACPでは最大16本の物理リンクをまとめられますが、実際にアクティブに使えるのは8本までです。残りのポートはスタンバイに回されます。どのポートがアクティブ/スタンバイになるかは、システムプライオリティの値とポート番号に基づいて決定されます。プライオリティの小さいスイッチが優先され、そこから最大8本がアクティブポートとして選ばれます。

試験対策:
・EtherChannelは帯域拡張+冗長性確保のための技術
・L2とL3の違い(switchportの有無)
・設定対象は物理ポートではなくPort-Channel
・スタティック/ダイナミック方式の違い
・PAgPとLACPのモード組み合わせと形成条件
・LACPでは8ポートまでアクティブ、それ以上はスタンバイ

これらは実務でも試験でも頻出の内容なので、表と動作条件を整理して覚えることが重要です。

EtherChannelのロードバランシングの仕組み

EtherChannelでは、複数の物理リンクにまたがってトラフィックを分散(ロードバランシング)することができます。これにより、帯域の有効活用とネットワーク全体のパフォーマンス向上が期待できます。

Catalystスイッチでは、さまざまな条件に基づいてどのリンクを利用するかを決定する仕組みが用意されています。これは「ハッシュ演算」と呼ばれる方法で行われ、フレームやパケットの特定フィールドを参照してリンクを選択します。

ロードバランス方式の種類

代表的なロードバランス方式は以下の通りです。

転送方式コマンド説明
送信元MACアドレスsrc-mac送信元MACアドレスをもとに分散
宛先MACアドレスdst-mac宛先MACアドレスをもとに分散
送信元IPアドレスsrc-ip送信元IPアドレスをもとに分散
宛先IPアドレスdst-ip宛先IPアドレスをもとに分散
送信元+宛先MACアドレスsrc-dst-mac送信元と宛先MACアドレスの組み合わせで分散
送信元+宛先IPアドレスsrc-dst-ip送信元と宛先IPアドレスの組み合わせで分散
送信元ポート番号src-port送信元ポート番号に基づき分散
宛先ポート番号dst-port宛先ポート番号に基づき分散
送信元+宛先ポート番号src-dst-port送信元と宛先ポート番号の組み合わせで分散

これらの方式を切り替えることで、通信の特性に応じた効率的なロードバランスを実現できます。

デフォルト値の違い

Catalystスイッチの種類によって、デフォルトで採用される方式が異なります。

  • ボックス型の1RUスイッチ
    デフォルトは 送信元MACアドレスベース(src-mac)
  • 大型シャーシ型スイッチ
    デフォルトは 送信元+宛先IPアドレスベース(src-dst-ip)

この違いは試験で狙われやすい部分なので要チェックです。

ロードバランス方式選定の注意点

ロードバランス方式は基本的にデフォルトのままで問題ありませんが、宛先(dst-)だけに依存した方式を選ぶと、効率的に分散されない場合があります。

例えば、複数の端末が同じサーバにアクセスする環境では、すべての通信の宛先MACアドレスや宛先IPアドレスが同じになります。その場合、ロードバランシングがうまく機能せず、特定のリンクに負荷が集中してしまいます。

このようなケースでは、「src-dst-ip」や「src-dst-mac」など、送信元と宛先の組み合わせを利用した方式が有効です。

ボックス型CatalystスイッチのEtherChannelにおけるデフォルト値

機能デフォルト値
ロードバランス方式送信元MACアドレスに基づく分散(src-mac)
ポートチャネル論理インターフェース未定義
PAgPモードデフォルトなし
PAgP学習方式すべてのポートで集約ポートラーニング
PAgPプライオリティすべてのポートで128
LACPモードデフォルトなし
LACP学習方式すべてのポートで集約ポートラーニング
LACPポートプライオリティすべてのポートで32768
LACPシステムプライオリティ32768
LACPシステムIDシステムプライオリティ+スイッチのMACアドレス

試験対策:
・ロードバランス方式の種類とそれぞれの条件
・ボックス型とシャーシ型でのデフォルト値の違い
・宛先アドレスのみの方式だとリンク利用が偏る可能性がある
・最適な方式はネットワークの通信特性によって選択する

特に「デフォルトは機種によって異なる」という点は、正誤問題として出題されやすいため注意して覚えておきましょう。

L2 EtherChannelの設定方法

L2 EtherChannelを構築するには、まとめたい物理ポートにchannel-groupコマンドを設定します。この設定を行うと、自動的に論理ポート(Port-Channelインターフェース)が生成され、そこに対して追加の設定を行えるようになります。

基本コマンド構文

(config)# interface interface-id
(config-if)# channel-group group-number mode [ auto | desirable | on | active | passive ]
引数説明
group-number1~48の範囲で指定するポートチャネル番号
autoPAgPを使った受け身のネゴシエーション。対向は「desirable」である必要あり
desirablePAgPを使った積極的なネゴシエーション。対向が「auto」または「desirable」で動作
onネゴシエーションを行わず、強制的にチャネル化(スタティック設定)
passiveLACPを使った受け身のネゴシエーション。対向は「active」である必要あり
activeLACPを使った積極的なネゴシエーション。対向が「active」または「passive」で動作

設定例

スタティックEtherChannel

(config)# interface range gigabitethernet 1/0/1 -2
(config-if-range)# switchport trunk encapsulation dot1q
(config-if-range)# switchport mode trunk
(config-if-range)# channel-group 1 mode on

LACPを利用したEtherChannel

(config)# interface range gigabitethernet 1/0/1 -2
(config-if-range)# switchport trunk encapsulation dot1q
(config-if-range)# switchport mode trunk
(config-if-range)# channel-group 1 mode active

PAgPを利用したEtherChannel

(config)# interface range gigabitethernet 1/0/1 -2
(config-if-range)# switchport trunk encapsulation dot1q
(config-if-range)# switchport mode trunk
(config-if-range)# channel-group 1 mode desirable non-silent

PAgPでは「non-silent」オプションを指定するのが推奨です。これは、対向機器がPAgPに対応していることを前提に動作するための設定です。もし「silent」のままでは、対向がPAgP非対応であってもチャネル形成を試みてしまう場合があるためです。

実際のネットワークでは、スイッチ間のEtherChannelはスタティック設定(mode on)が多く、サーバ接続ではLACP(mode active)がよく使われます。

ロードバランス設定

EtherChannelでのトラフィック分散方式は、以下のコマンドで指定できます。

(config)# port-channel load-balance { dst-ip | dst-mac | src-dst-ip | src-dst-mac | src-ip | src-mac }

ボックス型Catalystスイッチではデフォルトで「src-mac」が選択されます。基本的にはこのままで問題ありませんが、通信要件によっては宛先やIPベースの方式に変更することもあります。

ステータス確認コマンド

コマンド説明
show etherchannel summaryどの物理ポートがPort-Channelに含まれているかを確認
show etherchannel detailsummaryより詳細な状態を確認
show etherchannel load-balance現在のロードバランス方式を確認
show lacp neighborLACPで形成したEtherChannelの隣接スイッチ情報を確認
show pagp neighborPAgPで形成したEtherChannelの隣接スイッチ情報を確認

試験対策:
channel-groupコマンドのモードと対応条件
・PAgPとLACPでのモードの違い(auto/desirable、passive/active)
・スタティック設定(mode on)の特徴
・PAgPでの「non-silent」の意味
・EtherChannelのロードバランス方式の指定方法とデフォルト値
show etherchannel summary などの確認コマンド

特にモードの組み合わせ条件とデフォルト動作は試験で出題されやすいため、確実に覚えておきましょう。

L3 EtherChannel の基本

レイヤ3 EtherChannel とは、複数の物理インターフェースを束ねて1つの論理インターフェース(Port-Channel)として扱い、その論理インターフェースをルーティング可能なポートとして利用する仕組みです。通常のスイッチポート(L2ポート)とは異なり、ルーティングが可能な「ルーテッドポート」として動作させる必要があります。そのため、物理ポートと論理インターフェースの両方で L2 機能を無効化することがポイントです。試験でもよく問われる「no switchport」の意味をしっかり理解しておきましょう。

L3 EtherChannel の構成手順

最初にルーティング機能を有効化し、その後物理ポートをチャネルグループにまとめます。次に Port-Channel インターフェースに IP アドレスを割り当て、最後に有効化すれば完了です。

(config)# ip routing
(config)# interface interface-id
(config-if)# no switchport
(config-if)# channel-group group-number mode [ auto | desirable | on | active | passive ]
(config)# interface port-channel port-channel-id
(config-if)# no switchport
(config-if)# ip address アドレス サブネットマスク
(config-if)# no shutdown

ここで「ip routing」を忘れると、ルーティング機能が働かず、単なるポートの束ねにしかなりません。CCNA 試験では「設定したのに疎通しない」原因としてよく出題されるので要注意です。

channel-group の動作モード

EtherChannel を構成する際には、動作モードの理解が重要です。代表的なモードは以下の通りです。

モード特徴対向ポートの条件
autoPAgP のパッシブ動作。自分からは積極的に交渉しない相手が desirable
desirablePAgP のアクティブ動作。自分から交渉を開始相手が auto または desirable
on協調プロトコルを使わず、強制的にチャネル化相手も on
passiveLACP のパッシブ動作。交渉を受ける側相手が active
activeLACP のアクティブ動作。自分から交渉を開始相手が active または passive

試験対策:「どの組み合わせで EtherChannel が形成されるか」という問題が頻出します。表の対応関係をしっかり暗記しておきましょう。

設定例

例えば 2 台のスイッチ間で 2 本のリンクを L3 EtherChannel としてまとめる場合の設定例を見てみます。

SWA の設定

Catalyst(config)# ip routing
Catalyst(config)# interface range gigabitethernet1/0/23 - 24
Catalyst(config-if-range)# no switchport
Catalyst(config-if-range)# channel-group 10 mode on
Catalyst(config)# interface port-channel 10
Catalyst(config-if)# no switchport
Catalyst(config-if)# ip address 172.16.1.1 255.255.255.0
Catalyst(config-if)# no shutdown

SWB の設定

Catalyst(config)# ip routing
Catalyst(config)# interface range gigabitethernet1/0/23 - 24
Catalyst(config-if-range)# no switchport
Catalyst(config-if-range)# channel-group 10 mode on
Catalyst(config)# interface port-channel 10
Catalyst(config-if)# no switchport
Catalyst(config-if)# ip address 172.16.1.2 255.255.255.0
Catalyst(config-if)# no shutdown

ここで「no switchport」が両方の設定で繰り返されている点に注目してください。これは物理ポートも Port-Channel も必ずルーテッドポート化する必要があるからです。

ロードバランスの仕組み

EtherChannel では複数の物理リンクを並列に使うため、どのリンクを使うかを決めるロードバランス方式が存在します。デフォルトでは「送信元 MAC アドレス(src-mac)」に基づいて振り分けられます。

もし要件に応じて変更したい場合は、次のように設定します。

(config)# port-channel load-balance dst-ip | dst-mac | src-dst-ip | src-dst-mac | src-ip | src-mac

現在の設定を確認する場合は次のコマンドです。

# show etherchannel load-balance

試験対策:「どの条件でロードバランスされるか」を問う問題が出るため、src/dst のどちらを使っているかを区別できるようにしておきましょう。

ステータス確認コマンド

EtherChannel の動作確認に役立つコマンドも試験頻出です。

コマンド内容
show etherchannel summaryどの物理ポートがどの Port-Channel に含まれているか確認
show etherchannel detailsummary より詳細な情報を確認
show etherchannel load-balance現在のロードバランス方式を確認
show lacp neighborLACP で形成された EtherChannel の隣接情報を確認
show pagp neighborPAgP で形成された EtherChannel の隣接情報を確認

特に「summary コマンドで ‘P’(port-channel member)や ‘I’(standalone)などの状態を見分ける」点が CCNA 試験では狙われやすいポイントです。

LACP スタンバイポートの仕組み

EtherChannel を形成する際、PAgP は最大 8 本のリンクしか束ねられませんが、LACP では最大 16 本の物理ポートを 1 つの Port-Channel にまとめることが可能です。ただし、実際に同時利用できるのは 8 ポートまでで、残りは「スタンバイポート」として待機します。障害が発生した場合やアクティブポートが不足した場合に、このスタンバイポートが自動的に繰り上がって利用される仕組みです。

では、どのポートがアクティブになり、どのポートがスタンバイになるのか。ここで登場するのが LACP プライオリティ です。LACP プライオリティは以下の 4 項目から決定され、数値が小さい方が優先されます。

  1. LACP システムプライオリティ
  2. システム ID(スイッチの MAC アドレス)
  3. LACP ポートプライオリティ
  4. ポート番号

決定の流れは次の通りです。

  • Step1:システムプライオリティとシステム ID を比較し、優先度が高いスイッチが選ばれる
  • Step2:選ばれたスイッチの中で、ポートプライオリティとポート番号に基づきアクティブ/スタンバイを決定

ここで重要なのは、Step1 で負けたスイッチ側のポートは Step2 に進めず、その時点で優先順位から外れる点です。

LACP システムプライオリティの設定

システム全体としての優先度を決めるのが LACP システムプライオリティ です。値は 0 ~ 65535 の範囲で指定でき、デフォルトは 32768 です。小さい値を設定するほど、そのスイッチが LACP の優先候補になります。

(config)# lacp system-priority priority

例として、あるスイッチを優先的にアクティブにしたい場合、priority を 100 など小さい値に設定します。

LACP ポートプライオリティの設定

同じスイッチ内で複数のポートが候補になった場合に使われるのが LACP ポートプライオリティ です。これも 0 ~ 65535 の範囲で指定でき、デフォルトは 32768 です。値が小さいポートほど優先的にアクティブに選ばれます。

(config)# interface interface-id
(config-if)# lacp port-priority priority

たとえば 2 本のポートを同時に接続している場合、priority 100 を設定した方がアクティブに選ばれ、もう片方がスタンバイになります。

試験では「あるポートをスタンバイに回したい場合、どの設定を変更するか」といった形で出題されることがあります。

PAgP の学習方式(参考)

LACP とは別に、PAgP を使う場合には「MAC アドレスをどこで学習するか」が問題になります。PAgP では以下の 2 種類の学習方式があります。

  • 物理ラーナー:各物理ポート単位で MAC アドレスを学習する方式
  • 集約ラーナー:Port-Channel 論理インターフェースで MAC アドレスを学習する方式

現行のスイッチは集約ラーナーがデフォルトです。しかし、古い Catalyst 機種と接続する場合、相手が物理ラーナーの可能性があり、その場合はこちらも物理ラーナーに設定を揃える必要があります。

設定例は以下の通りです。

(config)# interface interface-id
(config-if)# pagp learn-method physical-port

また、PAgP で使用するポートの優先度も指定可能です。値の範囲は 0 ~ 255、デフォルトは 128 です。値が大きいほど転送で選ばれる確率が高くなります。

(config-if)# pagp port-priority priority

ただし、この設定を使うのは特殊なケースであり、通常はデフォルトのままで問題ありません。

試験対策:
・LACP では 最大 16 本接続できるが、同時利用は 8 本まで という点は頻出。
・プライオリティは 数値が低い方が優先される。システムプライオリティとポートプライオリティの違いを整理して覚えること。
・PAgP のラーナー方式は実機問題やトラブルシューティング系の出題で登場することがある。特に「古い機種と接続したら動かない」原因を問われる場合に関連する知識。

◆まとめスライド

目次