PDF(548.5 KB) View with Adobe Reader on a variety of devices
ePub(491.4 KB) View in various apps on iPhone, iPad, Android, Sony Reader, or Windows Phone
Mobi (Kindle)(440.5 KB) View on Kindle device or Kindle app on multiple devices
Updated:September 13, 2023
Document ID:220919
Bias-Free Language
The documentation set for this product strives to use bias-free language. For the purposes of this documentation set, bias-free is defined as language that does not imply discrimination based on age, disability, gender, racial identity, ethnic identity, sexual orientation, socioeconomic status, and intersectionality. Exceptions may be present in the documentation due to language that is hardcoded in the user interfaces of the product software, language used based on RFP documentation, or language that is used by a referenced third-party product. Learn more about how Cisco is using Inclusive Language.
This document describes how to configure, validate, and troubleshoot 802.1x network access control (NAC) on Catalyst 9000 series switches.
Prerequisites
Requirements
Cisco recommends that you have knowledge of these topics.
Catalyst 9000 series switches
Identity Services Engine (ISE)
Components Used
The information in this document is based on these software and hardware versions:
Catalyst 9300
Catalyst 9400
Catalyst 9500
Catalyst 9600
Cisco IOS® XE 17.6.x and later
ISE-VM-K9 version 3.0.0.458
The information in this document was created from the devices in a specific lab environment. All of the devices used in this document started with a cleared (default) configuration. If your network is live, ensure that you understand the potential impact of any command.
Note: Consult the appropriate configuration guide for the commands that are used in order to enable these features on other Cisco platforms.
Background Information
The 802.1x standard defines a client-server-based access control and authentication protocol that prevents unauthorized clients from connecting to a LAN through publicly accessible ports unless they are properly authenticated. The authentication server authenticates each client connected to a switch port before making available any services offered by the switch or the LAN.
802.1x authentication involves three distinct components:
Supplicant - Client that submits credentials for authentication Authenticator - The network device that provides network connectivity between the client and the network and can allow or block network traffic. Authentication Server — Server that can receive and respond to requests for network access, tells the authenticator if the connection can be allowed and various other settings that will apply to the authentication session.
The intended audience for this document are engineers and support personnel who are not necessarily security-focused. For more information about 802.1x Port-Based authentication and components such as ISE, consult the appropriate configuration guide.
Note: Consult the appropriate configuration guide for your specific platform and version of code for the most accurate default 802.1x authentication configuration.
Basic Configuration
This section describes the basic configuration required to implement 802.1x port-based authentication. Additional feature explanation can be found within the addendums tab of this document. There are slight variations in configuration standards from version to version. Validate your configuration against your current version configuration guide.
Authentication, Authorization and Accounting (AAA) must be enabled prior to configuring 802.1x port-based authentication, and a method list must be established.
Method lists describe the sequence and authentication method to be queried to authenticate a user.
C9300(config)# interface TenGigabitEthernet 1/0/4 C9300(config-if)# switchport mode access C9300(config-if)# authentication port-control auto C9300(config-if)# dot1x pae authenticator C9300(config-if)# end
IBNS 2.0
Identity-Based Networking Services (IBNS) 2.0 builds upon and replaces the traditional IBNS 1.0 framework. It addresses the complexity and configuration of IBNS 1.0 by introducing a more streamlined and powerful policy engine called the Access Session Manager.
IBNS 2.0 Configuration
- In order to enable IBNS 2.0, you must execute the command in privilege mode on your Cisco switch:
#authentication display new-style
- Configure switchport for IBNS 2.0 with commands as shown:
access-session host-mode {single-host | multi-domain | multi-auth | multi-host} access-session port-control auto dot1x pae authenticator {mab} service-policy type control subscriber TEST
These commands enable dot1x authentication, and optionally, MAC Authentication Bypass (MAB) on the interface. When you use the new syntax, you use commands which start with access-session. The purpose of those commands is the same as for commands that use old syntax (starting with authentication keyword).
Apply service-policy to specify policy-map that can be used for the interface.
- The policy-map mentioned defines behavior of the switch (authenticator) during authentication.
For example, you can specify what can happen in case of authentication failure. For each event you can configure multiple actions based on the type of the event matched in class-map configured under it. As an example, take a look at the list as shown (policy-map TEST). If dot1x endpoint, which is connected to the interface where this policy is applied fails, then action defined in DOT1X_FAILED is executed. If you want to specify the same behavior for classes like MAB_FAILED and DOT1X_FAILED, then you can use default class - 'class-map' always.
policy-map type control subscriber TEST (...) event authentication-failure match-first 10 class DOT1X_FAILED do-until-failure 10 terminate dot1x (...) 40 class always do-until-failure 10 terminate mab 20 terminate dot1x 30 authentication-restart 60 (...)
- Policy-map used for IBNS 2.0 always must have type control subscriber. You can view the list of available events in this way:
- In event configuration, you have the possibility to define how classes can be evaluated:
Switch(config-event-control-policymap)#event authentication-failure ? match-all Evaluate all the classes match-first Evaluate the first class
- You can define similar options for class-maps, although here you specify how actions can be executed in case your class is matched:
Switch(config-class-control-policymap)#10 class always ? do-all Execute all the actions do-until-failure Execute actions until one of them fails do-until-success Execute actions until one of them is successful
- Last part (optional) of configuration in new style of dot1x is class-map. It can also type control subscriber, and it is used to match specific behavior or traffic. Configure requirements for class-map condition evaluation. You can specify that all conditions or any condition must be matched, or none of the conditions match.
Switch(config)#class-map type control subscriber ? match-all TRUE if everything matches in the class-map match-any TRUE if anything matches in the class-map match-none TRUE if nothing matches in the class-map
- This is an example of class-map used for matching dot1x authentication failure:
class-map type control subscriber match-all DOT1X_FAILED match method dot1x match result-type method dot1x authoritative
This section provides background information on 801.1x, and how to verify configuration and operations.
Introduction to 802.1x
802.1x involves two distinct types of traffic - Client to Authenticator (point-to-point) traffic over EAPoL (Extensible Authentication Protocol over LAN) and Authenticator to Authentication Server traffic that is encapsulated via RADIUS.
This diagram represents data flow for a simple dot1x transaction.
The Authenticator (switch) and Authentication Server (ISE, for example) are often separated by Layer 3. RADIUS traffic is routed over the network between authenticator and server. EAPoL traffic is exchanged on the direct link between supplicant (client) and authenticator.
Note that MAC learning occurs after authentication and authorization.
Here are a few questions to keep in mind as you approach a problem that involves 802.1x:
Is it configured correctly?
Is the authentication server reachable?
What is the status of the Authentication Manager?
Are there any problems with packet deliverability between client and authenticator or between authenticator and authentication server?
Configuration
Some configurations vary slightly between major releases. Refer to the relevant configuration guide for platform/code-specific guidance.
AAA must be configured to utilize 802.1x Port-Based Authentication.
An authentication method list must be established for 'dot1x'. This represents a common AAA configuration where 802.1X is enabled.
C9300#show running-config | section aaa
aaa new-model <-- This enables AAA.
aaa group server radius ISEGROUP <-- This block establishes a RADIUS server group named "ISEGROUP".
server name DOT1x
ip radius source-interface Vlan1
aaa authentication dot1x default group ISEGROUP <-- This line establishes the method list for 802.1X authentication. Group ISEGROUP is be used.
aaa authorization network default group ISEGROUP
aaa accounting update newinfo periodic 2880
aaa accounting dot1x default start-stop group ISEGROUP
C9300#show running-config | section radius
aaa group server radius ISEGROUP
server name DOT1x
ip radius source-interface Vlan1 <-- Notice 'ip radius source-interface' configuration exists in both global configuration and the aaa server group block. These need to agree if configured in both places.
ip radius source-interface Vlan1
radius server DOT1x
address ipv4 10.122.141.228 auth-port 1812 acct-port 1813 <-- 1812 and 1813 are default auth-port and acct-port, respectively.
key secretKey
This is an example interface configuration where 802.1x is enabled. MAB (MAC Authentication Bypass) is a common backup method for authenticating clients that do not support dot1x supplicants.
C9300#show running-config interface te1/0/4
Building configuration...
Current configuration : 148 bytes
!
interface TenGigabitEthernet1/0/4
switchport access vlan 50
switchport mode access authentication order dot1x mab <-- Specifies authentication order, dot1x and then mab authentication priority dot1x mab <-- Specifies authentication priority, dot1x and then mab
authentication port-control auto <-- Enables 802.1x dynamic authentication on the port mab <-- Enables MAB
dot1x pae authenticator <-- Puts interface into "authenticator" mode.
end
Determine if a MAC address is learned on the interface with show mac address-table interface <interface>. The interface only learns a MAC address when successfully authenticated.
C9300#show mac address-table interface te1/0/4
Mac Address Table
-------------------------------------------
Vlan Mac Address Type Ports
---- ----------- -------- -----
50 0800.2766.efc7 STATIC Te1/0/4 <-- The "type" is STATIC and the MAC persists until the authentication session is cleared.
Total Mac Addresses for this criterion: 1
Authentication Session
Show commands are available for validation of 802.1x authentication.
Use show authentication sessions or show authentication sessions <interface> in order to display information about the current authentication sessions. In this example, only Te1/0/4 has an active authentication session established.
C9300#show authentication sessions interface te1/0/4
Interface MAC Address Method Domain Status Fg Session ID
--------------------------------------------------------------------------------------------
Te1/0/4 0800.2766.efc7 dot1x DATA Auth 13A37A0A0000011DC85C34C5 <-- "Method" and "Domain" in this example are dot1x and DATA, respectively. Multi-domain authentication is supported.
Key to Session Events Blocked Status Flags:
A - Applying Policy (multi-line status for details)
D - Awaiting Deletion
F - Final Removal in progress
I - Awaiting IIF ID allocation
P - Pushed Session
R - Removing User Profile (multi-line status for details)
U - Applying User Profile (multi-line status for details)
X - Unknown Blocker
Runnable methods list:
Handle Priority Name
13 5 dot1xSup
1 5 dot1x
2 10 webauth
14 15 mab
Show authentication sessions interface <interface> details provides additional details about a specific interface authentication session.
C9300#show authentication session interface te1/0/4 details
Interface: TenGigabitEthernet1/0/4
IIF-ID: 0x14D66776
MAC Address: 0800.2766.efc7
IPv6 Address: Unknown
IPv4 Address: Unknown
User-Name: alice
Status: Authorized
Domain: DATA
Oper host mode: multi-auth
Oper control dir: both
Session timeout: N/A
Acct update timeout: 172800s (local), Remaining: 152363s
Common Session ID: 13A37A0A0000011DC85C34C5
Acct Session ID: 0x00000002
Handle: 0xe8000015
Current Policy: POLICY_Te1/0/4 <-- If a post-authentication ACL is applied, it is listed here.
Local Policies:
Service Template: DEFAULT_LINKSEC_POLICY_SHOULD_SECURE (priority 150)
Security Policy: Should Secure
Server Policies:
Method status list:
Method State
dot1x Authc Success <-- This example shows a successful 802.1x authentication session.
If authentication is enabled on an interface yet there is no active session, the runnable methods list is displayed. 'No sessions match supplied criteria' is also displayed.
C9300#show authentication sessions interface te1/0/5
No sessions match supplied criteria.
Runnable methods list:
Handle Priority Name
13 5 dot1xSup
1 5 dot1x
2 10 webauth
14 15 mab
If no authentication is enabled on the interface, there is no Auth Manager presence detected on the interface. 'No sessions match supplied criteria' is also displayed.
C9300#show authentication sessions interface te1/0/6 No sessions match supplied criteria. No Auth Manager presence on this interface
Reachability to Authentication Server
Reachability to the Authentication Server is a prerequisite for 802.1x authentication success.
Use ping <server_ip> for a quick test of reachability. Ensure your ping is sourced from the RADIUS source interface.
C9300#ping 10.122.141.228 source vlan 1
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 10.122.141.228, timeout is 2 seconds:
Packet sent with a source address of 10.122.163.19
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 1/1/1 ms
The command show aaa servers identifies the server state and provides statistics on transactions with all configured AAA servers.
C9300#show aaa servers
RADIUS: id 3, priority 1, host 10.122.141.228, auth-port 1812, acct-port 1813, hostname DOT1x <-- Specific server
State: current UP, duration 84329s, previous duration 0s <-- Current State
Dead: total time 0s, count 1
Platform State from SMD: current UP, duration 24024s, previous duration 0s
SMD Platform Dead: total time 0s, count 45
Platform State from WNCD (1) : current UP
Platform State from WNCD (2) : current UP
Platform State from WNCD (3) : current UP
Platform State from WNCD (4) : current UP
Platform State from WNCD (5) : current UP
Platform State from WNCD (6) : current UP
Platform State from WNCD (7) : current UP
Platform State from WNCD (8) : current UP, duration 0s, previous duration 0s
Platform Dead: total time 0s, count 0UP
Quarantined: No
Authen: request 510, timeouts 468, failover 0, retransmission 351 <-- Authentication Statistics
Response: accept 2, reject 2, challenge 38
Response: unexpected 0, server error 0, incorrect 12, time 21ms
Transaction: success 42, failure 117
Throttled: transaction 0, timeout 0, failure 0
Malformed responses: 0
Bad authenticators: 0
Dot1x transactions:
Response: total responses: 42, avg response time: 21ms
Transaction: timeouts 114, failover 0
Transaction: total 118, success 2, failure 116
MAC auth transactions:
Response: total responses: 0, avg response time: 0ms
Transaction: timeouts 0, failover 0
Transaction: total 0, success 0, failure 0
Author: request 0, timeouts 0, failover 0, retransmission 0
Response: accept 0, reject 0, challenge 0
Response: unexpected 0, server error 0, incorrect 0, time 0ms
Transaction: success 0, failure 0
Throttled: transaction 0, timeout 0, failure 0
Malformed responses: 0
Bad authenticators: 0
MAC author transactions:
Response: total responses: 0, avg response time: 0ms
Transaction: timeouts 0, failover 0
Transaction: total 0, success 0, failure 0
Account: request 3, timeouts 0, failover 0, retransmission 0
Request: start 2, interim 0, stop 1
Response: start 2, interim 0, stop 1
Response: unexpected 0, server error 0, incorrect 0, time 11ms
Transaction: success 3, failure 0
Throttled: transaction 0, timeout 0, failure 0
Malformed responses: 0
Bad authenticators: 0
Elapsed time since counters last cleared: 1d3h4m
Estimated Outstanding Access Transactions: 0
Estimated Outstanding Accounting Transactions: 0
Estimated Throttled Access Transactions: 0
Estimated Throttled Accounting Transactions: 0
Maximum Throttled Transactions: access 0, accounting 0
Consecutive Response Failures: total 115
SMD Platform : max 113, current 0 total 113
WNCD Platform: max 0, current 0 total 0
IOSD Platform : max 2, current 2 total 2
Consecutive Timeouts: total 466
SMD Platform : max 455, current 0 total 455
WNCD Platform: max 0, current 0 total 0
IOSD Platform : max 11, current 11 total 11
Requests per minute past 24 hours:
high - 23 hours, 25 minutes ago: 4
low - 3 hours, 4 minutes ago: 0
average: 0
Use the 'test aaa' utility to confirm reachability from switch to authentication server. Note that this utility is deprecated and is not available indefinitely.
C9300#debug radius <-- Classic Cisco IOS debugs are only useful in certain scenarios. See "Cisco IOS XE Debugs" for details. C9300#test aaa group ISE username password new-code <-- This sends a RADIUS test probe to the identified server. The username and password is meant to elicit a rejection from RADIUS. User rejected <-- This means that the RADIUS server received our test probe, but rejected our user. We can conclude the server is reachable and listening on the configured auth-port. *Jul 16 21:05:57.632: %PARSER-5-HIDDEN: Warning!!! ' test platform-aaa group server-group ISE user-name username password new-code blocked count delay level profile rate users ' is a hidden command. Use of this command is not recommended/supported and will be removed in future. *Jul 16 21:05:57.644: RADIUS/ENCODE(00000000):Orig. component type = Invalid *Jul 16 21:05:57.644: RADIUS/ENCODE(00000000): dropping service type, "radius-server attribute 6 on-for-login-auth" is off *Jul 16 21:05:57.644: RADIUS(00000000): Config NAS IP: 10.122.161.63 *Jul 16 21:05:57.644: vrfid: [65535] ipv6 tableid : [0] *Jul 16 21:05:57.644: idb is NULL *Jul 16 21:05:57.644: RADIUS(00000000): Config NAS IPv6: :: *Jul 16 21:05:57.644: RADIUS(00000000): sending *Jul 16 21:05:57.644: RADIUS/DECODE(00000000): There is no General DB. Want server details may not be specified *Jul 16 21:05:57.644: RADIUS(00000000): Send Access-Request to 10.122.141.199:1812 id 1645/8, len 50 <-- Sending Access-Request to RADIUS server RADIUS: authenticator 3B 65 96 37 63 E3 32 41 - 3A 93 63 B6 6B 6A 5C 68 *Jul 16 21:05:57.644: RADIUS: User-Password [2] 18 * *Jul 16 21:05:57.644: RADIUS: User-Name [1] 6 "username" *Jul 16 21:05:57.644: RADIUS: NAS-IP-Address [4] 6 10.122.161.63 *Jul 16 21:05:57.644: RADIUS(00000000): Sending a IPv4 Radius Packet *Jul 16 21:05:57.644: RADIUS(00000000): Started 5 sec timeout *Jul 16 21:05:57.669: RADIUS: Received from id 1645/8 10.122.141.199:1812, Access-Reject, len 20 <-- Receiving the Access-Reject from RADIUS server RADIUS: authenticator 1A 11 32 19 12 F9 C3 CC - 6A 83 54 DF 0F DB 00 B8 *Jul 16 21:05:57.670: RADIUS/DECODE(00000000): There is no General DB. Reply server details may not be recorded *Jul 16 21:05:57.670: RADIUS(00000000): Received from id 1645/8
Troubleshoot
This section provides guidance on how to troubleshoot most 802.1x problems on a Catalyst switch.
Methodology
Approach problems that involve 802.1x and authentication methodically for best results. Some good questions to answer are:
Is the problem isolated to a single switch? A single port? A single client type?
Has the configuration been validated? Is the authentication server reachable?
Does the problem occur every time, or is it intermittent? Does it only occur with reauthentication or change of authorization?
Scrutinize a single failed transaction end-to-end if problems persist after the obvious has been ruled out. The best, most complete data set for investigation of an 802.1x transaction from client to server includes:
1a. Capture on Client and/or
1b. On the access interface where the Client connects
This point of reference is crucial to give us insight into the EAPoL packets exchanged between the access port where dot1x is enabled and the client. SPAN is the most dependable tool for viewing traffic between client and authenticator.
2. Debugs on authenticator
Debugs allow us to trace the transaction across the authenticator.
The authenticator must punt the EAPoL packets received, and generate unicast RADIUS-encasulated traffic destined for the authentication server.
Ensure appropriate debug levels are set for maximum effectiveness.
3. Capture adjacent to authenticator
This capture allows us to see the conversation between Authenticator and Authentication server.
This capture accurately displays the entirety of the conversation from the perspective of the Authenticator.
When paired with the capture in point 4, you can determine if there is loss between Authentication Server and Authenticator.
4. Capture adjacent to authentication server
This capture is a companion to the capture in point 3.
This capture provides the entirety of the conversation from the perspective of the Authentication Server.
When paired with the capture in point 3, you can determine if there is loss between Authenticator and Authentication Server.
5. Capture, debugs, logs on authentication server
The final piece of the puzzle, server debugs tell us what the server knows about our transaction.
With this end-to-end set of data, a network engineer can determine where the transaction breaks and rule out components that do not contribute to the problem.
Example Symptoms
This section provides a list of common symptoms and problem scenarios.
No Response from Client
If the EAPoL traffic generated by the switch does not elicit a response, this syslog is seen:
Aug 23 11:23:46.387 EST: %DOT1X-5-FAIL: Switch 1 R0/0: sessmgrd: Authentication failed for client (aaaa.bbbb.cccc) with reason (No Response from Client) on Interface Gi6/0/32 AuditSessionID CBFF000A000001056EFE9E73
The reason code 'No Response from Client' indicates the switch has started the dot1x process, but no response has been received from the client within the timeout period. This means either the client did not receive or understand the authentication traffic sent by the switch port, or the response from the client was not received on the switch port.
Client abandons session
If an authentication session is started but does not complete, the Authentication Server (ISE for instance) reports that the client has started a session, but abandoned the session before completion. Often, this means that the authentication process is only able to partially complete.
Ensure the entire transaction between the authenticator switch and authentication server is delivered end-to-end, and is correctly interpreted by the authentication server.
If RADIUS traffic is lost on the network, or delivered in a manner where it cannot be properly assembled, the transaction is incomplete and the client retries authentication. The server in turn reports that the client has abandoned its session.
MAB client fails DHCP/falls back to APIPA
MAC Authentication Bypass (MAB) allows authentication based on MAC address. Often clients that do not support supplicant software authenticate via MAB.
If MAB is used as a fallback method for authentication while dot1x is the preferred and initial method that runs on a switch port, a scenario potentially results where the client is unable to complete DHCP.
The problem boils down to order of operations. While dot1x runs, the switch port consumes packets other than EAPoL until either authentication completes or dot1x times out. The client, however, immediately attempts to get an IP address and broadcasts its DHCP discover messages. These discover messages are consumed by the switch port until dot1x exceeds its configured timeout values and MAB is able to run. If the client DHCP timeout period is less than the dot1x timeout period, DHCP fails and the client falls back to APIPA or whatever its fall back strategy dictates.
This problem is prevented in multiple ways. Favor MAB on interfaces where MAB authenticated clients connect. If dot1x must run first, be mindful of client DHCP behavior and adjust timeout values appropriately.
Be careful to consider client behavior when dot1x and MAB is used. A valid configuration potentially leads to a technical problem, as described earlier.
Platform Specific Utilities
This section outlines many of the platform-specific utilities available on the Catalyst 9000 family of switches useful to troubleshoot problems of dot1x.
Switch Port Analyzer (SPAN)
SPAN allows the user to mirror traffic from one or more ports to a destination port for capture and analysis. Local SPAN is the most 'trustworthy' capture utility.
See this configuration guide for details on configuration and implementation.
Embedded Packet Capture (EPC)
EPC leverages CPU and memory resources to provide on-board local packet capture capability.
There are limitations to EPC that impact its effectiveness for investigating certain problems. EPC is rate-limited at 1000 packets per second. EPC also cannot reliably capture CPU-injected packets on egress of physical interfaces. This is significant when the focus is on the RADIUS transaction between the authenticator switch and the authentication server. Often, the traffic rate on interface that faces the server greatly exceeds 1000 packets per second. Also, an EPC on egress of interface that faces the server is unable to capture traffic generated by the authenticator switch.
Use bidirectional access lists to filter the EPC in order to avoid impact by the 1000 packet per second limitation. If interested in the RADIUS traffic between authenticator and server, focus on traffic between the authenticator RADIUS source interface address and the address of the server.
If the next upstream device towards the authentication server is a Catalyst switch, use a filtered EPC on the downlink towards the authenticator switch for best results.
See this configuration guide for details on configuration and implementation.
Cisco IOS XE Debugs
Software architecture changes that start with Cisco IOS XE version 16.3.2 moved AAA components to a separate Linux daemon. Familiar debugs no longer enable viewable debugs in the logging buffer.
Tip: Traditional IOS AAA debugs no longer provide output in system logs for front-panel port authentication within the syslog buffer.
Instead, these classic Cisco IOS debugs for dot1x and RADIUS no longer enable viewable debugs within the switch logging buffer of the switch:
debug radius debug access-session all debug dot1x all
AAA component debugs are now accessible via system trace under the Session Manager Daemon (SMD).
Like traditional syslogs, Catalyst system traces report at a default level and must be instructed to collect more in-depth logs.
Change the routine trace level for the desired subcomponent with the command set platform software trace smd switch active r0 <component> debug.
Switch#set platform software trace smd switch active R0 auth-mgr debug <<<--- This sets the "auth-mgr" subcomponent to "debug" log level.
This table maps traditional IOS debugs to their trace equivalent.
Old Style Command
New Style Command
#debug radius
#set platform software trace smd switch active R0 radius debug
#debug dot1x all
#set platform software trace smd switch active R0 dot1x-all debug
#debug access-session all
#set platform software trace smd switch active R0 auth-mgr-all debug
#debug epm all
#set platform software trace smd switch active R0 epm-all debug
Classic debugs enable all of the related component traces to 'debug' level. Platform commands are also used to enable specific traces as required.
Use the command show platform software trace level smd switch active R0 in order to show the current trace level for SMD subcomponents.
Sub-component trace level can be restored to default in two ways.
Use either undebug all or set platform software trace smd switch active R0 <sub-component> notice in order to restore.
If the device reloads, the trace levels restore to default as well.
Switch#undebug all All possible debugging has been turned off
or
Switch#set platform software trace smd switch active R0 auth-mgr notice<--- Sets sub-component "auth-mgr" to trace level "Notice", the system default.
Component trace logs can be viewed on console or written to archive and viewed offline. Traces are archived in zipped binary archives that require decoding. Contact TAC for debug assistance when dealing with archived traces. This workflow explains how to view the traces in CLI.
Show logging process is the updated utility for traces and the standard in version Cisco IOS XE 17.9.x and beyond.
C9300#show logging process smd ?
<0-25> instance number
end specify log filtering end location
extract-pcap Extract pcap data to a file
filter specify filter for logs
fru FRU specific commands
internal select all logs. (Without the internal keyword only
customer curated logs are displayed)
level select logs above specific level
metadata CLI to display metadata for every log message
module select logs for specific modules
reverse show logs in reverse chronological order
start specify log filtering start location
switch specify switch number
to-file decode files stored in disk and write output to file
trace-on-failure show the trace on failure summary
| Output modifiers
Show logging process provides the same functionality as show platform software trace in a more elegant and accessible format.
This section includes session manager traces for dot1x and radius components for a full, failed transaction (server rejects client credentials). It is intended to provide a basic guideline to navigate system traces related to front-panel authentication.
A test client attempts to connect to GigabitEthernet1/0/2, and is rejected.
In this example, SMD component traces are set to 'debug'.
C9300#set platform software trace smd sw active r0 dot1x-all C9300#set platform software trace smd sw active r0 radius debug
The port sends and receives normal traffic without 802.1x-based authentication of the client.
AAA
Disabled.
RADIUS server
IP address
UDP authentication port
Default accounting port
Key
None specified.
1645.
1646.
None specified.
Host mode
Single-host mode.
Control direction
Bidirectional control.
Periodic re-authentication
Disabled.
Number of seconds between re-authentication attempts
3600 seconds.
Re-authentication number
Two times (number of times that the switch restarts the authentication process before the port changes to the unauthorized state).
Quiet period
60 seconds (number of seconds that the switch remains in the quiet state after a failed authentication exchange with the client).
Retransmission time
30 seconds (number of seconds that the switch waits for a response to an EAP request/identity frame from the client before resending the request).
Maximum retransmission number
Two times (number of times that the switch sends an EAP-request/identity frame before restarting the authentication process).
Client timeout period
30 seconds (when relaying a request from the authentication server to the client, the amount of time the switch waits for a response before resending the request to the client).
Authentication server timeout period
30 seconds (when relaying a response from the client to the authentication server, the amount of time the switch waits for a reply before resending the response to the server).
You can change this timeout period by using the dot1x timeout server-timeout interface configuration command.
Inactivity timeout
Disabled.
Guest VLAN
None specified.
Inaccessible authentication bypass
Disabled.
Restricted VLAN
None specified.
Authenticator (switch) mode
None specified.
MAC authentication bypass
Disabled.
Voice-aware security
Disabled.
Optional Settings
Periodic Re-Authentication:
You can enable periodic 802.1x client re-authentication and specify how often it occurs:
authentication periodic - enables periodic re-authentication of the client
inactivity — Interval in seconds after which if there is no activity from the client then it is unauthorized
reauthenticate— Time in seconds after which an automatic re-authentication attempt is initiated
restart value— Interval in seconds after which an attempt is made to authenticate an unauthorized port
unauthorized value— Interval in seconds after which an unauthorized session gets deleted
You can configure an 802.1x port so that it shuts down, generates a syslog error, or discards packets from a new device when a device connects to an 802.1x-enabled port or the maximum number of allowed about devices have been authenticated on the port.
shutdown– Error disable the port.
restrict– Generate a syslog error.
protect– Drop packets from any new device that sends traffic to the port.
replace– Removes the current session and authenticates with the new host.
The authentication timer restart interface configuration command controls the idle period, which dictates the set period of time where the switch remains idle after a switch cannot authenticate the client. The range for the value is 1 to 65535 seconds.
authentication timer restart {seconds}
Changing the Switch-to-Client Retransmission Time:
The client responds to the EAP-request/identity frame from the switch with an EAP-response/identity frame. If the switch does not receive this response, it waits a set period of time (known as the retransmission time) and then resends the frame.
authentication timer reauthenticate {seconds}
Setting the Switch-to-Client Frame-Retransmission Number:
You can change the number of times that the switch sends an EAP-request/identity frame (assuming no response is received) to the client before restarting the authentication process. The range is 1 to 10.
dot1x max-reauth-req {count}
Configuring the Host Mode:
You can allow multiple hosts (clients) on a 802.1x authorized port.
multi-auth – Allows multiple authenticated clients on both the voice VLAN and data VLAN.
multi-host – Allows multiple hosts on an 802.1x-authorized port after a single host has been authenticated.
multi-domain – Allows both a host and a voice device, such as an IP phone (Cisco or non-Cisco), to be authenticated on an IEEE 802.1x-authorized port.
You can also change the number of times that the device restarts the authentication process before the port changes to the unauthorized state. The range is 0 to 10.
dot1x max-req {count}
Configuring a Guest VLAN:
When you configure a guest VLAN, clients that are not 802.1x-capable are put into the guest VLAN when the server does not receive a response to its EAP request/identity frame.
When you configure a restricted VLAN on a device, clients that are IEEE 802.1x-compliant are moved into the restricted VLAN when the authentication server does not receive a valid username and password.
Configuring Number of Authentication Attempts on a Restricted VLAN:
You can configure the maximum number of authentication attempts allowed before a user is assigned to the restricted VLAN by using the authentication event fail retry retry countinterface configuration command. The range of allowable authentication attempts is 1 to 3.
authentication event fail retry {retry count}
Configuring 802.1x Inaccessible Authentication Bypass with Critical Voice VLAN:
You can configure a critical voice VLAN on a port and enable the inaccessible authentication bypass feature.
authorize - Move any new hosts trying to authenticate to the user-specificied critical VLAN
reinitialize - Move all authorized hosts on the port to the user-specified critical VLAN
authentication event server dead action {authorize | reinitialize} vlanvlan-id]
authentication event server dead action authorize voice
Configuring 802.1x Authentication with WoL:
You can enable 802.1x authentication with Wake on LAN (WoL).
authentication control-direction both
Configuring MAC Authentication Bypass:
mab
Configuring Flexible Authentication Ordering:
authentication order [ dot1x | mab ] | {webauth}
authentication priority [ dot1x | mab ] | {webauth}
Configuring Voice-Aware 802.1x Security:
You use the voice aware 802.1x security feature on the device to disable only the VLAN on which a security violation occurs, whether it is a data or voice VLAN. A security violation found on the data VLAN results in the shutdown of only the data VLAN. This is a global configuration.
errdisable detect cause security-violation shutdown vlan
errdisable recovery cause security-violation
Flowcharts
Authentication Flowchart:
Port-Based Authentication Initiation and Message Exchange:
This figure shows the client initiating message exchange to the RADIUS server.
MAB Authentication Initiation and Message Exchange:
This figure shows the message exchange during MAC authentication bypass (MAB).