Skip to content

Dot1x

802.1X is an IEEE standard for port-based network access control that provides authentication framework to prevent unauthorized devices from accessing network resources until proper credentials are validated. It operates using the Extensible Authentication Protocol (EAP) to facilitate secure communication between supplicants (client devices), authenticators (network switches), and authentication servers (typically RADIUS). The 802.1X framework supports various authentication methods including username/password, digital certificates, and smart cards, enabling organizations to implement comprehensive network access control policies with granular user and device identification capabilities.

Diagram
NameTypeConstraintMandatoryDefault Value
dot1xClass[dot1x]No

NameTypeConstraintMandatoryDefault Value
auth_fail_eapolBooleantrue, falseNo
credentialsList[credentials]No
critical_eapolBooleantrue, falseNo
critical_eapol_blockBooleantrue, falseNo
critical_eapol_config_blockBooleantrue, falseNo
critical_recovery_delayIntegermin: 1, max: 10000No
guest_vlan_supplicantBooleantrue, falseNo
test_timeoutIntegermin: 1, max: 65535No
logging_verboseBooleantrue, falseNo
supplicant_controlled_transientBooleantrue, falseNo
supplicant_force_multicastBooleantrue, falseNo
system_auth_controlBooleantrue, falseNo

credentials (iosxe.devices.configuration.dot1x)

Section titled “credentials (iosxe.devices.configuration.dot1x)”
NameTypeConstraintMandatoryDefault Value
profile_nameStringYes
descriptionStringNo
usernameStringNo
password_typeChoice0, 6, 7No
passwordStringNo
pki_trustpointStringNo
anonymous_idStringNo

  • The guest_vlan_supplicant attribute (dot1x guest-vlan supplicant) is deprecated on IOS XE 17.15.3 and later. On newer platforms, guest VLAN behavior should be managed through Control Policy Language (CPL) configurations instead.

Comprehensive 802.1X Configuration with Guest VLAN and Credentials

Section titled “Comprehensive 802.1X Configuration with Guest VLAN and Credentials”
dot1x system-auth-control
dot1x guest-vlan supplicant
dot1x auth-fail eapol
dot1x critical eapol-config block
dot1x critical recovery delay 20
dot1x test timeout 20
dot1x logging verbose
dot1x supplicant controlled transient
dot1x supplicant force-multicast
iosxe:
devices:
- name: Device1
configuration:
dot1x:
auth_fail_eapol: true
critical_eapol_config_block: true
critical_recovery_delay: 20
guest_vlan_supplicant: true
test_timeout: 20
logging_verbose: true
supplicant_controlled_transient: true
supplicant_force_multicast: true
system_auth_control: true
credentials:
- profile_name: first_creds
description: first profile test
username: test_user
password_type: '0'
password: test_pass
pki_trustpoint: sample_trustpoint
anonymous_id: anon_test_1

802.1X is an IEEE standard for port-based network access control that provides authentication framework to prevent unauthorized devices from accessing network resources until proper credentials are validated. It operates using the Extensible Authentication Protocol (EAP) to facilitate secure communication between supplicants (client devices), authenticators (network switches), and authentication servers (typically RADIUS). The 802.1X framework supports various authentication methods including username/password, digital certificates, and smart cards, enabling organizations to implement comprehensive network access control policies with granular user and device identification capabilities.

Diagram
NameTypeConstraintMandatoryDefault Value
dot1xClass[dot1x]No

NameTypeConstraintMandatoryDefault Value
auth_fail_eapolBooleantrue, falseNo
credentialsList[credentials]No
critical_eapolBooleantrue, falseNo
critical_eapol_blockBooleantrue, falseNo
critical_eapol_config_blockBooleantrue, falseNo
critical_recovery_delayIntegermin: 1, max: 10000No
guest_vlan_supplicantBooleantrue, falseNo
test_timeoutIntegermin: 1, max: 65535No
logging_verboseBooleantrue, falseNo
supplicant_controlled_transientBooleantrue, falseNo
supplicant_force_multicastBooleantrue, falseNo
system_auth_controlBooleantrue, falseNo

credentials (iosxe.devices.configuration.dot1x)

Section titled “credentials (iosxe.devices.configuration.dot1x)”
NameTypeConstraintMandatoryDefault Value
profile_nameStringYes
descriptionStringNo
usernameStringNo
password_typeChoice0, 6, 7No
passwordStringNo
pki_trustpointStringNo
anonymous_idStringNo

iosxe:
devices:
- name: Device1
configuration:
dot1x:
auth_fail_eapol: true
critical_eapol_config_block: true
critical_recovery_delay: 20
test_timeout: 20
logging_verbose: true
supplicant_controlled_transient: true
supplicant_force_multicast: true
system_auth_control: true
credentials:
- profile_name: first_creds
description: first profile test
username: test_user
password_type: '0'
password: test_pass
pki_trustpoint: sample_trustpoint
anonymous_id: anon_test_1