My Home NW Lab

逸般の誤家庭のネットワーク

Catalyst 9800におけるPolicy ProfileのVLANの指定方法

Catalyst 9800におけるPolicy ProfileのVLANの指定方法は vlan-name (名称指定) と vlan-id (番号指定) の2通りあります。

Configuration GuideではMode別 (Local modeとFlexConnect mode)で動作が異なるような書き方になっております。 しかし、FlexConnectの技術要素を細分化するとCentral SwitchingとLocal Switchingの通信方式があります。 そのため、Mode別と言うよりかは通信方式で動作が異なると認識した方が覚えやすいかもしれません。

条件によってVLANの割り当てが変わると混乱しやすくなるので、関連する設定などを含めて情報を整理しました。 なお、本記事の実機検証による裏付けはCatalyst 9800-CLの v17.13.1 で確認を行っております。

重要な点

混乱を避けるために重要な点を先ず記載します。

  • Policy Profileの VLAN/VLAN Group の設定項目は、通信方式がCentral Switchingの場合はWLC側 (CLIvlan コマンド)のVLAN定義を、Local Switchingの場合は無線AP側 (Flex Profile)のVLAN定義を参照します。

  • 意図しないVLANの割り当て避けたいのであれば vlan-name (名称)を指定するのが確実的です。

  • Local modeとFlexConnect modeのCentral Switchingは、ともに無線LAN端末の通信がWLCを介するため、VLANの割り当ては同じ動作に分類されます。

動作の整理

表形式で情報を整理しました。表が崩れないように画像データとして下記に掲載します。

Catalyst 9800におけるPolicy ProfileのVLANの指定方法

文字情報としても下記に同様の内容を記載します。

通信方式: Central Switching

  • 対象Mode: Local mode & FlexConnect mode Central Switching

  • vlan-name: default

    • default の名称と対応する VLAN 1 が割り当たります。
    • VLAN 1 の名称が default で固定となり、他のIDへの変更は不可です。
    • Flex Profileの方に default の名称でVLAN定義をしても参照されません。
  • vlan-name: VLAN123 ※default 以外の名称指定

    • vlan-name の名称と対応するVLAN IDが割り当たります。
  • vlan-id: 1

    • WMI (Wireless Management Interface)と同じVLANが割り当たります。
    • 例えば、WMIがSVIの Vlan123 であれば VLAN 123 が割り当たります。

通信方式: Local Switching

  • 対象Mode: FlexConnect mode Local Switching

  • vlan-name

    • Flex Profileに vlan-name と同じ名称でVLANの定義が必要です。
    • Flex ProfileのVLAN定義の名称に対応したVLAN IDが割り当たります。
    • Tagged/Untaggedの判断はFlex ProfileのNative VLAN IDに依存します。
    • Native VLAN IDと同じ場合はFlex Profileの VLAN タブでの定義は不要です。
  • vlan-id: 1

    • Flex ProfileのNative VLAN IDが割り当たります。
    • Flex ProfileにVLANの定義は不要です。

要素別の整理

VLANの割り当てに影響する要素を設定画面と一緒に整理します。

VLAN ID 1 (default) の名称は変更不可

vlan 1 の vlan-name (名称)は default で変更は不可です。そのため vlan-name: default と表記して特別視しています。

VLAN ID 1 (default) の名称は変更不可

Web UIの画面キャプチャだと VLAN ID 1 が変更不可になっているのが分かりにくいため、CLIのログを掲載しておきます。

wlc01# configure terminal
Enter configuration commands, one per line.  End with CNTL/Z.
wlc01(config)#
wlc01(config)# vlan 1
wlc01(config-vlan)# name RENAME_TEST
%Default VLAN 1 may not have its name changed.
wlc01(config-vlan)#

通信方式とVLANの定義

Cisco IOS/IOS-XE系の経験者には vlan コマンドでSwitchingに必要なVLANを定義するのは馴染み深いと思います。

Catalyst 9800もIOS-XE系ではありますが、WLC側と無線AP側の2つのVLANを定義する個所が出てきます。 そしてCentral/Local Switchingの通信方式の違いによって、VLANの定義が必要な個所も異なります。

通信方式とVLANの定義

WLC側のVLAN定義

Central Switchingの通信方式の場合は、WLCを介する通信となるためWLC側にVLAN定義が必要になります。 設定としては、メニュー: Configuration > Layer2 > VLAN が該当します。 CLIではCisco IOS/IOS-XE系で馴染み深い vlan コマンドに該当します。

WLC側のVLAN定義

無線AP側のVLAN定義

Local Switchingの通信方式の場合は、無線APから直接通信が出ていくため無線AP側にVLAN定義が必要になります。
設定としてはFlex Profileで無線AP側のVLANを定義します。

SSIDと紐付くPolicy ProfileのVLAN IDがNative VLAN IDと同じ場合は、Flex Profileの VLAN タブでの設定は不要です。

Flex Profileの VLAN タブに、
* Native VLAN IDを定義しているDefinedな場合は、Policy Profileから対象のVLANを指定しても動作します。
* Native VLAN IDを定義していないNot definedな場合は、Policy Profileで vlan-id: 1 を指定します。

無線AP側のVLAN定義

Policy ProfileでのVLANの参照

Policy Profileの VLAN/VLAN Group のドロップダウン リストではWLC側のVLAN定義しか選択候補に表れないので注意してください。

Policy ProfileでのVLANの参照

通信方式がCentral Switching且つWMIがRouted Portの場合

Central Switchingの通信方式の際に、Policy Profileに vlan-id: 1 を指定するとWMI (Wireless Management Interface)のVLAN IDが参照されます。 そして、WMIはSVI (Switch Virtual Interface)だけでなくRouted Portも設定可能な点に留意してください。

WMIがRouted Portの場合は VLAN ID 0 (Zero) の扱いとなって無線LAN接続に失敗しました。下記はその時のログです。

Dec 28 2023 23:13:24.392 JST: %SESSION_MGR-5-FAIL: Chassis 1 R0/0: wncd: Authorization failed or unapplied for client (****.****.****) on Interface capwap_90000005 AuditSessionID 000000000000002BB0C5D482. Failure Reason: VLAN Failure. Failed attribute name 0.

Failure Reason: VLAN Failure. Failed attribute name 0. の部分より VLAN ID 0 (Zero) を割り当てようとして失敗しているのが分かります。

通信方式がCentral Switching且つWMIがRouted Portの場合

ちなみに、一部の例外を除いてCatalyst 9800のWMIにはSVIの使用がBest Practicesで推奨されています。

Cisco Catalyst 9800 Series Configuration Best Practices - Cisco
https://www.cisco.com/c/en/us/products/collateral/wireless/catalyst-9800-series-wireless-controllers/guide-c07-743627.html#Wirelessmanagementinterface

It is recommended that you use a Switched VLAN Interface (SVI) as the WMI for all deployments, including Foreign -Anchor for guest traffic. The only exceptions would be for C9800-CL in a public cloud, where it is mandatory to use a Layer 3 port for wireless management; and for the embedded wireless in Cisco Catalyst 9000 switches, where a loopback interface is recommended.

動作が異なる故の利点

動作が異なる故の利点で、筆者が思い浮かぶものを記載しておきます。
利点の一例を挙げてるだけで活用を推奨してるわけではありません。 混乱の元にもなり得るので活用する場合は十分に検討してください。

WMIと同じVLANになる動作の利点

Central Switchingの場合に vlan-id: 1 を指定するとWMIと同じVLANが割り当たります。 Policy Profileの VLAN/VLAN Group のデフォルト値は vlan-id: 1 となるため、明示的に設定変更しなくても最低限の設定で使える状態になるのが利点です。

WMIと同じVLANになる動作の利点

Flex ProfileのNative VLAN IDと同じになる動作の利点

Local Switchingの場合に vlan-id: 1 を指定すると無線APのNative VLAN IDが割り当たります。 Native VLAN IDはどのような値であってもUntaggedとなってID情報が付与されないため、Uplink側のSwitchでは無線APの管理通信と同じように処理されます。
また、Native VLAN IDはFlex Profileの VLAN タブでVLAN定義が不要な利点があります。

システム内でのVLAN重複を避ける設計だと、拠点別に無線APのNative VLAN IDが異なってくるため、VLAN情報が異なるPolicy Profileを拠点別に作成する必要があります。 しかし本動作を利用するとUntaggedで通信するSSIDに限れば、わざわざ拠点数に比例してPolicy Profileを作成する労力が不要になります。 ただし、複数のSSIDでVLANを分けて通信を分離する必要が出てくると、設計が破綻しかねないので留意してください。

Flex ProfileのNative VLAN IDと同じになる動作の利点

無線LAN端末へのVLAN IDの割り当ての確認方法

無線LAN端末にどのVLAN IDが割り当てられたかは下記のコマンドで確認ができます。

show wireless client vlan summary

実行例を記載します。VLANVLAN name の項目を参照してください。

wlc01# show wireless client vlan summary
Number of Clients: 1

MAC Address    AP Name                                        Type ID   State             Method     Role       VLAN VLAN name
-----------------------------------------------------------------------------------------------------------------------------------------
****.****.**** ap01                                           WLAN 1    Run               None       Local      102  VLAN102          

wlc01#

show wireless client vlan summary

情報源

Best Practices

Best Practicesの Use of VLAN 1 in a Policy Profile のセクションの記述が、後述のConfiguration Guideより明確な情報が書かれています。
特に強調すべき点は、Local ModeとFlexConnect Central Switchingが同等な点がBest Practicesでは明記されています。

Cisco Catalyst 9800 Series Configuration Best Practices - Cisco
https://www.cisco.com/c/en/us/products/collateral/wireless/catalyst-9800-series-wireless-controllers/guide-c07-743627.html#UseofVLAN1inaPolicyProfile

The behavior is different depending on the AP mode. For an AP in local mode/Flex Central switching:

● Specifying vlan-name = default, client is assigned to VLAN 1

● Using vlan-id 1, a client is assigned to the wireless management VLAN

There is a warning to remind a user of this.

For an AP in FlexConnect local switching mode:

● Specifying vlan-name = default, client is assigned to VLAN 1

● Using vlan-id 1, a client is assigned to the FlexConnect native VLAN

By default, if the user does not configure anything under the policy profile, the WLC assigns vlan-id 1 so clients will use the wireless management VLAN in local mode and the AP native VLAN for FlexConnect.

Configuration Guide

Configuration Guideでは対象Versionの Restrictions for VLANs を参照してください。下記は 17.13.x のドキュメントです。

Cisco Catalyst 9800 Series Wireless Controller Software Configuration Guide, Cisco IOS XE 17.13.x - VLANs [Cisco Catalyst 9800 Series Wireless Controllers] - Cisco
https://www.cisco.com/c/en/us/td/docs/wireless/controller/9800/17-13/config-guide/b_wl_17_13_cg/m_config_vlan_ewlc_cg.html#id_109551

  • The behavior of VLAN 1 changes depending on the AP mode. These scenarios are described below:

    • Local mode AP: If you use vlan-name, clients are assigned to VLAN 1. However, if you use vlan-id 1, clients are assigned to the wireless management interface.

    • FlexConnect mode AP: If you use vlan-name, clients are assigned to VLAN 1. However, if you use vlan-id 1, clients are assigned to the native VLAN defined in the flex profile.

vlan-namedefault を前提とした書き方になっています。 特筆すべきなのは、どちらのModeであっても vlan-id: 1 を指定した際の動作が「他の設定に依存」する特殊な点です。

Bug Search Toolより関連情報

本件に関連する事象の情報があるため書き残しておきます。 Bugというより仕様の明確化に分類される情報だと思われます。