コンテンツにスキップ

show mclag (mclagdctl) コマンド

概要

SONiC には show mclag という Click サブコマンドは存在しない。MCLAG の状態確認は mclagdctl コマンド経由で行い、これは iccpd コンテナ内の Unix ソケット (/var/run/iccpd/mclagdctl.sock) に接続する iccpd 由来のユーティリティである1

ホスト側の /usr/local/bin/mclagdctldocker exec -i iccpd mclagdctl "$@" を呼ぶだけのラッパーで、引数はそのままコンテナ内 mclagdctl に渡る2

コマンド一覧

mclagdctl.ccommand_types[] で実装されているサブコマンドは次の通り3:

コマンド 用途
mclagdctl -i <domain_id> dump state ICCP セッションの現在状態
mclagdctl -i <domain_id> dump arp MCLAG 同期されている ARP テーブル
mclagdctl -i <domain_id> dump nd 同 IPv6 neighbor (Neighbor Discovery)
mclagdctl -i <domain_id> dump mac 同 MAC テーブル
mclagdctl -i <domain_id> dump unique_ip unique-ip 機能を有効にした Vlan インタフェースの一覧
mclagdctl -i <domain_id> dump portlist local ローカル側 MCLAG メンバ port 一覧
mclagdctl -i <domain_id> dump portlist peer ピア側 port 一覧
mclagdctl -i <domain_id> dump debug counters デバッグカウンタ
mclagdctl -i <domain_id> config loglevel <level> iccpd のログレベル変更

-i <domain_id> は省略可で、その場合は CLI が自動的に唯一の domain を選ぶ (現状 SONiC は 1 ノードあたり 1 MCLAG ドメインしか作成できない: config mclag 参照)。

各コマンドの詳細

mclagdctl dump state

ICCP / KA セッションの状態と ToR 識別子、peer link、isolation 状態などを表示する。/etc/iccpd/iccpd.conf のロード状態と MCLAG_DOMAIN テーブルの設定値が想定通り適用されているかの確認に使う。

mclagdctl dump portlist local / peer

local は自ノードの MCLAG メンバ PortChannel + そのメンバ物理 port、peer はピア側からの ICCP メッセージで取得した port 状態。peer 側は ICCP セッション断絶中はステイル状態となる。

mclagdctl dump arp / dump nd / dump mac

ICCP 経由でピアと同期しているフォワーディングテーブルのスナップショット。Dual-ToR の片側でしか学習されていない MAC / ARP の検出に有用。

mclagdctl dump unique_ip

config mclag unique-ip addMCLAG_UNIQUE_IP に登録した Vlan インタフェース一覧。各 Vlan が ICCP プロトコル上で「unique-ip 有効」と認識されているかを確認できる。

mclagdctl config loglevel <level>

iccpd 内部のログレベル切替。値は iccpd の syslog 等でデバッグする際に動的に上げ下げする。

注意

  • mclagdctlshow mclag ではない。SONiC show Click ツリーには MCLAG 用サブコマンドが定義されていないため、CLI 補完や show -h には現れない。
  • 出力はパース対象として安定したフォーマットではない (人間向け固定列)。スクリプトから扱う際はバージョン差異に注意。
  • ピアとの ICCP 接続が落ちている状態では dump portlist peer dump arp 等は最後に同期したスナップショットのままになる。

関連リファレンス

引用元

実行例

典型的な使い方

# 例 1: MCLAG ブリーフ
show mclag brief

よくある引数の組み合わせ

show mclag interface 4095 PortChannel0002

期待される出力 (抜粋)

Domain ID    : 4095
Role         : active
Session State: up
Peer Link    : PortChannel0001
Local IP     : 10.0.0.1
Peer IP      : 10.0.0.2

データフロー (自動生成)

flowchart LR
  CLI["mclagdctl"]
  CDB0[("CONFIG_DB<br/>MCLAG_DOMAIN")]
  CDB0 --> CLI
  CDB1[("CONFIG_DB<br/>MCLAG_INTERFACE")]
  CDB1 --> CLI

凡例

show 系 (CONFIG_DB → CLI) のミニ図。テーブル → daemon 対応は docs/reference/config-db-orch-map.md から機械生成。

関連 Topics

運用ヒント

典型的な利用シーン

  • MC-LAG のピアリンク・keepalive・メンバ LAG の同期状態を確認する。
  • ARP/ND/MAC の同期 (mclag syncd) が想定どおり動いているかを判定する。

よくある落とし穴

  • show mclag brief は mclagdctl 経由で取得するため iccpd が落ちていると応答しない。
  • system MAC が両端で異なると LAG メンバが flap する。show mclag config で必ず確認。

関連する show / debug

show mclag brief
show mclag interface
mclagdctl -i 1000 dump state

関連 CLI コマンド