Introdução
Este documento descreve um caso de uso específico em que o ponto de acesso fica preso na atualização do código durante o processo de união da controladora.
Pré-requisitos
Requisitos
A Cisco recomenda que você tenha conhecimento destes tópicos:
- Conhecimento básico do Cisco WLC 9800
- Conhecimento básico dos APs Cisco Wave2 e/ou 11AX
- Bom entendimento para o processo de junção de AP com o Catalyst 9800 WLC.
Componentes Utilizados
As informações neste documento são baseadas nestas versões de software e hardware:
- Catalyst 9800-L WLC, Cisco IOS® XE Cupertino 17.9.3
- Ponto de acesso Catalyst C9130AXI-E
As informações neste documento foram criadas a partir de dispositivos em um ambiente de laboratório específico. Todos os dispositivos utilizados neste documento foram iniciados com uma configuração (padrão) inicial. Se a rede estiver ativa, certifique-se de que você entenda o impacto potencial de qualquer comando.
Topologia
Esse fluxo de solução de problemas é aplicável para APs conectados no modo local ou APs conectados no modo de conexão flexível em um site de filial.
Identificar e Solucionar Problemas de Topologia
Caso de uso
Este documento discute um caso de uso específico em que o Ponto de acesso conclui sua fase de descoberta e junção, mas fica preso na fase de verificação de dados da imagem. Esse problema ocorre devido a um envio de atualização de código entre o controlador de LAN sem fio e o Ponto de acesso, resultando em uma mensagem de erro informando "Não há mais espaço no dispositivo".
A. Ponto de acesso concluiu a fase de descoberta:
Feb 13 11:11:21 kernel: [*02/13/2024 11:11:21.4662] CAPWAP State: Discovery Feb 13 11:11:21 kernel: [*02/13/2024 11:11:21.4669] IP DNS query for CISCO-CAPWAP-CONTROLLER.cisco.com Feb 13 11:11:21 kernel: [*02/13/2024 11:11:21.5444] Discovery Request sent to 255.255.255.255, discovery type UNKNOWN(0) Feb 13 11:11:21 kernel: [*02/13/2024 11:11:21.5454] Discovery Request sent to ff02::18c, discovery type UNKNOWN(0) Feb 13 11:11:21 kernel: [*02/13/2024 11:11:21.5456] Discovery Response from <WLC IP address> Feb 13 11:11:21 kernel: [*02/13/2024 11:11:21.5466] Discovery Response from <MAC of the controlloer> Feb 13 11:11:21 LED: State received is Dis_join_progress Feb 13 11:11:21 LED: LED state Changed from LED_GREEN to LED_CYCLIC_GRO_LED
B. Logs de configuração de DTLS iniciados e processos de junção concluídos:
Feb 13 11:11:31 kernel: [*02/13/2024 11:11:31.0002] CAPWAP State: DTLS Setup Feb 13 11:11:31 kernel:
[*02/13/2024 11:11:31.6405] Feb 13 11:11:31 kernel: [*02/13/2024 11:11:31.6405] CAPWAP State: Join Feb 13 11:11:31
kernel: [*02/13/2024 11:11:31.6422] Sending Join request to 10.228.104.4 through port 5248 Feb 13 11:11:31 kernel:
[*02/13/2024 11:11:31.6454] Join Response from 10.228.104.4 Feb 13 11:11:31 kernel: [*02/13/2024 11:11:31.6454]
AC accepted join request with result code: 0 Feb 13 11:11:31 kernel: [*02/13/2024 11:11:31.6489] Received wlcType 0,
timer 30 Feb 13 11:11:31 kernel: [*02/13/2024 11:11:31.6489] TLV ID 2216 not found Feb 13 11:11:31 kernel:
[*02/13/2024 11:11:31.6489] TLV-DEC-ERR-1: No proc for 2216
C. Após a conclusão do processo de junção, o Ponto de Acesso entra na fase de dados da Imagem. Durante essa fase, você pode observar uma transferência de imagem do controlador para o AP, que falha, acompanhada pela mensagem de erro "Sem espaço restante no dispositivo".
Feb 13 11:11:31 kernel: [*02/13/2024 11:11:31.6709] CAPWAP State: Image Data
Feb 13 11:11:31 kernel: [*02/13/2024 11:11:31.6712] AP image version 8.10.112.0 backup 0.0.0.0, Controller 17.9.3.50
Feb 13 11:11:31 kernel: [*02/13/2024 11:11:31.6712] Version does not match.
Feb 13 11:11:31 kernel: [*02/13/2024 11:11:31.7111] do PRECHECK, part1 is active part
Feb 13 11:11:31 upgrade: /tmp space: OK available 80268, required 40000
Feb 13 11:11:31 kernel: [*02/13/2024 11:11:31.7322] upgrade.sh: /tmp space: OK available 80268, required 40000
Feb 13 11:11:31 kernel: [*02/13/2024 11:11:31.7326] wtpImgFileReadRequest: request ap1g6a, local /tmp/part.tar
Feb 13 11:11:31 kernel: [*02/13/2024 11:11:31.7337] Image Data Request sent to 10.228.104.4, fileName [ap1g6a], slaveStatus 0
Feb 13 11:11:31 kernel: [*02/13/2024 11:11:31.7351] Image Data Response from 10.228.104.4
Feb 13 11:11:31 kernel: [*02/13/2024 11:11:31.7351] AC accepted join request with result code: 0
Feb 13 11:11:31 LED: State received is Dis_join_completed
Feb 13 11:11:31 LED: State received is Sofware_upgrade_progress
Feb 13 11:11:31 LED: LED state Changed from LED_CYCLIC_GRO_LED to LED_BLINKING_BLUE
Feb 13 11:11:45 kernel: [*02/13/2024 11:11:31.7393] <..................................................
Feb 13 11:11:53 kernel: [*02/13/2024 11:11:45.3443] ..................................................
Feb 13 11:12:07 kernel: [*02/13/2024 11:11:53.9200] ..................................................
Feb 13 11:12:16 kernel: [*02/13/2024 11:12:07.5228] ..........................Discarding msg CAPWAP_WTP_EVENT_REQUEST(type 9) in CAPWAP state: Image Data(10).
Feb 13 11:12:25 kernel: [*02/13/2024 11:12:18.7413] ........................
Feb 13 11:12:43 kernel: [*02/13/2024 11:12:25.5137] ..................................................
Feb 13 11:13:06 kernel: [*02/13/2024 11:12:43.6235] ...................................Discarding msg CAPWAP_WTP_EVENT_REQUEST(type 9) in CAPWAP state: Image Data(10).
Feb 13 11:13:07 kernel: [*02/13/2024 11:13:07.0982] ...Discarding msg CAPWAP_WTP_EVENT_REQUEST(type 9) in CAPWAP state: Image Data(10).
Feb 13 11:13:07 kernel: [*02/13/2024 11:13:07.5458] Discarding msg CAPWAP_WTP_EVENT_REQUEST(type 9) in CAPWAP state: Image Data(10).
Feb 13 11:13:07 kernel: [*02/13/2024 11:13:07.5965] Discarding msg CAPWAP_WTP_EVENT_REQUEST(type 9) in CAPWAP state: Image Data(10).
Feb 13 11:13:09 kernel: [*02/13/2024 11:13:07.6044] ............
Feb 13 11:13:21 kernel: [*02/13/2024 11:13:09.9353] .............> 84387840 bytes, 62742 msgs, 1195 last
Feb 13 11:13:21 kernel: [*02/13/2024 11:13:21.0817] Last block stored, IsPre 0, WriteTaskId 0
Feb 13 11:13:21 kernel: [*02/13/2024 11:13:21.0847] wtpProcessImageDataRequest(10): fileName ap1g6a, pre 0
Feb 13 11:13:21 upgrade: Start doing upgrade arg1=PREDOWNLOAD arg2= arg3= ...
Feb 13 11:13:21 kernel: [*02/13/2024 11:13:21.1278] do PREDOWNLOAD, part1 is active part
Feb 13 11:13:21 kernel: [*02/13/2024 11:13:21.1419] upgrade.sh: Start doing upgrade arg1=PREDOWNLOAD arg2= arg3= ...
Feb 13 11:13:21 upgrade: Using image /tmp/part.tar on axel-qca ...
Feb 13 11:13:21 kernel: [*02/13/2024 11:13:21.1945] upgrade.sh: Using image /tmp/part.tar on axel-qca ...
Feb 13 11:13:21 kernel: [*02/13/2024 11:13:21.1947] sh: write error: No space left on device
Feb 13 11:13:21 kernel: [*02/13/2024 11:13:21.1997] tar: write error: No space left on device
Feb 13 11:13:21 upgrade: ERROR: Image type mismatch. Expected:ap1g6a Got:
Feb 13 11:13:21 kernel: [*02/13/2024 11:13:21.2247] upgrade.sh: ERROR: Image type mismatch. Expected:ap1g6a Got:
Feb 13 11:13:21 upgrade: Cleanup for do_upgrade...
Feb 13 11:13:21 upgrade: /tmp/upgrade_in_progress cleaned
Feb 13 11:13:21 kernel: [*02/13/2024 11:13:21.2411] upgrade.sh: Cleanup for do_upgrade...
Feb 13 11:13:21 upgrade: Cleanup tmp files ...
Feb 13 11:13:21 kernel: [*02/13/2024 11:13:21.2581] upgrade.sh: /tmp/upgrade_in_progress cleaned
FebFeb 13 11:13:21 kernel: [*02/13/2024 11:13:21.3072] capwap-upgrade script returned failure when calling PREDOWNLOAD.
Feb 13 11:13:21 kernel: [*02/13/2024 11:13:21.3073] Discarding msg CAPWAP_WTP_EVENT_REQUEST(type 9) in CAPWAP state: Image Data(10).
Feb 13 11:13:21 kernel: [*02/13/2024 11:13:21.3074] CAPWAP SM handler: Failed to process message type 15 state 10.
Feb 13 11:13:21 kernel: [*02/13/2024 11:13:21.3074] Failed to handle capwap control message from controller - status 2
Feb 13 11:13:21 kernel: [*02/13/2024 11:13:21.3074] Failed to process encrypted capwap packet 0x55aaaa2000 from 10.228.104.4
Feb 13 11:13:21 kernel: [*02/13/2024 11:13:21.3074] Failed to send capwap message 0 to the state machine. Packet already freed.
Feb 13 11:13:22 LED: State received is Sofware_upgrade_fail
Feb 13 11:13:22 LED: LED state Changed from LED_BLINKING_BLUE to LED_GREEN
Feb 13 11:13:25 kernel: [*02/13/2024 11:13:25.6121] Invalid event 56 & state 10 combination.
Feb 13 11:13:25 kernel: [*02/13/2024 11:13:25.6121] Failed to handle timer message.
Feb 13 11:13:28 kernel: [*02/13/2024 11:13:28.4629] Re-Tx Count=1, Max Re-Tx Value=5, SendSeqNum=5, NumofPendingMsgs=1
Feb 13 11:13:28 kernel: [*02/13/2024 11:13:28.4629]
Feb 13 11:13:31 kernel: [*02/13/2024 11:13:31.3139] Re-Tx Count=2, Max Re-Tx Value=5, SendSeqNum=5, NumofPendingMsgs=1
Feb 13 11:13:31 kernel: [*02/13/2024 11:13:31.3139]
Feb 13 11:13:34 kernel: [*02/13/2024 11:13:34.1648] Re-Tx Count=3, Max Re-Tx Value=5, SendSeqNum=5, NumofPendingMsgs=1
Feb 13 11:13:34 kernel: [*02/13/2024 11:13:34.1648]
Feb 13 11:13:37 kernel: [*02/13/2024 11:13:37.0157] Re-Tx Count=4, Max Re-Tx Value=5, SendSeqNum=5, NumofPendingMsgs=1
Feb 13 11:13:37 kernel: [*02/13/2024 11:13:37.0157]
Feb 13 11:13:39 kernel: [*02/13/2024 11:13:39.8666] Re-Tx Count=5, Max Re-Tx Value=5, SendSeqNum=5, NumofPendingMsgs=1
Feb 13 11:13:39 kernel: [*02/13/2024 11:13:39.8666]
Feb 13 11:13:42 kernel: [*02/13/2024 11:13:42.7175] Max retransmission count exceeded, going back to DISCOVER mode.
Feb 13 11:13:42 kernel: [*02/13/2024 11:13:42.7175] Dropping msg CAPWAP_ECHO_REQUEST, type = 1, len = 0, eleLen = 8, sendSeqNum = 5
Feb 13 11:13:42 kernel: [*02/13/2024 11:13:42.7185]
Feb 13 11:13:42 kernel: [*02/13/2024 11:13:42.7185] CAPWAP State: DTLS Teardown
Feb 13 11:13:42 kernel: [*02/13/2024 11:13:42.7303] Aborting image download(0x0): Dtls cleanup, ap1g6a
Feb 13 11:13:42 kernel: [*02/13/2024 11:13:42.7952] do ABORT, part1 is active part
Feb 13 11:13:42 upgrade: Cleanup tmp files ...
Feb 13 11:13:42 kernel: [*02/13/2024 11:13:42.8145] upgrade.sh: Cleanup tmp files ...
Solução
Há várias soluções para lidar com isso:
Opção 1. Primeiro, atualize para uma imagem intermediária que tenha a correção antes de passar para 17.7+. 1. Atualize para 17.3.5 2. Continue a atualização para a versão 17.7+.
Opção 2. Manual DE Solução alternativa: mount -o remount,size=100M /tmp/ Isso requer acesso de desenvolvimento.
Qualquer uma dessas opções funciona e você pode precisar de ajuda com o TAC ao trabalhar com a Opção 2.