こんにちは、ネットワールド西日本技術部 SE の山下大輔です。
前回は Dell Enterprise SONiCのパスワードリカバリと初期化についてご紹介しました。
今回はスイッチの冗長化機能であるMulti Chassis LAG Group(MCLAG)についてご紹介します。
Dell Power SwitchのOS10ではVLTと呼ばれている機能です。
CiscoではVPC、HPE ArubaではVSXと呼ばれるなど、各社名称や実装が異なります。
今回の記事が他社OSとの比較や、OS10からSONiC OSになり設定がどのように
変わったのか、参考になれば幸いです。

- ■MCLAGの主な特徴
- ■検証構成と用語解説
- ■SW01コンフィグ
- ■SW02コンフィグ
- ■SW01ステータス確認
- ■SW02ステータス確認
- ■MCLAG PortChannelの設定
- ■MCLAG PortChannelのステータス確認
- まとめ
マルチシャーシリンクアグリゲーショングループ(Multi-Chassis Link Aggregation Group、略称MCLAG)
はネットワーク技術の一つで、
複数のスイッチを統合して一つの論理スイッチとして機能させることを目的としています。
MCLAGによって、冗長性の確保と帯域幅の向上を実現することができます。
■MCLAGの主な特徴
- 冗長性の提供
MCLAGは複数のスイッチ間でリンクを集約することで、
単一のスイッチが故障した場合でもネットワークが継続的に機能します。
これによりシステム全体の信頼性が向上します。 - ループフリーのネットワーク
MCLAGはスパニングツリープロトコルを使用せずにループフリーのレイヤー2ネットワークを提供します。
これにより、データトラフィックの効率が向上します。 - 負荷分散
複数の物理リンクを束ねることで、トラフィックを効率的に分散させることができます。
これにより、帯域幅の利用が最適化され、ネットワークのスループットが向上します。
このように、MCLAGを使うことで様々なメリットを得ることができます。
SONiCでは、2台のピアスイッチ間でMCLAGを構成します。
■検証構成と用語解説
※OSは4.5.1-Enterprise_Standardを使用しています。
- MCLAG Domain
MCLAGを構成するスイッチのドメインとして使用されます。
本構成ではドメインID:1を使用します。
- MCLAG Peer link
2台のスイッチ間でMCLAGを構成するための主要なL2リンクです。
MCLAGピア間のデータのバックアップ経路等に使用されます。
シングルリンクでも構成は可能ですが、LACPによる冗長化が推奨されます。
本構成ではポートチャネル55を使用します。
- MCLAG Peer Keepalive Link
2台のスイッチ間のハートビートとして使用するためのL3リンクです。
対向スイッチの生存確認を行い、スプリットブレインを防ぎます。
本構成ではプライマリにVLAN3966にIPアドレスを設定し、
バックアップには管理IPアドレスを使用します。
■SW01コンフィグ
admin@SW01:~$ sonic-cli
SW01#
ポートチャネル55の設定
SW01# configure
SW01(config)# interface PortChannel55 mode active
SW01(config-if-po55)# switchport trunk allowed Vlan all
SW01(config-if-po55)# no shutdown
SW01(config-if-po55)# end
SW01#
SW01# configure
SW01(config)# interface range Eth 1/55-1/56
%Info: Configuring only existing interfaces in range
SW01(config-if-range-eth**)# channel-group 55
SW01(config-if-range-eth**)# end
SW01#
VLANインターフェース3966の設定
SW01# configure
SW01(config)# interface Vlan 3966
SW01(config-if-Vlan3966)# ip address 10.255.255.253/30
SW01(config-if-Vlan3966)# mclag-separate-ip
SW01(config-if-Vlan3966)# no shutdown
SW01(config-if-Vlan3966)# end
SW01#
MCLAGの設定
SW01# configure
SW01(config)# mclag domain 1
SW01(config-mclag-domain-1)# peer-link PortChannel 55
SW01(config-mclag-domain-1)# source-ip 10.255.255.253
SW01(config-mclag-domain-1)# peer-ip 10.255.255.254
SW01(config-mclag-domain-1)# mclag-system-mac 00:11:22:33:44:55
SW01(config-mclag-domain-1)# backup-keepalive session-vrf mgmt
SW01(config-mclag-domain-1)# backup-keepalive source-ip 10.30.1.111
SW01(config-mclag-domain-1)# backup-keepalive peer-ip 10.30.1.112
SW01(config-mclag-domain-1)# end
SW01#
以上でSW01の設定は完了です。
■SW02コンフィグ
admin@SW02:~$ sonic-cli
SW02#
ポートチャネル55の設定
SW02# configure
SW02(config)# interface PortChannel55 mode active
SW02(config-if-po55)# switchport trunk allowed Vlan all
SW02(config-if-po55)# no shutdown
SW02(config-if-po55)# end
SW02#
SW02# configure
SW02(config)# interface range Eth 1/55-1/56
%Info: Configuring only existing interfaces in range
SW02(config-if-range-eth**)# channel-group 55
SW02(config-if-range-eth**)# end
SW02#
VLANインターフェース3966の設定
SW02# configure
SW02(config)# interface Vlan 3966
SW02(config-if-Vlan3966)# ip address 10.255.255.254/30
SW02(config-if-Vlan3966)# mclag-separate-ip
SW02(config-if-Vlan3966)# no shutdown
SW02(config-if-Vlan3966)# end
SW02#
MCLAGの設定
SW02# configure
SW02(config)# mclag domain 1
SW02(config-mclag-domain-1)# peer-link PortChannel 55
SW02(config-mclag-domain-1)# source-ip 10.255.255.254
SW02(config-mclag-domain-1)# peer-ip 10.255.255.253
SW02(config-mclag-domain-1)# mclag-system-mac 00:11:22:33:44:55
SW02(config-mclag-domain-1)# backup-keepalive session-vrf mgmt
SW02(config-mclag-domain-1)# backup-keepalive source-ip 10.30.1.112
SW02(config-mclag-domain-1)# backup-keepalive peer-ip 10.30.1.111
SW02(config-mclag-domain-1)# end
SW02#
以上でSW02の設定は完了です。
■SW01ステータス確認
Peer Linkのケーブルを接続し、MCLAGのステータスを確認します。
SW01# show mclag brief
Domain ID : 1
Role : active
Session Status : up
Peer Link Status : up
Source Address : 10.255.255.253
Peer Address : 10.255.255.254
Session Vrf : default
Peer Link : PortChannel55
Keepalive Interval : 1 secs
Session Timeout : 30 secs
Delay Restore : 300 secs
System Mac : fc:4c:ea:4e:49:22
Mclag System Mac : 00:11:22:33:44:55
Backup Keepalive Session Information:
-----------------------------------
Session Vrf : mgmt
Session Status : up
Source Address : 10.30.1.111
Peer Address : 10.30.1.112
Keepalive Interval : 30 secs
-----------------------------------
Number of MLAG Interfaces:0
SW01#
RoleがactiveとしてMCLAGが構成されています。
これは、MCLAGで設定したsource-ipとpeer-ipの大小関係により、
小さい方がactiveとして選定されるためです。
その他、Session StatusやPeer Link Statusがupしているかどうかを確認しましょう。
■SW02ステータス確認
SW02# show mclag brief
Domain ID : 1
Role : standby
Session Status : up
Peer Link Status : up
Source Address : 10.255.255.254
Peer Address : 10.255.255.253
Session Vrf : default
Peer Link : PortChannel55
Keepalive Interval : 1 secs
Session Timeout : 30 secs
Delay Restore : 300 secs
System Mac : fc:4c:ea:4e:49:22
Mclag System Mac : 00:11:22:33:44:55
Gateway Mac : 1a:1b:1c:dd:ee:ff
Backup Keepalive Session Information:
-----------------------------------
Session Vrf : mgmt
Session Status : up
Source Address : 10.30.1.112
Peer Address : 10.30.1.111
Keepalive Interval : 30 secs
-----------------------------------
Number of MLAG Interfaces:0
SW02#
こちらはRoleがstandbyとしてMCLAGが構成されています。
Session StatusやPeer Link Statusもupしており、
スイッチ間で正しくMCLAGが構成されていることが確認できます。
MCLAGの設定ができたので、MCLAG PortChannelを作成してみましょう。
■MCLAG PortChannelの設定
ポートチャネルを作成する際に、「mclag 1」を追加します。
OS10のVLTでは2台のスイッチでチャネル番号を合わせていましたが、
SONiCではドメインIDを指定する点がポイントです。
SW01# configure
SW01(config-if-po17)# interface PortChannel 17 mode active
SW01(config-if-po17)# mclag 1
SW01(config-if-po17)# no shutdown
SW01(config-if-po17)# exit
SW01(config)# interface Eth 1/17
SW01(config-if-Eth1/17)# channel-group 17
SW01(config-if-Eth1/17)# end
SW01#
SW02# configure
SW02(config-if-po17)# interface PortChannel 17 mode active
SW02(config-if-po17)# mclag 1
SW02(config-if-po17)# no shutdown
SW02(config-if-po17)# exit
SW02(config)# interface Eth 1/17
SW02(config-if-Eth1/17)# channel-group 17
SW02(config-if-Eth1/17)# end
SW02#
■MCLAG PortChannelのステータス確認
MCLAGのステータスを改めて確認すると、MCLAG PortChannelの情報が出てきました。
2台のスイッチで、ポートチャネル17がupしていることが確認できます。
SW01# show mclag brief
Domain ID : 1
Role : active
Session Status : up
Peer Link Status : up
Source Address : 10.255.255.253
Peer Address : 10.255.255.254
Session Vrf : default
Peer Link : PortChannel55
Keepalive Interval : 1 secs
Session Timeout : 30 secs
Delay Restore : 300 secs
System Mac : fc:4c:ea:4e:49:22
Mclag System Mac : 00:11:22:33:44:55
Backup Keepalive Session Information:
-----------------------------------
Session Vrf : mgmt
Session Status : up
Source Address : 10.30.1.111
Peer Address : 10.30.1.112
Keepalive Interval : 30 secs
-----------------------------------
Number of MLAG Interfaces:1
-----------------------------------------------------------
MLAG Interface Local/Remote Status
-----------------------------------------------------------
PortChannel17 up/up
SW02# show mclag brief
Domain ID : 1
Role : standby
Session Status : up
Peer Link Status : up
Source Address : 10.255.255.254
Peer Address : 10.255.255.253
Session Vrf : default
Peer Link : PortChannel55
Keepalive Interval : 1 secs
Session Timeout : 30 secs
Delay Restore : 300 secs
System Mac : fc:4c:ea:4e:49:22
Mclag System Mac : 00:11:22:33:44:55
Gateway Mac : 1a:1b:1c:dd:ee:ff
Backup Keepalive Session Information:
-----------------------------------
Session Vrf : mgmt
Session Status : up
Source Address : 10.30.1.112
Peer Address : 10.30.1.111
Keepalive Interval : 30 secs
-----------------------------------
Number of MLAG Interfaces:1
-----------------------------------------------------------
MLAG Interface Local/Remote Status
-----------------------------------------------------------
PortChannel17 up/up
まとめ
今回はDell Enterprise SONiCのMCLAGについて紹介しました。いかがでしたでしょうか。
Dell Enterprise SONiCのsonic-cliのおかげで、とても簡単に設定できましたね。
その他の機能もsonic-cliで設定することができます。今後もいろいろ試してみたいと思います。
免責事項
- 本書は、株式会社ネットワールド(以下 弊社)が作成・管理します。
- 本書の記載内容の一部または全部を弊社に無断で改変・転載することを禁じます。
- 本書の記載内容は、一部または全部が将来予告無く変更されることがあります。
- 本書の利用は、利用者様の責任において行われるものとします。
- 本書の記載内容には、最善の注意を払っておりますが、正確性・完全性を保証するものではありません。
従いまして、本書の利用によって生じたあらゆる損害に関して、弊社は一切の責任を負いません。