はじめに
このドキュメントでは、Cisco Spacesでキャプティブポータルを設定する方法について説明します。
前提条件
このドキュメントでは、Catalyst 9800ワイヤレスLANコントローラ(C9800 WLC)上のクライアントが、外部Web認証ログインページとしてスペースを使用できるようにします。
要件
次の項目に関する知識があることが推奨されます。
- 9800ワイヤレスコントローラへのコマンドラインインターフェイス(CLI)またはグラフィックユーザインターフェイス(GUI)アクセス
- Cisco Spaces
使用するコンポーネント
このドキュメントの情報は、次のソフトウェアとハードウェアのバージョンに基づいています。
- 9800-Lコントローラバージョン16.12.2s
このドキュメントの情報は、特定のラボ環境にあるデバイスに基づいて作成されました。このドキュメントで使用するすべてのデバイスは、クリアな(デフォルト)設定で作業を開始しています。本稼働中のネットワークでは、各コマンドによって起こる可能性がある影響を十分確認してください。
背景説明
Web認証は、サプリカントやクライアントユーティリティを必要としないシンプルなレイヤ3認証方式です。これは可能です
a) C9800 WLCの内部ページを使用して、そのまま、または変更後の設定を行います。
b)カスタマイズされたログインバンドルをC9800 WLCにアップロードする。
c)外部サーバでホストされるカスタムログインページ。
Spacesが提供するキャプティブポータルを活用することは、基本的にC9800 WLC上のクライアントに外部Web認証を実装する方法です。
外部Web認証プロセスの詳細については、「Cisco Catalyst 9800シリーズコントローラでのWebベース認証」を参照してください。
C9800 WLCでは、仮想IPアドレスはグローバルパラメータマップで定義され、通常は192.0.2.1です
設定
ネットワーク図
9800コントローラをシスコスペースに接続
コントローラは、直接接続、スペースコネクタ経由、またはCMXテザリングのいずれかのオプションを使用してスペースに接続する必要があります。
この例では、Direct Connectオプションが使用されていますが、キャプティブポータルはすべてのセットアップで同じ方法で設定されています。
コントローラをCisco Spacesに接続するには、HTTPS経由でCisco Spaces Cloudに到達できる必要があります。9800コントローラをスペースに接続する方法の詳細については、『スペース – 9800コントローラの直接接続』を参照してください。
スペースでのSSIDの作成
ステップ 1:スペースのダッシュボードでキャプティブポータルをクリックします。
ステップ 2:キャプティブポータル固有のメニューを開き、ページの左上隅にある3行のアイコンをクリックして、SSIDをクリックします。
ステップ 3:Import/Configure SSIDをクリックし、Wireless Network typeとしてCUWN (CMX/WLC) を選択して、SSID名を入力します。
9800コントローラでのACLおよびURLフィルタの設定
ワイヤレスクライアントからのトラフィックは、認証が完了するまでネットワーク上で許可されません。Web認証の場合、これを完了するには、ワイヤレスクライアントがこのSSIDに接続してIPアドレスを受け取り、クライアントポリシーマネージャの状態がWebauth_reqd状態に移行します。クライアントはまだ認証されていないため、クライアントIPアドレスを送信元とするすべてのトラフィックは、DHCP、DNS、およびHTTP(代行受信およびリダイレクト)を除いてドロップされます。
デフォルトでは、Web認証WLANを設定すると、9800はハードコードされた事前認証ACLを作成します。これらのハードコードされたACLにより、DHCP、DNS、および外部Web認証サーバへのトラフィックが許可されます。残りはすべて、HTTPトラフィックと同様にリダイレクトされます。
ただし、特定の非HTTPトラフィックタイプの通過を許可する必要がある場合は、事前認証ACLを設定できます。次に、既存のハードコードされた事前認証ACL(このセクションのステップ1で取得)の内容を模倣し、必要に応じて拡張する必要があります。
ステップ 1:現在のハードコードされたACLを確認します。
CLI による設定:
Andressi-9800L#show ip access list
Extended IP access list WA-sec-10.235.248.212
10 permit tcp any host 10.235.248.212 eq www
20 permit tcp any host 10.235.248.212 eq 443
30 permit tcp host 10.235.248.212 eq www any
40 permit tcp host 10.235.248.212 eq 443 any
50 permit tcp any any eq domain
60 permit udp any any eq domain
70 permit udp any any eq bootpc
80 permit udp any any eq bootps
90 deny ip any any
Extended IP access list WA-v4-int-10.235.248.212
10 deny tcp any host 10.235.248.212 eq www
20 deny tcp any host 10.235.248.212 eq 443
30 permit tcp any any eq www
40 permit tcp any host 192.0.2.1 eq 443
WA-sec-10.235.248.212は、自動Web認証(WA)セキュリティ(sec)ACLまたはポータルIP 10.235.248.212であるため、そのように呼ばれます。 セキュリティACLは、許可(permit)またはドロップ(deny)するものを定義します。 Wa-v4-intは代行受信ACL、つまりパントACLまたはリダイレクトACLであり、リダイレクトのために(permitで)CPUに送信される内容または(denyで)データプレーンに送信される内容を定義します。
WA-v4-int10.235.248.212が最初にクライアントからのトラフィックに適用され、データプレーン上のSpaces portal IP 10.235.248.212に向かうHTTP(s)トラフィックを保持します(まだドロップまたは転送アクションではなく、データプレーンへのハンドオーバーのみ)。Webサーバによって処理される仮想IPトラフィックを除くリダイレクト用に、すべてのHTTP(s)トラフィックをCPUに送信します。他のタイプのトラフィックはデータプレーンに与えられます。
WA-sec-10.235.248.212は、Web認証パラメータマップで設定したCisco DNAスペースIP 10.235.248.212へのHTTPおよびHTTPSトラフィックを許可し、DNSおよびDHCPトラフィックも許可し、残りはドロップします。代行受信されるHTTPトラフィックは、このACLに到達する前にすでに代行受信されているため、このACLの対象である必要はありません。
注:ACLで許可されるスペースのIPアドレスを取得するには、ACL設定セクションの下のスペースにSSIDを作成するのセクションのステップ3で作成したSSIDから手動で設定オプションをクリックします。例は、このドキュメントの最後にある「スペースで使用されるIPアドレスは何ですか」の項に記載されています。
スペースでは2つのIPアドレスが使用され、手順1のメカニズムでは1つのポータルIPのみが許可されます。より多くのHTTPリソースへの事前認証アクセスを許可するには、URLフィルタを使用する必要があります。これにより、URLフィルタに入力したURLを持つWebサイトに関連するIPに対するインターセプト(リダイレクト)ACLとセキュリティ(事前認証)ACLに動的にホールが形成されます。DNS要求は9800に対して動的にスヌーピングされ、これらのURLのIPアドレスが学習されてACLに動的に追加されます。
ステップ 2:Spacesドメインを許可するようにURLフィルタを設定します。
Configuration > Security > URL Filtersの順に移動します。+Addをクリックして、リスト名を設定します。タイプとしてPRE-AUTH、アクションとしてPERMIT、URLとしてsplash.dnaspaces.io(EMEAポータルを使用する場合は.eu)を選択します。
CLI による設定:
Andressi-9800L(config)#urlfilter list <url-filter name>
Andressi-9800L(config-urlfilter-params)#action permit
Andressi-9800L(config-urlfilter-params)#url splash.dnaspaces.io
SSIDは、RADIUSサーバを使用するように設定することも、使用しないように設定することもできます。キャプティブポータルルール設定のアクションセクションでSession Duration、Bandwidth Limit、またはSeamently Provision Internetが設定されている場合、SSIDはRADIUSサーバで設定する必要があります。そうでない場合は、RADIUSサーバを使用する必要はありません。Spacesのすべての種類のポータルは、両方の構成でサポートされています。
RADIUSサーバを使用しないキャプティブポータル(スペース)
9800コントローラでのWeb認証パラメータマップの設定
ステップ 1:Configuration > Security > Web Authの順に移動します。 +Addをクリックして、新しいパラメータマップを作成します。ポップアップウィンドウで、パラメータマップ名を設定し、タイプとしてConsentを選択します。
ステップ 2:前のステップで設定したパラメータマップをクリックし、Advancedタブに移動して、次の図に示すようにRedirect for log-in URL、Append for AP MAC Address、Append for Client MAC Address、Append for WLAN SSID、およびPortal IPv4 Addressを入力します。Update & Applyをクリックします。
注:スプラッシュページのURLとIPv4リダイレクトアドレスを取得するには、SpacesのSSIDページでConfigure Manuallyオプションをクリックします。これについては、ドキュメントの最後にある「What is the URL that Spaces portal use」を参照してください。
注:Cisco Spacesポータルは2つのIPアドレスに解決できますが、9800コントローラで設定できるIPアドレスは1つだけです。これらのIPアドレスのいずれかを選択し、パラメータマップでポータルIPv4アドレスとして設定します。
注:仮想IPv4アドレスと仮想IPv6アドレスの両方がグローバルWeb認証パラメータマップで設定されていることを確認します。Virtual IPv6が設定されていない場合、クライアントは設定されたSpacesポータルではなく内部ポータルにリダイレクトされることがあります。このため、仮想IPは常に設定する必要があります。192.0.2.1は仮想IPv4として、FE80:0:0:0:903A::11E4は仮想IPV6として設定できます。それ以外のIPを使用する理由はほとんどありません。
CLI による設定:
Andressi-9800L(config)#parameter-map type webauth <map name>
Andressi-9800L(config-params-parameter-map)#type consent
Andressi-9800L(config-params-parameter-map)#timeout init-state sec 600
Andressi-9800L(config-params-parameter-map)#redirect for-login <splashpage URL>
Andressi-9800L(config-params-parameter-map)#redirect append ap-mac tag ap_mac
Andressi-9800L(config-params-parameter-map)#redirect append wlan-ssid tag wlan
Andressi-9800L(config-params-parameter-map)#redirect append client-mac tag client_mac
Andressi-9800L(config-params-parameter-map)#redirect portal ipv4 <IP Address>
Andressi-9800L(config-params-parameter-map)#logout-window-disabled
Andressi-9800L(config-params-parameter-map)#success-window-disabled
9800コントローラでのSSIDの作成
ステップ 1:Configuration > Tags & Profiles > WLANsの順に移動します。 +Addをクリックします。プロファイル名とSSIDを設定し、WLANを有効にします。SSID名が、セクション「スペースでのSSIDの作成」のステップ3で設定した名前と同じであることを確認します。
ステップ 2:Security > Layer2の順に移動します。レイヤ2セキュリティモードをNoneに設定します。MACフィルタリングが無効になっていることを確認します。
ステップ 3:Security > Layer3の順に移動します。Webポリシーを有効にし、Web認証パラメータマップを設定します。Apply to Deviceをクリックします。
9800コントローラでのポリシープロファイルの設定
ステップ 1:Configuration > Tags & Profiles > Policyの順に移動し、新しいポリシープロファイルを作成するか、デフォルトのポリシープロファイルを使用します。Access Policiesタブで、クライアントVLANを設定し、URLフィルタを追加します。
9800コントローラでのポリシータグの設定
ステップ 1:[設定(Configuration)] > [タグとプロファイル(Tags & Profiles)] > [ポリシー(Policy)] に移動します。新しいポリシータグを作成するか、デフォルトのポリシータグを使用します。WLANをポリシータグのポリシープロファイルにマッピングします。
ステップ 2:ポリシータグをAPに適用して、SSIDをブロードキャストします。Configuration > Wireless > Access Pointsの順に移動します。問題のAPを選択し、ポリシータグを追加します。これにより、APはCAPWAPトンネルを再起動し、9800コントローラに戻ります。
CLI による設定:
Andressi-9800L(config)#wlan <Profile name> <WLAN ID> <SSID Name>
Andressi-9800L(config-wlan)#no security wpa
Andressi-9800L(config-wlan)#no security wpa akm dot1x
Andressi-9800L(config-wlan)#no security wpa wpa2 ciphers aes
Andressi-9800L(config-wlan)#security web-auth
Andressi-9800L(config-wlan)#security web-auth parameter-map <map name>
Andressi-9800L(config-wlan)#no shutdown
Andressi-9800L(config)#wireless profile policy <policy-profile-name>
Andressi-9800L(config-wireless-policy)#vlan <id>
Andressi-9800L(config-wireless-policy)#urlfilter list pre-auth-filter <url-filter name>
Andressi-9800L(config-wireless-policy)#no shutdown
Andressi-9800L(config)#wireless tag policy <policy-tag-name>
Andressi-9800L(config-policy-tag)#wlan <Profile name> policy <policy-profile-name>
スペース上のRADIUSサーバを使用するキャプティブポータル
注:スペースRADIUSサーバは、コントローラからのPAP認証のみをサポートします。
9800コントローラでのWeb認証パラメータマップの設定
ステップ 1:Web認証パラメータマップを作成します。Configuration > Security > Web Authの順に移動します。 +Addをクリックしてパラメータマップ名を設定し、タイプとしてwebauthを選択します。
ステップ 2:ステップ1で設定したパラメータマップをクリックします。Advancedをクリックし、Redirect for log-in、Append for AP MAC Address、Append for Client MAC Address、Append for WLAN SSID and portal IPv4 Addressの順に入力します。Update & Applyをクリックします。
注:スプラッシュページのURLとIPv4リダイレクトアドレスを取得するには、「Creating the SSIDs in WLC Direct Connect」セクション「Creating the Access Control List configuration」セクションのセクション「Create the SSIDs in Spaces」のステップ3で作成したSSIDから、それぞれ「Configure Manually」オプションをクリックします。
注:Cisco Spacesポータルは2つのIPアドレスに解決できますが、9800コントローラでは1つのIPアドレスしか設定できません。1つのケースでは、ポータルIPv4アドレスとしてパラメータマップで設定するIPアドレスを選択します。
注:仮想IPv4アドレスと仮想IPv6アドレスの両方がグローバルWeb認証パラメータマップで設定されていることを確認します。Virtual IPv6が設定されていない場合、クライアントは設定されたSpacesポータルではなく内部ポータルにリダイレクトされることがあります。このため、仮想IPは常に192.0.2.1に設定する必要があり、仮想IPv4およびFE80:0:0:0:903A::11E4として仮想IPV6として設定できます。それ以外のIPを使用する理由はほとんどありません。
CLI による設定:
Andressi-9800L(config)#parameter-map type webauth <map name>
Andressi-9800L(config-params-parameter-map)#type webauth
Andressi-9800L(config-params-parameter-map)#timeout init-state sec 600
Andressi-9800L(config-params-parameter-map)#redirect for-login <splashpage URL>
Andressi-9800L(config-params-parameter-map)#redirect append ap-mac tag ap_mac
Andressi-9800L(config-params-parameter-map)#redirect append wlan-ssid tag wlan
Andressi-9800L(config-params-parameter-map)#redirect append client-mac tag client_mac
Andressi-9800L(config-params-parameter-map)#redirect portal ipv4 <IP Address>
Andressi-9800L(config-params-parameter-map)#logout-window-disabled
Andressi-9800L(config-params-parameter-map)#success-window-disabled
9800コントローラでのRADIUSサーバの設定
ステップ 1:RADIUSサーバを設定します。Cisco Spacesはユーザ認証用のRADIUSサーバとして機能し、2つのIPアドレスに応答できます。Configuration > Security > AAAの順に移動します。+Addをクリックして、両方のRADIUSサーバを設定します。
注:プライマリおよびセカンダリサーバのRADIUS IPアドレスと秘密キーを取得するには、「Create the SSID on Spaces」のステップ3で作成したSSIDから「Configure Manually」オプションをクリックし、「RADIUS Server Configuration」セクションに移動します。
ステップ 2:RADIUSサーバグループを設定し、両方のRADIUSサーバを追加します。Configuration > Security > AAA > Servers / Groups > RADIUS > Server Groupsの順に移動し、+addをクリックして、サーバグループ名、MAC-DelimiterをHyphen、MAC-FilteringをMACに設定し、2つのRADIUSサーバを割り当てます。
ステップ 3:認証方式リストを設定します。Configuration > Security > AAA > AAA Method List > Authenticationの順に選択します。 +addをクリックします。方式リスト名を設定し、タイプとしてloginを選択して、サーバグループを割り当てます。
ステップ 4:許可方式リストを設定します。Configuration > Security > AAA > AAA Method List > Authorizationの順に移動し、+addをクリックします。方式リスト名を設定し、タイプとしてnetworkを選択して、サーバグループを割り当てます。
9800コントローラでのSSIDの作成
ステップ 1:Configuration > Tags & Profiles > WLANsの順に移動し、+Addをクリックします。プロファイル名、SSIDを設定し、WLANを有効にします。SSID名が、セクション「スペースでのSSIDの作成」のステップ3で設定した名前と同じであることを確認します。
ステップ 2:Security > Layer2の順に移動します。レイヤ2セキュリティモードをNoneに設定し、MAC Filteringを有効にして、Authorization Listを追加します。
ステップ 3:Security > Layer3の順に移動します。Webポリシーを有効にし、Web認証パラメータマップと認証リストを設定します。On Mac Filter Failureを有効にして、事前認証ACLを追加します。Apply to Deviceをクリックします。
9800コントローラでのポリシープロファイルの設定
ステップ 1:Configuration > Tags & Profiles > Policyの順に移動し、新しいポリシープロファイルを作成するか、デフォルトのポリシープロファイルを使用します。Access Policiesタブで、クライアントVLANを設定し、URLフィルタを追加します。
ステップ 2:Advancedタブで、AAA Overrideを有効にし、オプションでアカウンティング方式リストを設定します。
9800コントローラでのポリシータグの設定
ステップ 1:[設定(Configuration)] > [タグとプロファイル(Tags & Profiles)] > [ポリシー(Policy)] に移動します。新しいポリシータグを作成するか、デフォルトのポリシータグを使用します。WLANをポリシータグのポリシープロファイルにマッピングします。
ステップ 2:ポリシータグをAPに適用して、SSIDをブロードキャストします。Configuration > Wireless > Access Pointsの順に移動し、対象のAPを選択して、Policy Tagを追加します。これにより、APはCAPWAPトンネルを再起動し、9800コントローラに戻ります。
CLI による設定:
Andressi-9800L(config)#wlan <Profile name> <WLAN ID> <SSID Name>
Andressi-9800L(config-wlan)#ip access-group web <ACL Name>
Andressi-9800L(config-wlan)#no security wpa
Andressi-9800L(config-wlan)#no security wpa akm dot1x
Andressi-9800L(config-wlan)#no security wpa wpa2 ciphers aes
Andressi-9800L(config-wlan)#mac-filtering <authz name>
Andressi-9800L(config-wlan)#security web-auth
Andressi-9800L(config-wlan)#security web-auth authentication-list <auth name>
Andressi-9800L(config-wlan)#security web-auth on-macfilter-failure
Andressi-9800L(config-wlan)#security web-auth parameter-map <map name>
Andressi-9800L(config-wlan)#no shutdown
Andressi-9800L(config)#wireless profile policy <policy-profile-name>
Andressi-9800L(config-wireless-policy)#aaa-override
Andressi-9800L(config-wireless-policy)#accounting-list <acct name>
Andressi-9800L(config-wireless-policy)#vlan <id>
Andressi-9800L(config-wireless-policy)#urlfilter list pre-auth-filter <url-filter name>
Andressi-9800L(config-wireless-policy)#no shutdown
Andressi-9800L(config)#wireless tag policy <policy-tag-name>
Andressi-9800L(config-policy-tag)#wlan <Profile name> policy <policy-profile-name>
グローバルパラメータマップの設定
推奨されない手順:次のコマンドを実行してHTTPSリダイレクションを許可します。ただし、クライアントオペレーティングシステムがキャプティブポータルの検出を行い、CPU使用率が高くなり、常に証明書の警告が発生する場合、クライアントHTTPSトラフィックでのリダイレクトは必要ありません。特定の使用例で必要な場合を除き、このコマンドの設定は避けることをお勧めします。
Andressi-9800L(config)#parameter-map type webauth global
Andressi-9800L(config-params-parameter-map)#intercept-https-enable
注:Cisco Catalyst 9800シリーズワイヤレスコントローラにインストールされた仮想IPに対する有効なSSL証明書が必要です。
ステップ 1:extension.p12の署名付き証明書ファイルをTFTPサーバにコピーし、次のコマンドを実行して、証明書を9800コントローラに転送してインストールします。
Andressi-9800L(config)#crypto pki import <name> pkcs12 tftp://<tftp server ip>:/ password <certificate password>
ステップ 2:インストールされた証明書をWeb認証パラメータマップにマッピングするには、次のコマンドを実行します。
Andressi-9800L(config)#parameter-map type webauth global
Andressi-9800L(config-params-parameter-map)#trustpoint <installed trustpool name>
スペースでのポータルの作成
ステップ 1:スペースのダッシュボードでキャプティブポータルをクリックします。
ステップ 2:Create Newをクリックし、ポータル名を入力して、ポータルを使用できる場所を選択します。
ステップ 3:認証の種類を選択し、ポータルホームページにデータキャプチャとユーザー契約を表示するかどうか、およびユーザーがメッセージの受信をオプトインで許可されるかどうかを選択します。[Next] をクリックします。
ステップ 4:データキャプチャ要素を構成します。ユーザからデータをキャプチャする場合は、Enable Data Captureボックスにチェックマークを入れて、+Add Field Elementをクリックし、目的のフィールドを追加します。[Next] をクリックします。
ステップ 5:Enable Terms & Conditionsにチェックマークを入れて、Save & Configure Portalをクリックします。
手順 6:必要に応じてポータルを編集します。Save:
スペースでのキャプティブポータルルールの設定
ステップ 1:スペースのダッシュボードでキャプティブポータルをクリックします。
ステップ 2:キャプティブポータルメニューを開き、Captive Portal Rules:
ステップ 3:+ Create New Ruleをクリックします。ルール名を入力し、以前に設定したSSIDを選択します。
ステップ 4:ポータルを使用できる場所を選択します。LOCATIONSセクションで+ Add Locationsをクリックします。ロケーション階層から目的のロケーションを選択します。
ステップ 5:キャプティブポータルのアクションを選択します。この場合、ルールがヒットすると、ポータルが表示されます。Save & Publishをクリックします。
スペースから特定の情報を取得
スペースが使用するIPアドレス
お客様の地域のポータルでSpacesが使用しているIPアドレスを確認するには、Cisco DNA SpaceホームのCaptival Portalページに移動します。左側のメニューでSSIDをクリックし、SSIDの下でConfigure manuallyをクリックします。IPアドレスはACLの例で説明されています。これらは、ACLおよびwebauthパラメータマップで使用するポータルのIPアドレスです。スペースは、コントロールプレーンのNMSP/クラウド接続全体に対して他のIPアドレスを使用します。
表示されるポップアップの最初のセクションで、ステップ7はACL定義で指定されたIPアドレスを表示します。これらの手順を実行してACLを作成する必要はありません。IPアドレスに注意してください。これらは、お客様の地域のポータルで使用されるIPです
スペースログインポータルが使用するURL
お客様の地域のポータルでポータルのURLスペースが使用しているログインを確認するには、Cisco DNA SpaceホームのCaptival Portalページに移動します。左側のメニューでSSIDをクリックし、SSIDの下でConfigure manuallyをクリックします。
表示されるポップアップまでスクロールし、2番目のセクションのステップ7に、9800のパラメータマップで設定する必要があるURLが表示されます。
スペースのRADIUSサーバの詳細
共有秘密とともに使用する必要があるRADIUSサーバのIPアドレスを確認するには、Cisco DNA SpaceホームのCaptival Portalページに移動します。左側のメニューでSSIDをクリックし、SSIDの下でConfigure manuallyをクリックします。
表示されるポップアップで、3番目のセクション(RADIUS)をスクロールダウンすると、ステップ7でRADIUS認証のIP/ポートと共有秘密が表示されます。アカウンティングはオプションであり、手順12で説明します。
確認
SSIDに接続しているクライアントのステータスを確認するには、Monitoring > Clientsの順に選択します。デバイスのMACアドレスをクリックし、Policy Manager State:
トラブルシュート
一般的な問題
1.コントローラの仮想インターフェイスにIPアドレスが設定されていない場合、クライアントはパラメータマップで設定されたリダイレクトポータルではなく内部ポータルにリダイレクトされます。
2.クライアントがスペースのポータルにリダイレクトされている間に503エラーを受信する場合は、コントローラがスペースのロケーション階層で設定されていることを確認します。
常時オンのトレース
WLC 9800 では、ALWAYS-ON トレース機能を利用できます。これにより、クライアント接続に関連するすべてのエラー、警告、通知レベルのメッセージが常にログに記録され、インシデントまたは障害状態が発生した後にログを表示できます。
注:生成されるログの量に応じて、数時間から数日に戻ることができます。
9800 WLCがデフォルトで収集したトレースを表示するには、SSH/Telnet経由で9800 WLCに接続し、次の手順を実行します。セッションをテキストファイルに記録していることを確認します。
ステップ 1:問題が発生した時点までのログを追跡できるように、コントローラの現在時刻を確認します。
# show clock
ステップ 2:システム設定に従って、コントローラバッファまたは外部syslogからsyslogを収集します。これにより、システムの健全性とエラー(ある場合)をすばやく確認できます。
# show logging
ステップ 3:デバッグ条件が有効になっているかどうかを確認します。
# show debugging
Cisco IOS XE Conditional Debug Configs:
Conditional Debug Global State: Stop
Cisco IOS XE Packet Tracing Configs:
Packet Infra debugs:
Ip Address Port
------------------------------------------------------|----------
注:リストされている条件は、有効な条件(MACアドレス、IPアドレスなど)に遭遇するすべてのプロセスについて、トレースがデバッグレベルでログに記録されていることを意味します。これにより、ログの量が増加します。したがって、デバッグが必要ないときは、すべての条件をクリアすることをお勧めします。
ステップ 4:テスト対象のMACアドレスがステップ3の条件としてリストされていない場合は、特定のMACアドレスのalways-on notice levelトレースを収集します。
# show logging profile wireless filter { mac | ip } { <aaaa.bbbb.cccc> | <a.b.c.d> } to-file always-on-<FILENAME.txt>
セッションで内容を表示するか、ファイルを外部 TFTP サーバーにコピーできます。
# more bootflash:always-on-<FILENAME.txt>
or
# copy bootflash:always-on-<FILENAME.txt> tftp://a.b.c.d/path/always-on-<FILENAME.txt>
条件付きデバッグとラジオアクティブトレース
常時接続トレースで、調査中の問題のトリガーを判別するのに十分な情報が得られない場合は、条件付きデバッグを有効にしてRadio Active(RA)トレースをキャプチャできます。これにより、指定された条件(この場合はクライアントMACアドレス)と対話するすべてのプロセスにデバッグレベルのトレースが提供されます。条件付きデバッグを有効にするには、次の手順を実行します。
ステップ 1:デバッグ条件が有効になっていないことを確認します。
# clear platform condition all
ステップ 2:監視するワイヤレスクライアントのMACアドレスのデバッグ条件を有効にします。
次のコマンドは、指定された MAC アドレスの 30 分間(1800 秒)のモニターを開始します。必要に応じて、この時間を最大 2,085,978,494 秒まで増やすことができます。
# debug wireless mac <aaaa.bbbb.cccc> {monitor-time <seconds>}
注:複数のクライアントを同時にモニタするには、MACアドレスごとにdebug wireless mac <aaaa.bbbb.cccc>コマンドを実行します。
注:すべての内容は後で表示できるように内部でバッファされるため、ターミナルセッションのクライアントアクティビティの出力は表示されません。
ステップ 3:監視する問題または動作を再現します。
ステップ 4:問題がデフォルトよりも前に再現された場合、または設定されたモニタ時間がアップした場合は、デバッグを停止します。
# no debug wireless mac <aaaa.bbbb.cccc>
monitor-timeが経過するか、debug wirelessが停止すると、9800 WLCは次の名前のローカルファイルを生成します。
ra_trace_MAC_aaaabbbbcccc_HHMMSS.XXX_timezone_DayWeek_Month_Day_year.log
ステップ 5: MAC アドレスアクティビティのファイルを収集します。 ra trace.logを外部サーバにコピーするか、出力を画面に直接表示できます。
RAトレースファイルの名前を確認します
# dir bootflash: | inc ra_trace
ファイルを外部サーバーにコピーします。
# copy bootflash:ra_trace_MAC_aaaabbbbcccc_HHMMSS.XXX_timezone_DayWeek_Month_Day_year.log tftp://a.b.c.d/ra-FILENAME.txt
内容を表示します。
# more bootflash:ra_trace_MAC_aaaabbbbcccc_HHMMSS.XXX_timezone_DayWeek_Month_Day_year.log
手順 6:根本原因がまだ明らかでない場合は、デバッグレベルのログのより詳細なビューである内部ログを収集します。すでに収集されて内部に保存されているデバッグログをさらに詳しく調べるだけなので、クライアントを再度デバッグする必要はありません。
# show logging profile wireless internal filter { mac | ip } { <aaaa.bbbb.cccc> | <a.b.c.d> } to-file ra-internal-<FILENAME>.txt
注:このコマンド出力は、すべてのプロセスのすべてのログレベルのトレースを返し、非常に大量です。これらのトレースを解析する場合は、Cisco TAC にお問い合わせください。
ra-internal-FILENAME.txt を外部サーバーにコピーするか、出力を画面に直接表示できます。
ファイルを外部サーバーにコピーします。
# copy bootflash:ra-internal-<FILENAME>.txt tftp://a.b.c.d/ra-internal-<FILENAME>.txt
内容を表示します。
# more bootflash:ra-internal-<FILENAME>.txt
手順 7:デバッグ条件を削除します。
# clear platform condition all
注:トラブルシューティングセッションの後は、必ずデバッグ条件を削除してください。
成功した試行の例
これは、RADIUSサーバのないSSIDに接続しているときに、関連付け/認証プロセス中に各フェーズを正常に識別しようとする試みに対するRA_tracesからの出力です。
802.11アソシエーション/認証:
Association received. BSSID 10b3.d694.00ee, WLAN 9800DNASpaces, Slot 1 AP 10b3.d694.00e0, 2802AP-9800L
Received Dot11 association request. Processing started,SSID: 9800DNASpaces1, Policy profile: DNASpaces-PP, AP Name: 2802AP-9800L, Ap Mac Address: 10b3.d694.00e0 BSSID MAC0000.0000.0000 wlan ID: 1RSSI: 0, SNR: 32
Client state transition: S_CO_INIT -> S_CO_ASSOCIATING
dot11 send association response. Sending association response with resp_status_code: 0
dot11 send association response. Sending assoc response of length: 144 with resp_status_code: 0, DOT11_STATUS: DOT11_STATUS_SUCCESS
Association success. AID 1, Roaming = False, WGB = False, 11r = False, 11w = False
DOT11 state transition: S_DOT11_INIT -> S_DOT11_ASSOCIATED
Station Dot11 association is successful
IP Learnプロセス:
IP-learn state transition: S_IPLEARN_INIT -> S_IPLEARN_IN_PROGRESS
Client IP learn successful. Method: ARP IP: 10.10.30.42
IP-learn state transition: S_IPLEARN_IN_PROGRESS -> S_IPLEARN_COMPLETE
Received ip learn response. method: IPLEARN_METHOD_AR
レイヤ3認証:
Triggered L3 authentication. status = 0x0, Success
Client state transition: S_CO_IP_LEARN_IN_PROGRESS -> S_CO_L3_AUTH_IN_PROGRESS
L3 Authentication initiated. LWA
Client auth-interface state transition: S_AUTHIF_L2_WEBAUTH_DONE -> S_AUTHIF_WEBAUTH_PENDING
Client auth-interface state transition: S_AUTHIF_L2_WEBAUTH_DONE -> S_AUTHIF_WEBAUTH_PENDING
[webauth-httpd] [17798]: (info): capwap_90000005[34e1.2d23.a668][10.10.30.42]GET rcvd when in INIT state
[webauth-httpd] [17798]: (info): capwap_90000005[34e1.2d23.a668][10.10.30.42]HTTP GET request
[webauth-httpd] [17798]: (info): capwap_90000005[34e1.2d23.a668][10.10.30.42]Parse GET, src [10.10.30.42] dst [10.107.4.52] url [http://www.msftconnecttest.com/connecttest.txt]
[webauth-httpd] [17798]: (info): capwap_90000005[34e1.2d23.a668][10.10.30.42]Retrieved user-agent = Microsoft NCSI
[webauth-httpd] [17798]: (info): capwap_90000005[34e1.2d23.a668][10.10.30.42]GET rcvd when in LOGIN state
[webauth-httpd] [17798]: (info): capwap_90000005[34e1.2d23.a668][10.10.30.42]HTTP GET request
[webauth-httpd] [17798]: (info): capwap_90000005[34e1.2d23.a668][10.10.30.42]Parse GET, src [10.10.30.42] dst [10.101.24.81] url [http://www.bbc.com/]
[webauth-httpd] [17798]: (info): capwap_90000005[34e1.2d23.a668][10.10.30.42]Retrieved user-agent = Mozilla/5.0 (Windows NT 10.0; WOW64; Trident/7.0; rv:11.0) like Gecko
[webauth-httpd] [17798]: (info): capwap_90000005[34e1.2d23.a668][10.10.30.42]POST rcvd when in LOGIN state
レイヤ3認証が成功しました。クライアントをRUN状態に移行します。
[34e1.2d23.a668:capwap_90000005] Received User-Name 34E1.2D23.A668 for client 34e1.2d23.a668
L3 Authentication Successful. ACL:[]
Client auth-interface state transition: S_AUTHIF_WEBAUTH_PENDING -> S_AUTHIF_WEBAUTH_DONE
%CLIENT_ORCH_LOG-6-CLIENT_ADDED_TO_RUN_STATE: Username entry (34E1.2D23.A668) joined with ssid (9800DNASpaces) for device with MAC: 34e1.2d23.a668
Managed client RUN state notification: 34e1.2d23.a668
Client state transition: S_CO_L3_AUTH_IN_PROGRESS -> S_CO_RU