Sommario

Introduzione

In questo documento viene descritto come connettere i client wireless IoT meno recenti che non supportano le versioni 802.1X più recenti.

Requisiti

Componenti usati

Si basa sul controller LAN wireless Catalyst 9800 con qualsiasi versione di Cisco IOS® XE 17.x.

Contesto

Fino ad ora il protocollo 802.1X ha fino a 3 versioni. 802.1X-2001 è la versione 1, 802.1X-2004 è la versione 2, 802.1X-2010 e tutte le revisioni successive utilizzano l'identificatore versione 3.

Lo standard IEEE è molto chiaro: ogni dispositivo deve annunciare la versione massima supportata e quindi concordare una versione comune in quanto tutte le versioni sono compatibili con le versioni precedenti.

Catalyst 9800 WLC annuncia la versione 802.1X e l'eapol la versione 3.

In molti casi, il client wireless risponde con 802.1X versione 1 e l'autenticazione può continuare utilizzando, ad esempio, l'implementazione della versione 1.

Tuttavia, alcuni client IoT meno recenti si aspettano di vedere una versione 802.1X specifica sull'altro lato e non tollerano la visualizzazione di una versione più recente che non sono in grado di comprendere. Questa è una violazione dello standard. Tuttavia, a volte non è possibile aggiornare facilmente il dispositivo IoT e deve convivere con esso. È quindi possibile regolare la versione 802.1X sul controller per creare questi client.

Non ci sono buoni motivi per modificare questa versione a meno che non si abbia la prova che si sta affrontando questo problema con un insieme specifico di client!

Verificare che il problema sia stato risolto

Di seguito è riportato un esempio di traccia radioattiva funzionante in cui il controller annuncia la versione 3 ma il client risponde correttamente con una versione inferiore e l'autenticazione può continuare:

{wncd_x_R0-0}{1}: [dot1x] [25076]: (info): [<MAC>:capwap_9000002c] Posting RESTART on Client

{wncd_x_R0-0}{1}: [dot1x] [25076]: (info): [<MAC>:capwap_9000002c] Entering init state

{wncd_x_R0-0}{1}: [dot1x] [25076]: (info): [<MAC>:capwap_9000002c] Entering idle state

{wncd_x_R0-0}{1}: [dot1x] [25076]: (info): [<MAC>:capwap_9000002c] Posting !AUTH_ABORT on Client

{wncd_x_R0-0}{1}: [dot1x] [25076]: (info): [<MAC>:capwap_9000002c] Entering restart state

{wncd_x_R0-0}{1}: [dot1x] [25076]: (info): [<MAC>:capwap_9000002c] Resetting the client 0xD8000002

{wncd_x_R0-0}{1}: [dot1x] [25076]: (info): [<MAC>:capwap_9000002c] Override cfg - MAC <MAC> - profile (none)

{wncd_x_R0-0}{1}: [dot1x] [25076]: (info): [<MAC>:capwap_9000002c] Override cfg - SuppTimeout 30s, ReAuthMax 2, MaxReq 2, TxPeriod 30s

{wncd_x_R0-0}{1}: [dot1x] [25076]: (info): [<MAC>:capwap_9000002c] Sending create new context event to EAP for 0xD8000002 (7a9d.d7f6.710f)

{wncd_x_R0-0}{1}: [dot1x] [25076]: (info): [<MAC>:capwap_9000002c] Posting !EAP_RESTART on Client

{wncd_x_R0-0}{1}: [dot1x] [25076]: (info): [<MAC>:capwap_9000002c] Enter connecting state

{wncd_x_R0-0}{1}: [dot1x] [25076]: (info): [<MAC>:capwap_9000002c] Restart connecting

{wncd_x_R0-0}{1}: [dot1x] [25076]: (info): [<MAC>:capwap_9000002c] Posting RX_REQ on Client

{wncd_x_R0-0}{1}: [dot1x] [25076]: (info): [<MAC>:capwap_9000002c] Authenticating state entered

{wncd_x_R0-0}{1}: [dot1x] [25076]: (info): [<MAC>:capwap_9000002c] Connecting authenticating action

{wncd_x_R0-0}{1}: [dot1x] [25076]: (info): [<MAC>:capwap_9000002c] Entering request state

{wncd_x_R0-0}{1}: [dot1x] [25076]: (info): [<MAC>:capwap_9000002c] Setting EAPOL eth-type to 0x888e, destination mac to

{wncd_x_R0-0}{1}: [dot1x] [25076]: (info): [0000.0000.0000:capwap_9000002c] Sending out EAPOL packet

{wncd_x_R0-0}{1}: [dot1x] [25076]: (info): [<MAC>:capwap_9000002c] Sent EAPOL packet - Version : 3,EAPOL Type : EAP, Payload Length : 5, EAP-Type = Identity

{wncd_x_R0-0}{1}: [dot1x] [25076]: (info): [<MAC>:capwap_9000002c] EAP Packet - REQUEST, ID : 0x1

{wncd_x_R0-0}{1}: [dot1x] [25076]: (info): [0000.0000.0000:unknown] Pkt body: 01 01 00 05 01

{wncd_x_R0-0}{1}: [dot1x] [25076]: (info): [<MAC>:capwap_9000002c] EAPOL packet sent to client

{wncd_x_R0-0}{1}: [dot1x] [25076]: (info): [<MAC>] Received EAPOL packet - Version : 1,EAPOL Type : EAP, Payload Length : 12, EAP-Type = Identity

{wncd_x_R0-0}{1}: [dot1x] [25076]: (info): [<MAC>:capwap_9000002c] EAP Packet - RESPONSE, ID : 0x1

{wncd_x_R0-0}{1}: [dot1x] [25076]: (info): [0000.0000.0000:unknown] Pkt body: 02 01 00 0c 01 34 34 37 33 36 34 35

{wncd_x_R0-0}{1}: [dot1x] [25076]: (info): [0000.0000.0000:capwap_9000002c] Queuing an EAPOL pkt on Authenticator Q

{wncd_x_R0-0}{1}: [dot1x] [25076]: (info): [0000.0000.0000:capwap_9000002c] Dequeued pkt: CODE = 2,TYPE = 1,LEN = 12

(...) RADIUS authentication follows

Un output non funzionante sarà simile fino al messaggio di richiesta di identità EAP inviato dal WLC/AP e quindi il client non risponderà in alcun modo.

Modifica della versione di EAPOL/802.1X

WLC#show dot1x all

Sysauthcontrol                Disabled

Dot1x Protocol Version               3

WLC#config terminal

Enter configuration commands, one per line.  End with CNTL/Z.

WLC(config)#service internal

WLC(config)#dot1x eapol version 2

WLC(config)#exit

WLC#show dot1x all

Sysauthcontrol                Disabled

Dot1x Protocol Version               2