Contents

Introduction

Prerequisites

Topology

Generic outputs to collect from WLC

Specific outputs from WLC for concrete client MAC@

Advanced logs from WLC and AP for concrete client MAC@

Introduction

This document describes a systematic approach and list of commands to collect to troubleshoot 9800 client connectivity issues.

Prerequisites

Cisco recommends that you have knowledge of these topics:

Basic knowledge of Cisco WLC 9800

Basic knowledge of Cisco Wave2 and/or 11AX APs

Topology

Generic outputs to collect from WLC

0. Enable term exec prompt timestamps to have time reference for all the commands.

1. We can start checking number of clients, client states distribution and excluded clients.

show wireless summary !!Total number of Aps and clients

show wireless exclusionlist !!In case any client is seen as excluded

show wireless exclusionlist client mac-address MAC@ !!To get more details about concrete client excluded.

2. Next we can identify clients that are not in run state. Collect these outputs several times and identify clients not changing of state, stuck in authenticating, iplearn.

We can also check stats and deletions of a concrete SSID.

show wireless cli summary | ex _Run_ !!Identify client mac address not changing state

show wireless stats client detail !!Check counters for global errors and failures, retransmissions and info about webauth clients. Here we can also check client distribution (show wireless stats client detail | i Authenticating|Mobility__|IP Learn__|Webauth Pending|Run__|Delete-in-Progress)

show wlan name WLAN-NAME client stats !!Check client stats counters per SSID to identify if issue is only seen in one concrete SSID.

3. Check ip address assigment for clients, look for incorrect addresses or unexpected static address learning, vlans marked as dirty due to no response from DHCP server, or packets drops in SISF that is handling DHCP/ARP.

show wireless device-tracking database ip !! Check by ip and see how address learning occurred:

show wireless device-tracking database mac !! Check by mac and see vlan to which client is assigned

show wireless vlan details !!Check that vlan is not marked as dirty due to DHCP failures

show wireless device-tracking feature drop !!Drops in SISF

4. Check client RF health, uptime tx/rx and retries to identify clients with bad RSSI and lots of retries.

show wireless stats client summary

5. Device classification. Identify type of clients connected and if there is any classification issue with some of the clients.

show wireless client device summary

6. Check for predefined errors and unexpected client delete reasons. Collect those outputs several times and identify unexpected failures/deletes.

show wireless stats trace-on-failure | ex :_0

show wireless stats client delete reasons | ex _:_0

7. Once identified unexpected delete reasons, lets try to identify client mac-addressed facing that concrete delete reason. Proactive troubleshooting.

show logging profile wireless | i DELETE !!Find client mac address matching unexpected delete reason.

Specific outputs from WLC for concrete client MAC@

8. Get details about one concrete client:

show wireless client mac MAC@ detail

show wireless client mac MAC@ mobility history !!Check roaming events

show wireless client mac MAC@ stats mobility !!Check roam counts for client intra/inter wncd

9. Check always-on-tracing for this client. Identify steps that lead to the delete reason.

show logging profile wireless start last 1 hours filter mac MAC@ to-file bootflash:Always_on_tracing_MAC@.log !! start last time can be changed to match when client faced issued.

10. Collect all details for client using show tech wireless commands for client and for client dataplane:

show tech wireless client mac-address MAC@

show tech wireless datapath client mac-address MAC@

Advanced logs from WLC and AP for concrete client MAC@

11. If with previous outputs root cause could not be identified then we need to collect ra_trace and packet captures from client to identify root cause on next event.

Logs from WLC:

!! Enable ra-trace for AP using default monitor-time is 1800s increse it to max in case you do not know when AP disconnection occurs.

debug wireless mac <Client_MAC> internal monitor-time 2085978494 !!Using AP radio mac to capture traces with verbose level from WLC. Setting time allows us to enable traces for up to 24 days

!!Reproduce

no debug wireless mac <Client_MAC> internal monitor-time 2085978494

!!WLC generates an ra_trace file with Client_info, command to check for ra_trace file generated.

dir bootflash: | i ra_trace

!!Embedded Captures filtered by client mac address in both directions and have a circular buffer to ensure that we get latest captures in case buffer exceeds 100M. Client inner mac filter available after 17.1

monitor capture MYCAP clear

monitor capture MYCAP interface Po1 both

monitor capture MYCAP buffer size 100

monitor capture MYCAP match any

monitor capture MYCAP inner mac CLIENT_MAC@

monitor capture MYCAP start

!!Reproduce

monitor capture MYCAP stop

monitor capture MYCAP export flash:|tftp:|http:.../filename.pcap

Logs from AP

show tech !! Collect show tech to have all config details and client stats for the AP.

term mon

!!Basic

debug client MAC@

!!Option is to use Efficient client troubleshooting: https://developer.cisco.com/docs/wireless-troubleshooting-tools/#9800-guestshelleem-scripts-9800-guestshelleem-scripts

List of all commands

List of all commands from WLC

term exec prompt timestamps

show wireless summary

show wireless exclusionlist

show wireless exclusionlist client mac-address MAC@

show wi cli summary | ex _Run_

show wireless stats client detail | i Authenticating|Mobility__|IP Learn__|Webauth Pending|Run__|Delete-in-Progress

show wireless stats client detail

show wireless device-tracking database ip

show wireless device-tracking database mac

show wireless vlan details

show wireless device-tracking feature drop

show wireless stats client summary

show wireless client device summary

show wireless stats trace-on-failure | ex :_0

show wireless stats client delete reasons | ex _:_0

show logging profile wireless | i DELETE

show wireless client mac MAC@ detail

show wireless client mac MAC@ mobility history

show wireless client mac MAC@ stats mobility

show logging profile wireless start last 1 hours filter mac MAC@ to-file bootflash:Always_on_tracing_MAC@.log

show tech wireless client mac-address MAC@

show tech wireless datapath client mac-address MAC@

debug wireless mac <Client_MAC> internal monitor-time 2085978494

List of all commands from AP

show tech

term mon

debug client MAC@