Inleiding
Dit document beschrijft en biedt een overzicht van alle Cisco IOS® XE-functies en -mogelijkheden die worden gebruikt voor het oplossen van problemen met Catalyst 9800.
Voorwaarden
Vereisten
- Basiskennis van draadloze LAN-controllers (WLC).
- Basiskennis van de use case flows die betrokken zijn bij het gebruik van een WLC.
Gebruikte componenten
Dit document heeft betrekking op 9800-CL-, 9800-L-, 9800-40- en 9800-80-controllers. Het is voornamelijk gebaseerd op de 17.3 Cisco IOS® XE-versie.
Achtergrondinformatie
Cisco IOS® XE draait op 9800 WLC's en bestaat in wezen uit een Linux-kernel (binOS) met Cisco IOS® en alle draadloze processen die als daemons zijn geïmplementeerd.
Alle procesdaemons kunnen gebundeld worden onder de generieke term Control Plane (CP) en zijn verantwoordelijk voor Control and Provisioning of Access Points (CAPWAP), Mobility, Radio Resource Management (RRM). Rogue Management, Network Mobility Service protocol (NMSP) die zijn bestemd voor en van de 9800 WLC.
Data Plane (DP) verwijst naar de componenten die gegevens doorsturen op 9800 WLC.
Op alle iteraties van 9800 (9800-40, 9800-80, 9800-CL, 9800-SW, 9800-L) blijft Control Plane vrij algemeen.
Data Plane varieert echter met 9800-40 en 9800-80 die hardware Quantum Flow Processor (QFP)-complex gebruiken dat vergelijkbaar is met ASR1k, terwijl 9800-CL en 9800-L software-implementatie van Cisco Packet Processor (CPP) gebruiken.
9800-SW maakt eenvoudig gebruik van de Doppler-chipset op Catalyst 9k-serie switches voor het doorsturen van gegevens.
Pakketstroom binnen 9800 WLC

Wanneer een pakket de 9800 WLC binnenkomt vanuit fysieke poorten, wordt het, als wordt bepaald dat het verkeer wordt gecontroleerd, gepunteerd op de bijbehorende processen van het controlevlak.
Voor een AP-join zou dit alle capwap- en dtls-uitwisseling zijn die afkomstig is van AP. In het geval van client join, zou dit al het verkeer afkomstig van client totdat de client gaat naar RUN staat.
Terwijl de verschillende daemons het binnenkomende verkeer verwerken, wordt het resulterende retourverkeer (capwap-respons, dot11, dot1x, dcp-respons) afkomstig van 9800 WLC dat naar de client wordt verzonden, terug in het gegevensvlak geïnjecteerd om naar de fysieke poort te worden verzonden.
Terwijl we AP-verbindingen verwerken, deelnemen aan clients, mobiliteitsuitwisselingen, moet het gegevensvliegtuig worden geprogrammeerd zodat het het doorsturen van gegevensverkeer kan verwerken.
Dit gebeurt wanneer meerdere componenten sequentieel worden geprogrammeerd over het programmeerpad dat in de afbeelding wordt aangegeven.
Cisco IOS® XE biedt een veelzijdige gereedschapsset om het pakket te traceren vanaf het moment dat het 9800 WLC binnenkomt totdat het verwerkte verkeer de doos verlaat.
In de volgende sectie worden deze hulpmiddelen geïntroduceerd, samen met de opdrachten die worden gebruikt om deze hulpmiddelen vanaf de opdrachtregelinterface (CLI) op te roepen.
tracering van het besturingsvlak
In deze sectie worden de opdrachten en hulpmiddelen beschreven die beschikbaar zijn om de verwerking te bekijken die wordt uitgevoerd door de processen van het controlevlak nadat het pakket dat bedoeld is voor 9800 WLC is gepunteerd van DP of voordat het responspakket dat afkomstig is van 9800 WLC wordt geïnjecteerd in de DP voor het verzenden van de fysieke interface
Syslog
Logs gegenereerd door de 9800 WLC is het eerste middel om de algemene gezondheid van het systeem te verifiëren.
Elke overschrijding van de vooraf gedefinieerde drempelwaarde voor systeembronnen zoals CPU, geheugen en buffers wordt in het logboek gerapporteerd.
Ook worden eventuele fouten die door subsystemen worden gegenereerd, in logs geschreven. Als u de logs wilt bekijken, gaat u naar Problemen oplossen > Syslog

of voer de CLI-opdracht uit:
# show logging
Deze uitvoer toont algemene logboeken en enkele logboeken met draadloze specificaties. Echter, in tegenstelling tot de oude Cisco IOS®, geen draadloze debugging maakt meestal zijn weg naar deze logging output.
Opmerking: Als WLC9800 is geconfigureerd om deze logs om te leiden naar een externe syslog-server, moet u ook de logs op de externe syslog-server controleren.
Always-on Tracing
Elk control plane-proces op de WLC9800 logt voortdurend op logboekniveau van Notice naar zijn eigen speciale buffer. Dit wordt ook wel ‘always-on tracing’ genoemd.
Dit is een unieke mogelijkheid waarmee u contextuele gegevens kunt krijgen over een fout die is opgetreden zonder dat de foutvoorwaarde moet worden gereproduceerd.
Als u bijvoorbeeld bekend bent met AirOS, moet u voor het oplossen van problemen met de connectiviteit van een client foutopsporing inschakelen en de probleemstatus voor de connectiviteit van de client reproduceren om de hoofdoorzaak te identificeren.
Met always-on tracing kunt u terugkijken op reeds vastgelegde sporen en vaststellen of het een veel voorkomende oorzaak is. Afhankelijk van het volume van de gegenereerde logs, kunnen we enkele uren tot enkele dagen terugkijken.
Nu, terwijl de sporen worden vastgelegd per individueel proces, is het mogelijk om ze holistisch te bekijken voor een bepaalde context van belang, zoals client mac of AP mac of AP ip-adres. Om dit te doen, voert u de opdracht uit
# show logging profile wireless filter mac to-file bootflash:
Standaard gaat deze opdracht slechts 10 minuten terug in de tijd om de logs te genereren en te decoderen. Je kunt ervoor kiezen om verder terug in de tijd te gaan met:
# show logging profile wireless start last [minutes|hours|days] filter mac to-file bootflash:
Voer de opdracht uit om logboeken per proces weer te geven
# show logging process to-file bootflash:
Opmerking: er zijn meerdere filteropties op deze CLI's, waaronder module, logniveau, starttijdstempel enzovoort. Voer de opdracht uit om deze opties te bekijken en te verkennen
# show logging profile wireless ?
# show logging process ?
Voorwaardelijke foutopsporing en radioactieve tracering
Voorwaardelijke foutopsporing maakt het mogelijk om foutopsporingsniveauregistratie in te schakelen voor specifieke functies voor de voorwaarden van belang.
RadioActive-tracering gaat nog een stap verder door de mogelijkheid toe te voegen om foutopsporingsinformatie voorwaardelijk af te drukken in verschillende processen, threads voor de conditie van interesse.
Dit betekent dat de onderliggende architectuur volledig geabstraheerd is.
Opmerking: op 10 .12 wordt radioactieve tracering alleen geïmplementeerd voor het oplossen van problemen met AP-aansluiting met AP-radio- en ethernetMAC-adressen, client-aansluiting met MAC-adres van client en mobiliteitsproblemen met mobiliteitspeer-ip- en CMX-connectiviteit met het CMX-ip-adres als voorwaarden van belang.
Opmerking: MAC-adres versus IP-adres als voorwaarde biedt verschillende uitgangen omdat verschillende processen zich bewust zijn van verschillende identificatoren voor dezelfde netwerkentiteit (AP of client of mobiliteitspeer).
Met clientconnectiviteit, als een voorbeeld voor het oplossen van problemen, wordt voorwaardelijke foutopsporing uitgevoerd voor client mac om end-to-end weergave te krijgen in control plane.
Radioactieve sporen via web-UI
Ga naar het menu Problemen oplossen en kies Radioactief overtrekken

Klik op Toevoegen en voer een client- of AP-MAC-adres in dat u wilt oplossen. Vanaf 10 .12 kunnen alleen MAC-adressen worden toegevoegd via de GUI. U kunt een IP-adres toevoegen via CLI.

U kunt verschillende MAC-adressen toevoegen om te volgen. Wanneer u klaar bent om het radioactieve traceren te starten, klikt u op Start.

Eenmaal gestart, worden debug logging geschreven naar de schijf over elke control plane verwerking met betrekking tot de bijgehouden mac adressen.
Wanneer u het probleem hebt gereproduceerd dat u wilt oplossen, klikt u op Stoppen.

Voor elk mac-adres dat is gedebugd, kunt u een logbestand genereren waarin alle logs met betrekking tot dat mac-adres worden verzameld door op Genereren te klikken.

Kies hoe lang terug u wilt dat het samengevoegde logbestand gaat en klik op Toepassen op apparaat.

U kunt het bestand nu downloaden door op het kleine pictogram naast de bestandsnaam te klikken. Dit bestand is aanwezig in de bootflashdrive van de controller en kan ook uit de doos worden gekopieerd via CLI.

Radioactieve sporen via CLI
Voer de opdracht uit om voorwaardelijke foutopsporing in te schakelen
# debug wireless {mac | ip} {aaaa.bbbb.cccc | x.x.x.x } {monitor-time} {N seconds}
Voer de opdracht uit om de voorwaarden te bekijken die momenteel zijn ingeschakeld
# show debugging
Deze foutopsporingsfouten drukken geen uitvoer af op terminalsessie, maar slaan het foutopsporingsuitvoerbestand op in Flash om daarna te worden opgehaald en geanalyseerd. Het bestand wordt opgeslagen met de naamgevingsconventie ra_trace_*
Voor het MAC-adres aaaa.bbbb.cccc wordt bijvoorbeeld de bestandsnaam ra_trace_MAC_aabbcccc_HHMMSS.XXX_timezone_DayWeek_Month_Day_year.log gegenereerd
Een voordeel is dat dezelfde opdracht kan worden gebruikt voor het oplossen van problemen met AP-verbindingen (invoer AP radio mac en ethernet mac), problemen met de connectiviteit van de client (invoer client mac), problemen met de mobiliteitstunnel (invoer peer ip), problemen met clientroaming (invoer client mac).
Met andere woorden, je hoeft niet te onthouden meerdere opdrachten zoals debug capwap, debug client, debug mobiliteit en ga zo maar door.
Opmerking: met draadloze foutopsporing kunt u ook naar een FTP-server verwijzen en nog meer uitgebreide logboekregistratie uitvoeren met intern trefwoord. We raden deze op dit moment niet aan, omdat er enkele problemen worden opgelost.
Voer de opdracht uit om het uitvoerbestand op de terminalsessie te debuggen
# more bootflash:ra_trace_MAC_*.log
Voer de opdracht uit om de foutopsporingsuitvoer om te leiden naar een externe server voor offline analyse
# copy bootflash:ra_trace_MAC_*.log ftp://username:password@FTPSERVERIP/path/RATRACE_FILENAME.txt
Er is een veel uitgebreidere weergave van dezelfde debug log levels. om deze uitgebreide weergave te zien, voert u de opdracht uit
# show logging profile wireless internal filter mac to-file
Voer de opdracht uit om foutopsporing uit te schakelen voor specifieke context of voordat de geconfigureerde of standaardmonitortijd is verstreken.
# no debug wireless mac <aaaa.bbbb.cccc>
Let op: Het voorwaardelijk debuggen maakt het mogelijk om het debug-niveau te registreren, wat op zijn beurt het volume van de gegenereerde logs verhoogt. Als u dit actief laat, neemt de afstand terug in de tijd af waarvandaan u logs kunt bekijken. Het wordt dus aanbevolen om foutopsporing altijd uit te schakelen aan het einde van de sessie voor probleemoplossing.
Voer de volgende opdrachten uit om alle foutopsporing uit te schakelen
# clear platform condition all
# undebug all
Niet-voorwaardelijke foutopsporing per proces
Voor de use cases en processen die niet zijn geïmplementeerd voor radioactieve tracering, kunt u foutopsporingsniveausporen krijgen. Gebruik de opdracht om het foutopsporingsniveau voor een specifiek proces in te stellen
# set platform software trace <PROCESS_NAME> wireless chassis active R0 { module_name | all-modules }
Voer de opdracht uit om de traceringsniveaus van de verschillende modules te controleren
# show platform software trace level <PROCESS_NAME> chassis active R0
Voer de opdracht uit om de verzamelde sporen te bekijken
# show logging process to-file
datapakkettracering
Wanneer een pakket voor het eerst 9800 WLC binnenkomt, vindt enige verwerking plaats op het gegevensvlak om te identificeren of het verkeerscontrolevlak of het gegevensvlak is.
De Packet-Trace-functie biedt een gedetailleerd overzicht van deze Cisco IOS® XE-verwerking in het dataplane en de beslissing om het pakket te punteren, vooruit te sturen, te laten vallen of te consumeren.
Deze functie op WLC 9800 werkt precies hetzelfde als de implementatie op ASR!k.
Packet Tracer op de 9800 WLC biedt drie inspectieniveaus die gelijk zijn aan die van de ASR1K.
- Statistieken - Geeft het aantal pakketten aan dat de netwerkprocessor binnenkomt en verlaat
- Samenvatting-
- Dit wordt verzameld voor een eindig aantal pakketten die overeenkomen met specifieke interessevoorwaarden.
- De samenvattende uitvoer geeft de ingangen en uitgangen aan, de opzoekbeslissing van het gegevensvlak en volgt ook punten, vallen en injecteerpakketten, indien aanwezig.
- Deze uitvoer geeft een beknopt beeld van de gegevensstroomverwerking
- Path Data - Dit biedt de meest gedetailleerde weergave van DP-pakketverwerking. Verzameld voor een eindig aantal pakketten, bevat het voorwaardelijke debugging-id die kan worden gebruikt om DP-pakket te correleren om vliegtuigdebugs, tijdstempel en functiespecifieke path-trace-gegevens te regelen. Deze gedetailleerde weergave heeft twee optionele mogelijkheden
- Met Packet Copy kunt u ingress- en egress-pakketten kopiëren op verschillende lagen van het pakket (laag 2, laag 3 en laag 4)
- Feature Invocation array (FIA) is de sequentiële lijst van functies die door het gegevensvlak op het pakket worden uitgevoerd. Deze functies zijn afgeleid van de standaard en door de gebruiker ingestelde configuratie op WLC 9800
Raadpleeg Cisco IOS XE Datapath Packet Trace Feature voor gedetailleerde uitleg over de functie en subopties
Voor draadloze workflows zoals AP join, clientconnectiviteit, enzovoort, waarbij de uplink bidirectioneel wordt gevolgd
Let op: De dataplane packet-tracer parseert alleen de buitenste CAPWAP header. Dus omstandigheden zoals draadloze client mac leveren geen nuttige output op.
Stap 1. Definieer de voorwaarden van interesse.
# debug platform condition { interface | mac | ingress | egress | both | ipv4 | ipv6 | mpls | match }
Waarschuwing: zowel de commando's - debug platform condition feature als debug platform condition mac aaaa.bbbb.cccc zijn bedoeld voor het traceren van vliegtuigpakketten en geven geen dataplane packet traces terug.
Stap 2. Voer de opdracht uit om de voorwaarden te bekijken die momenteel zijn ingeschakeld
# show platform conditions
Stap 3. Packet-tracer inschakelen voor een eindig aantal pakketten. Dit pakketnummer wordt gedefinieerd als een vermogen van 2 in het bereik van 16 - 8192. Standaard worden zowel de samenvattings- als de functiegegevens vastgelegd. Optioneel kunt u ervoor kiezen om alleen een overzichtsweergave te krijgen als u de suboptie Alleen samenvatting gebruikt. Je hebt ook sub-opties beschikbaar om een trace te krijgen, het definiëren van pakketgrootte in bytes, trace punt, injecteren of drop pakketten. en ga zo maar door.
# debug platform packet-tracer packet <packet-number> {fia-trace}
Stap 4. (Optioneel) U kunt de pakketten kopiëren en dumpen terwijl ze worden getraceerd
# debug platform packet-trace copy packet both size 2048 { l2 | l3 | l4 }
Stap 5. Voorwaardelijke foutopsporing inschakelen.
# debug platform condition start
Stap 6. Om te zien of de packet-trace uitvoer verzamelt, controleert u de statistieken
# show platform packet-trace statistics
Stap 7. Voer de opdracht uit om de uitvoer van de packet-trace te bekijken
# show platform packet-tracer summary
Stap 8. (Optioneel) U kunt pakketdump exporteren voor offline analyse door Cisco TAC
# show platform packet-trace packet all | redirect { bootflash: | tftp: | ftp: } pactrac.txt
Embedded Packet Capture
Embedded Packet Capture (EPC) is een pakketopnamefaciliteit die het mogelijk maakt om pakketten te bekijken die bestemd zijn voor, afkomstig zijn van en door de Catalyst 9800 WLC's. Deze opnames kunnen geëxporteerd worden voor offline analyse met Wireshark.
Raadpleeg de configuratiehandleiding van de EPC voor meer informatie over de voorziening
In vergelijking met AireOS, in plaats van te vertrouwen op pakketopname en verkeer mirroring mogelijkheden op uplink switch, 9800 WLC zorgt voor pcap capture op de doos zelf.
Op 9800 kan deze opname zowel vanuit de Command Line Interface (CLI) als de Graphical User Interface (GUI) worden ingesteld.
Om te configureren via GUI, navigeert u naar Problemen oplossen > Pakketvastlegging > +Toevoegen

Stap 1. Definieer de naam van de pakketopname. Er zijn maximaal 8 tekens toegestaan.
Stap 2. Eventuele filters definiëren
Stap 3. Schakel het selectievakje in om het verkeer te bewaken als u wilt zien dat het verkeer op de CPU van het systeem wordt gepunteerd en opnieuw in het gegevensvlak wordt geïnjecteerd
Stap 4. Definieer de buffergrootte. Maximaal 100 MB is toegestaan
Stap 5. Definieer de limiet, hetzij door de duur die een bereik van 1 - 1000000 seconden mogelijk maakt, hetzij door het aantal pakketten dat een bereik van 1 - 100000 pakketten mogelijk maakt, zoals gewenst
Stap 6. Kies de interface uit de lijst met interfaces in de linkerkolom en selecteer de pijl om deze naar de rechterkolom te verplaatsen
Stap 7. Opslaan en toepassen op apparaat
Stap 8. Selecteer Start om het vastleggen te starten
Stap 9. U kunt de opname tot de gedefinieerde limiet laten lopen. Selecteer Stoppen als u het vastleggen handmatig wilt stoppen.
Stap 10. Eenmaal gestopt, wordt een knop Exporteren beschikbaar om te klikken met de optie om het capture-bestand (.pcap) op het lokale bureaublad te downloaden via https of TFTP-server of FTP-server of lokale systeemharddisk of flash.

Opmerking: CLI biedt een beetje meer granulariteit van opties zoals Limit by. GUI is voldoende om pakketten vast te leggen voor veel voorkomende gebruikssituaties.
Configureren via CLI:
Maak de monitor-opname:
monitor capture uplink interface <uplink_of_the_9800> both
Koppel een filter. Het filter kan inline worden opgegeven of er kan naar een ACL of klasse-map worden verwezen.
In dit voorbeeld is het de ACL om het verkeer tussen de 2 ip-adressen van de 9800 en een andere WLC 5520 te matchen. Typisch scenario voor het oplossen van mobiliteitsproblemen:
conf t
ip access-list extended mobilitywlcs
permit ip host <5520_ip_address> host <9800_ip_address>
permit ip host <9800_ip_address> host <5520_ip_address>
end
monitor capture uplink access-list mobilitywlcs
Als u wilt dat de opname in een cirkelvormige buffer wordt uitgevoerd, geeft dit enige tijd om het probleem op te merken en vervolgens de opname te stoppen en op te slaan.
Als je het bijvoorbeeld instelt op 50MB buffer. Het duurt maximaal 50MB van de schijf op de 9800 en het is vrij groot om een aantal minuten van de gegevens vast te leggen in de hoop dat je het optreden van het probleem te krijgen.
monitor capture uplink buffer circular size 50
Start de vastlegging. U kunt het vanuit GUI of CLI bekijken:
monitor capture uplink start
De vastlegging is nu actief.
Laat de benodigde data verzamelen.
Stop de vastlegging. Je kunt het doen via GUI of CLI:
monitor capture uplink stop
U kunt de opname ophalen via de GUI > Problemen oplossen > Pakketvastlegging > Exporteren.
Of uploaden naar een server vanuit CLI. Voorbeeld via ftp:
monitor capture uplink export ftp://x.x.x.x/MobilityCAP.pcap
Zodra de benodigde data zijn verzameld, verwijdert u de vastlegging:
no monitor capture uplink
Alarm LED en kritieke platform alarmen
Alle 9800 toestellen (9800-L, 9800-40 en 9800-80) hebben een ALM LED op hun voorpaneel. Als die LED rood wordt, betekent dit dat er een kritisch alarm op het platform is.
U kunt de alarmen controleren die ervoor zorgen dat de LED rood wordt met de opdracht Alarmstatus weergeven
WLC#show facility-alarm status
System Totals Critical: 2 Major: 0 Minor: 0
Source Time Severity Description [Index]
------ ------ -------- -------------------
TenGigabitEthernet0/1/0 Jul 26 2019 15:14:04 CRITICAL Physical Port Link Down [1]
TenGigabitEthernet0/1/1 Jul 26 2019 15:14:04 CRITICAL Physical Port Link Down [1]