InfraLab

LACP / Link Aggregation 仕様

36 / 36 items

InfraLab Reference Series

Category: LACP

Updated: 2026-05-14

infralab.jp

lacp

36 items

LACP / Link Aggregation 仕様

Abstract

LACP/802.1AX の LACPDU、Actor/Partner、active/passive、状態フラグ、ロードバランスハッシュ、Cisco/Junos 設定とトラブル対応を整理。

Table of Contents

  1. 1. 概要 (IEEE 802.1AX)4
  2. 2. LACPDU7
  3. 3. ステート・モード10
  4. 4. ハッシュ・分散5
  5. 5. Cisco 設定4
  6. 6. Junos 設定3
  7. 7. トラブルシュート3
  8. 8. References19

1. 概要 (IEEE 802.1AX)

1.1. LACP とは

複数の物理リンクを 1 つの論理リンクとして束ね、冗長性と帯域を提供するリンクアグリゲーション制御プロトコル。

IEEE 802.3ad は現在 IEEE 802.1AX に移行。Link Aggregation Group (LAG)

1.2. フレーム識別

LACPDU は link-local MAC 宛に送られ、通常ブリッジで転送されない。

Dst MAC 01:80:C2:00:00:02、EtherType 0x8809、Subtype 0x01 (LACP)

1.3. LAG と Port-Channel

ベンダにより呼称は異なるが、物理 member を束ねた論理 interface が routing/switching の対象になる。

Cisco: Port-channel / EtherChannel。Junos: ae interface。Linux: bonding mode 4 (802.3ad)

1.4. Multi-Chassis LAG

2 台以上のスイッチをまたいで LAG を構成する技術。LACP 自体ではなくベンダ/方式ごとの制御プレーンを伴う。

MLAG / Cisco vPC / Juniper MC-LAG / EVPN multihoming は参考技術

2. LACPDU

2.1. LACPDU ヘッダ

Slow Protocols の 1 種として LACPDU を送る。Actor と Partner の TLV を含む。

EtherType 0x8809 / Subtype 0x01 / Version 0x01 / Actor TLV / Partner TLV / Collector TLV / Terminator

IEEE 802.1AX LACPDU ASCII 図:

   0                   1                   2                   3
   0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  |    Subtype    |    Version    |   TLV Type    |    TLV Len    |
  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  |         Actor Sys Pri         |         Actor Sys ID          |
  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  |                      Actor System ID ...                      |
  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  |           Actor Key           |        Actor Port Pri         |
  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  |          Actor Port           |     State     |   Reserved    |
  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  |           Reserved            |   TLV Type    |    TLV Len    |
  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  |        Partner Sys Pri        |        Partner Sys ID         |
  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  |                     Partner System ID ...                     |
  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  |          Partner Key          |       Partner Port Pri        |
  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  |         Partner Port          |     State     |   Reserved    |
  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  |                Collector / Terminator TLVs ...                |
  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

2.2. Actor System Priority

自装置のシステム優先度。System ID と組み合わせてアグリゲータ選択に使われる。

Actor System Priority 16bit。低い値が高優先。既定 32768 が多い

2.3. Actor System ID

自装置を識別する MAC アドレス。System Priority と合わせて一意に扱われる。

Actor System ID 48bit MAC

2.4. Actor Key

同じアグリゲーションに参加できるポートを束ねる識別子。速度、duplex、設定が異なると一致しない。

Actor Key 16bit。Operational Key が一致する member が同一 LAG 候補

2.5. Actor Port Priority / Port Number

メンバ選択や standby 選定に使うポート識別値。低い値が優先される。

Port Priority 16bit / Port Number 16bit

2.6. Partner 情報

相手装置から受信した System、Key、Port、State を保持し、双方の合意を確認する。

Partner System Priority / System ID / Key / Port Priority / Port Number / State

2.7. Collector TLV

Collector Max Delay を通知する TLV。通常の運用で直接調整することは少ない。

Collector TLV Type=0x03、Length=16、Max Delay 16bit

3. ステート・モード

3.1. active モード

自発的に LACPDU を送信し、相手が active/passive なら LAG を形成できる。

Cisco: channel-group <n> mode active。Junos: lacp active

3.2. passive モード

相手からの LACPDU に応答する。両端 passive では開始されず LAG は形成されない。

active/passive は成立、passive/passive は不成立

3.3. static mode on

LACP 交渉なしに静的に束ねる。片側不一致でもリンクが上がることがあり、誤配線時のリスクが高い。

Cisco: channel-group <n> mode on。no-negotiate 相当。LACPDU なし

3.4. Slow / Fast rate

LACPDU 送信間隔。障害検出速度と制御トラフィック量のトレードオフ。

Slow periodic=30s。Fast periodic=1s。Timeout は short 約3s、long 約90s

3.5. Activity flag

active/passive の動作を示す State bit。active なら自発送信する。

State bit 0: Activity。1=Active、0=Passive

3.6. Timeout flag

短タイムアウトか長タイムアウトかを示す。fast rate では short timeout になる。

State bit 1: Timeout。1=Short timeout、0=Long timeout

3.7. Aggregation / Synchronization flag

Aggregation は集約可能性、Synchronization は相手と選択状態が同期していることを示す。

State bit 2 Aggregation、bit 3 Synchronization。Sync=1 で collecting/distributing へ進める

3.8. Collecting / Distributing flag

Collecting は受信、Distributing は送信に member を使っていることを示す。

State bit 4 Collecting、bit 5 Distributing。両方 1 が正常 member の目安

3.9. Defaulted / Expired flag

相手情報が既定値か、タイムアウトしかけかを示す。片方向障害や LACPDU loss の判断材料になる。

State bit 6 Defaulted、bit 7 Expired

3.10. Selection Logic

速度、duplex、key、partner 情報などが一致する member を同じ aggregator に選択する。

同一 Actor/Partner Key、同一速度/duplex、同一 partner system が基本条件

4. ハッシュ・分散

4.1. ロードバランスの基本

単一フローを複数リンクへ分割するのではなく、ハッシュ結果でフロー単位に member を選ぶ。

1 flow は通常 1 member。総帯域は複数フロー時に効く。順序入れ替え防止が目的

4.2. MAC ベースハッシュ

L2 情報だけで分散する方式。ルータ越しの通信では gateway MAC に偏ることがある。

src-mac / dst-mac / src-dst-mac

4.3. IP ベースハッシュ

送信元・宛先 IP を使い、L3 通信の分散を改善する。サーバ数や通信ペアに偏りがあると不均等になる。

src-ip / dst-ip / src-dst-ip

4.4. L4 ポートベースハッシュ

送信元・宛先ポートも使うことで、多数の TCP/UDP フローをより細かく分散できる。

src-port / dst-port / src-dst-port / 5-tuple。断片化パケットや非 TCP/UDP は別扱い

4.5. 偏りの見方

member ごとの packet/byte counters を確認し、ハッシュ種別と通信パターンが合っているかを見る。

単一大容量フローは 1 本に偏る。iperf parallel streams で分散確認

5. Cisco 設定

5.1. Cisco 最小設定

物理 interface に同一 channel-group を設定し、論理 Port-channel 側に VLAN/trunk/routing 設定を集約する。

interface range Gi1/0/1-2; channel-group 10 mode active; interface Port-channel10; switchport mode trunk

5.2. Cisco load-balance

装置全体または platform ごとの port-channel ハッシュ方式を設定する。

port-channel load-balance src-dst-ip / src-dst-port。確認: show etherchannel load-balance

5.3. Cisco EtherChannel Guard

不整合な EtherChannel 設定を検出し、誤転送やループを避ける防御機構。

spanning-tree etherchannel guard misconfig。確認: show spanning-tree inconsistentports

5.4. Cisco 確認コマンド

Port-channel 状態、member 状態、LACP neighbor、ハッシュ設定を確認する。

show etherchannel summary / show lacp neighbor / show interfaces port-channel 10 / show lacp internal

6. Junos 設定

6.1. Junos 最小設定

chassis aggregated-devices で ae 数を確保し、物理 interface を 802.3ad ae に参加させる。

set chassis aggregated-devices ethernet device-count 4; set interfaces ge-0/0/0 ether-options 802.3ad ae0; set interfaces ae0 aggregated-ether-options lacp active

6.2. Junos periodic fast

高速検出が必要な場合、LACP periodic fast を設定する。対向も対応しているか確認する。

set interfaces ae0 aggregated-ether-options lacp periodic fast

6.3. Junos 確認コマンド

ae member、LACP 状態、分散統計を確認する。

show lacp interfaces / show interfaces ae0 extensive / show interfaces extensive | match LACP

7. トラブルシュート

7.1. よくある不一致

active/passive、速度、duplex、native VLAN、allowed VLAN、MTU、LACP rate、member 本数の不一致を確認する。

症状: individual/suspended/defaulted。確認: 両端の key、partner system、collecting/distributing

7.2. 片方向障害

光片方向や中間障害では link up のまま LACPDU が欠落し、Expired/Defaulted になることがある。

確認: LACP timeout, UDLD, DOM power, CRC/FCS, errdisable, member counters

7.3. MTU 不一致

Port-channel は up でも member 間または対向との MTU 不一致で一部通信だけ落ちることがある。

確認: interface MTU、system jumbo、ping DF、show interface counters errors

8. References

  1. LACP
  2. 802.3ad
  3. 802.1AX
  4. Link Aggregation
  5. LAG
  6. Port-channel
  7. EtherChannel
  8. Actor
  9. Partner
  10. active
  11. passive
  12. LACPDU
  13. 01:80:C2:00:00:02
  14. 0x8809
  15. MLAG
  16. vPC
  17. MC-LAG
  18. ハッシュ
  19. リンクアグリゲーション
Related