{"id":2995,"date":"2021-02-08T17:16:28","date_gmt":"2021-02-09T01:16:28","guid":{"rendered":"https:\/\/SUMMALAI.COM\/?p=2995"},"modified":"2021-02-08T17:16:30","modified_gmt":"2021-02-09T01:16:30","slug":"understanding-and-configuring-802-1x-port-based-authentication","status":"publish","type":"post","link":"https:\/\/SUMMALAI.COM\/?p=2995","title":{"rendered":"Understanding and Configuring 802.1X Port-Based Authentication"},"content":{"rendered":"\n<p>802.1X defines 802.1X port-based authentication as a client-server based access control and authentication protocol that restricts unauthorized clients from connecting to a LAN through publicly accessible ports. An authentication server validates each supplicant (client) connected to an authenticator (network access switch) port before making available any services offered by the switch or the LAN.<\/p>\n\n\n\n<p>Until a client is authenticated, only Extensible Authentication Protocol over LAN (EAPOL) traffic is allowed through the port to which the client is connected. Once authentication succeeds, normal traffic can pass through the port.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Device Roles<\/h3>\n\n\n\n<p>With 802.1X port-based authentication, network devices have specific roles.\u00a0Figure\u00a031-1\u00a0shows the roles of each device.<\/p>\n\n\n\n<p>Figure&nbsp;31-1 802.1X Device Roles<a href=\"https:\/\/www.cisco.com\/c\/dam\/en\/us\/td\/i\/000001-100000\/90001-95000\/94001-95000\/94158.ps\/_jcr_content\/renditions\/94158.jpg\"><\/a><\/p>\n\n\n\n<p>\u2022<img decoding=\"async\" src=\"https:\/\/www.cisco.com\/c\/dam\/en\/us\/td\/i\/templates\/blank.gif\" alt=\"\" width=\"19\" height=\"2\">Client\u2014The workstation that requests access to the LAN, and responds to requests from the switch. The workstation must be running 802.1X-compliant client software.<img decoding=\"async\" src=\"https:\/\/www.cisco.com\/c\/dam\/en\/us\/td\/i\/templates\/note.gif\" alt=\"\"><\/p>\n\n\n\n<hr class=\"wp-block-separator\"\/>\n\n\n\n<p><strong>Note\u00a0<\/strong><img decoding=\"async\" width=\"6\" height=\"2\" src=\"https:\/\/www.cisco.com\/c\/dam\/en\/us\/td\/i\/templates\/blank.gif\" alt=\"\">For more information on 802.1X-compliant client application software such as Microsoft Windows 2000 Professional or Windows XP, refer to the Microsoft Knowledge Base.<\/p>\n\n\n\n<hr class=\"wp-block-separator\"\/>\n\n\n\n<p>\u2022<img decoding=\"async\" src=\"https:\/\/www.cisco.com\/c\/dam\/en\/us\/td\/i\/templates\/blank.gif\" alt=\"\" width=\"19\" height=\"2\">Authenticator\u2014Controls physical access to the network based on the authentication status of the client. The switch acts as an intermediary between the client and the authentication server, requesting identity information from the client, verifying that information with the authentication server, and relaying a response to the client. The switch encapsulates and decapsulates the Extensible Authentication Protocol (EAP) frames and interacts with the RADIUS authentication server.<\/p>\n\n\n\n<p>When the switch receives EAPOL frames and relays them to the authentication server, the Ethernet header is stripped and the remaining EAP frame is reencapsulated in the RADIUS format. The EAP frames are not modified or examined during encapsulation, and the authentication server must support EAP within the native frame format. When the switch receives frames from the authentication server, the frame header is removed from the server, leaving the EAP frame, which is then encapsulated for Ethernet and sent to the client.<\/p>\n\n\n\n<p>Cisco devices that are capable of functioning as an 802.1X network access point include Catalyst&nbsp;4500 series switches, the Catalyst&nbsp;3550 multilayer switch, the Catalyst 2950 switch, and a Cisco&nbsp;Airnet series wireless access point. These devices must be running software that supports the RADIUS client and 802.1X.<\/p>\n\n\n\n<p>\u2022<img decoding=\"async\" src=\"https:\/\/www.cisco.com\/c\/dam\/en\/us\/td\/i\/templates\/blank.gif\" alt=\"\" width=\"19\" height=\"2\">Authentication server\u2014Performs the actual authentication of the client. The authentication server validates the identity of the client and notifies the switch that the client is authorized to access the LAN and switch services. (The only supported authentication server is the RADIUS authentication server with EAP extensions; it is available in Cisco Secure Access Control Server version 3.2 and later.)<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Authentication Initiation and Message Exchange<\/h3>\n\n\n\n<p>The switch or the client can initiate authentication. If you enable authentication on a port by using the&nbsp;<strong>dot1x port-control auto<\/strong>&nbsp;interface configuration command, the switch must initiate authentication when it determines that the port link state has changed. It then sends an EAP-request\/identity frame to the client to request its identity (typically, the switch sends an initial identity\/request frame followed by one or more requests for authentication information). Upon receipt of the frame, the client responds with an EAP-response\/identity frame.<\/p>\n\n\n\n<p>However, if during bootup, the client does not receive an EAP-request\/identity frame from the switch, the client can initiate authentication by sending an EAPOL-start frame, which prompts the switch to request the client&#8217;s identity.<\/p>\n\n\n\n<p>If 802.1X is not enabled or supported on the network access device, any EAPOL frames from the client are dropped. If the client does not receive an EAP-request\/identity frame after three attempts to start authentication, the client transmits frames as if the port is in the authorized state. A port in the authorized state means that the client has been successfully authenticated.When the client supplies its identity, the switch begins its role as the intermediary, passing EAP frames between the client and the authentication server until authentication succeeds or fails. If the authentication succeeds, the switch port becomes authorized.<\/p>\n\n\n\n<p>The specific exchange of EAP frames depends on the authentication method being used.\u00a0Figure\u00a031-2\u00a0shows a message exchange that is initiated by the client using the One-Time Password (OTP) authentication method with an authentication server.<\/p>\n\n\n\n<p>Figure&nbsp;31-2 Message Exchange<a href=\"https:\/\/www.cisco.com\/c\/dam\/en\/us\/td\/i\/000001-100000\/90001-95000\/94001-95000\/94159.ps\/_jcr_content\/renditions\/94159.jpg\"><\/a><\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Ports in Authorized and Unauthorized States<\/h3>\n\n\n\n<p>The switch port state determines whether or not the client is granted access to the network. The port starts in the unauthorized state. While in this state, the port disallows all ingress and egress traffic except for 802.1X protocol packets. When a client is successfully authenticated, the port transitions to the authorized state, allowing all traffic for the client to flow normally.<\/p>\n\n\n\n<p>If a client that does not support 802.1X is connected to an unauthorized 802.1X port, the switch requests the client&#8217;s identity. In this situation, the client does not respond to the request, the port remains in the unauthorized state, and the client is not granted access to the network. If the guest VLAN is configured for a port that connects to a client that does not support 802.1X, the port is placed in the configured guest VLAN and in the authorized state. For more information, see the\u00a0&#8220;Using 802.1X Authentication for Guest VLANs&#8221; section.<\/p>\n\n\n\n<p>In contrast, when an 802.1X-enabled client connects to a port that is not running the 802.1X protocol, the client initiates the authentication process by sending the EAPOL-start frame. When no response is received, the client sends the request a fixed number of times. Because no response is received, the client begins sending frames as if the port is in the authorized state.<\/p>\n\n\n\n<p>You can control the port authorization state with the&nbsp;<strong>dot1x port-control<\/strong>&nbsp;interface configuration command and these keywords:<\/p>\n\n\n\n<p>\u2022<img decoding=\"async\" src=\"https:\/\/www.cisco.com\/c\/dam\/en\/us\/td\/i\/templates\/blank.gif\" alt=\"\" width=\"19\" height=\"2\"><strong>force-authorized<\/strong>\u2014Disables 802.1X authentication and causes the port to transition to the authorized state without any authentication exchange required. The port transmits and receives normal traffic without 802.1X-based authentication of the client. This setting is the default.<\/p>\n\n\n\n<p>\u2022<img decoding=\"async\" src=\"https:\/\/www.cisco.com\/c\/dam\/en\/us\/td\/i\/templates\/blank.gif\" alt=\"\" width=\"19\" height=\"2\"><strong>force-unauthorized<\/strong>\u2014Causes the port to remain in the unauthorized state, ignoring all attempts by the client to authenticate. The switch cannot provide authentication services to the client through the interface.<\/p>\n\n\n\n<p>\u2022<img decoding=\"async\" src=\"https:\/\/www.cisco.com\/c\/dam\/en\/us\/td\/i\/templates\/blank.gif\" alt=\"\" width=\"19\" height=\"2\"><strong>auto<\/strong>\u2014Enables 802.1X authentication and causes the port to begin in the unauthorized state, allowing only EAPOL frames to be sent and received through the port. The authentication process begins when the link state of the port transitions from down to up or when an EAPOL-start frame is received. The switch requests the identity of the client and begins relaying authentication messages between the client and the authentication server. The switch can uniquely identify each client attempting to access the network by the client&#8217;s MAC address.<\/p>\n\n\n\n<p>If the client is successfully authenticated (receives an Accept frame from the authentication server), the port state changes to authorized, and all frames from the authenticated client are allowed through the port. If authentication fails, the port remains in the unauthorized state, but authentication can be retried. If the authentication server cannot be reached, the switch can retransmit the request. If no response is received from the server after the specified number of attempts, authentication fails and network access is not granted.<\/p>\n\n\n\n<p>If the link state of a port transitions from up to down, or if an EAPOL-logoff frame is received by the port, the port returns to the unauthorized state.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Using 802.1X with VLAN Assignment<\/h3>\n\n\n\n<p>You can use the VLAN assignment to limit network access for certain users. With the VLAN assignment, 802.1X-authenticated ports are assigned to a VLAN based on the username of the client connected to that port. The RADIUS server database maintains the username-to-VLAN mappings. After successful 802.1X authentication of the port, the RADIUS server sends the VLAN assignment to the switch.<img decoding=\"async\" src=\"https:\/\/www.cisco.com\/c\/dam\/en\/us\/td\/i\/templates\/note.gif\" alt=\"\"><\/p>\n\n\n\n<hr class=\"wp-block-separator\"\/>\n\n\n\n<p><strong>Note&nbsp;<\/strong>To enable the guest VLAN feature in Release 12.1(19)EW and later releases, the port must be statically configured as an access port.<\/p>\n\n\n\n<hr class=\"wp-block-separator\"\/>\n\n\n\n<p>When configured on the switch and the RADIUS server, 802.1X with VLAN assignment has these characteristics:<\/p>\n\n\n\n<p>\u2022<img decoding=\"async\" src=\"https:\/\/www.cisco.com\/c\/dam\/en\/us\/td\/i\/templates\/blank.gif\" alt=\"\" width=\"19\" height=\"2\">If no VLAN is supplied by the RADIUS server, the port is configured in its access VLAN when authentication succeeds.<\/p>\n\n\n\n<p>\u2022<img decoding=\"async\" src=\"https:\/\/www.cisco.com\/c\/dam\/en\/us\/td\/i\/templates\/blank.gif\" alt=\"\" width=\"19\" height=\"2\">If the authentication server provides invalid VLAN information, the port remains unauthorized. This situation prevents ports from appearing unexpectedly in an inappropriate VLAN due to a configuration error.<\/p>\n\n\n\n<p>Configuration errors might occur if you specify a VLAN for a routed port, a malformed VLAN ID, or a nonexistent or internal (routed port) VLAN ID. Similarly, an error might occur if you make an assignment to a voice VLAN ID.<\/p>\n\n\n\n<p>\u2022<img decoding=\"async\" src=\"https:\/\/www.cisco.com\/c\/dam\/en\/us\/td\/i\/templates\/blank.gif\" alt=\"\" width=\"19\" height=\"2\">If the authentication server provides valid VLAN information, the port is authorized and placed in the specified VLAN when authentication succeeds.<\/p>\n\n\n\n<p>\u2022<img decoding=\"async\" src=\"https:\/\/www.cisco.com\/c\/dam\/en\/us\/td\/i\/templates\/blank.gif\" alt=\"\" width=\"19\" height=\"2\">If the multiple-hosts mode is enabled, all hosts are in the same VLAN as the first authenticated user.<\/p>\n\n\n\n<p>\u2022<img decoding=\"async\" src=\"https:\/\/www.cisco.com\/c\/dam\/en\/us\/td\/i\/templates\/blank.gif\" alt=\"\" width=\"19\" height=\"2\">If 802.1X is disabled on the port, the port is returned to the configured access VLAN.<\/p>\n\n\n\n<p>To configure VLAN assignment you need to perform these tasks:<\/p>\n\n\n\n<p>\u2022<img decoding=\"async\" width=\"19\" height=\"2\" src=\"https:\/\/www.cisco.com\/c\/dam\/en\/us\/td\/i\/templates\/blank.gif\" alt=\"\">Enable AAA authorization with the\u00a0<strong>network<\/strong>\u00a0keyword to allow interface configuration from the RADIUS server. For an illustration of how to apply the aaa authorization network group radius command, refer to the section\u00a0&#8220;Enabling 802.1X Authentication&#8221; on page\u00a013.<\/p>\n\n\n\n<p>\u2022<img decoding=\"async\" src=\"https:\/\/www.cisco.com\/c\/dam\/en\/us\/td\/i\/templates\/blank.gif\" alt=\"\" width=\"19\" height=\"2\">Enable 802.1X. (The VLAN assignment feature is automatically enabled when you configure 802.1X on an access port.)<\/p>\n\n\n\n<p>\u2022<img decoding=\"async\" src=\"https:\/\/www.cisco.com\/c\/dam\/en\/us\/td\/i\/templates\/blank.gif\" alt=\"\" width=\"19\" height=\"2\">Assign vendor-specific tunnel attributes in the RADIUS server. To ensure proper VLAN assignment, the RADIUS server must return these attributes to the switch:<\/p>\n\n\n\n<p>\u2013<img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.cisco.com\/c\/dam\/en\/us\/td\/i\/templates\/blank.gif\" alt=\"\" width=\"17\" height=\"2\">Tunnel-Type = VLAN<\/p>\n\n\n\n<p>\u2013<img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.cisco.com\/c\/dam\/en\/us\/td\/i\/templates\/blank.gif\" alt=\"\" width=\"17\" height=\"2\">Tunnel-Medium-Type = 802<\/p>\n\n\n\n<p>\u2013<img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.cisco.com\/c\/dam\/en\/us\/td\/i\/templates\/blank.gif\" alt=\"\" width=\"17\" height=\"2\">Tunnel-Private-Group-ID = VLAN NAME<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Using 802.1X Authentication for Guest VLANs<\/h3>\n\n\n\n<p>You can use guest VLANs to enable non-802.1X capable hosts to access networks that use 802.1X authentication. For example, you can use guest VLANs while you are upgrading your system to support 802.1X authentication.<\/p>\n\n\n\n<p>Guest VLANs are supported on a per-port basis, and you can use any VLAN (except a private VLAN) as a guest VLAN. If a port is already forwarding on the guest VLAN and you enable 802.1X support on the network interface of the host, the port is immediately moved out of the guest VLAN and the authenticator waits for authentication to occur.<\/p>\n\n\n\n<p>Enabling 802.1X authentication on a port starts the 802.1X protocol. If the host fails to respond to the packets from the authenticator within a certain amount of time, the authenticator puts the port in the guest VLAN.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Usage Guidelines for Using 802.1X Authentication with Guest VLANs on Windows-XP Hosts<\/h3>\n\n\n\n<p>The usage guidelines for using 802.1X authentication with guest VLANs on Windows-XP hosts are as follows:<\/p>\n\n\n\n<p>\u2022<img decoding=\"async\" src=\"https:\/\/www.cisco.com\/c\/dam\/en\/us\/td\/i\/templates\/blank.gif\" alt=\"\" width=\"19\" height=\"2\">If the host fails to respond to the authenticator, the port attempts to connect three times (with a 30 second timeout between each attempt). After this time, the login\/password window does not appear on the host, so you must unplug and reconnect the network interface cable.<\/p>\n\n\n\n<p>\u2022<img decoding=\"async\" src=\"https:\/\/www.cisco.com\/c\/dam\/en\/us\/td\/i\/templates\/blank.gif\" alt=\"\" width=\"19\" height=\"2\">Hosts responding with an incorrect login\/password fail authentication. Hosts failing authentication are not put in the guest VLAN. The first time that a host fails authentication, the quiet-period timer starts, and no activity occurs for the duration of the quiet-period timer. When the quiet-period timer expires, the host is presented with the login\/password window. If the host fails authentication for the second time, the quiet-period timer starts again, and no activity will occur for the duration of the quiet-period timer. The host is presented with the login\/password window a third time. If the host fails authentication the third time, the port is placed in the unauthorized state, and you must disconnect and reconnect the network interface cable.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Using 802.1X with Port Security<\/h3>\n\n\n\n<p>You can enable port security on an 802.1X port in either single- or multiple-host mode. (To do so, you must configure port security with the&nbsp;<strong>switchport port-security<\/strong>&nbsp;interface configuration command. Refer to the &#8220;Configuring Port Security&#8221; chapter in this guide.) When you enable port security and 802.1X on a port, 802.1X authenticates the port, and port security manages the number of MAC addresses allowed on that port, including that of the client. Hence an 802.1X port with port security enabled can be used to limit the number or group of clients that can access the network.<\/p>\n\n\n\n<p>These examples describe the interaction between 802.1X and port security on the switch:<\/p>\n\n\n\n<p>\u2022<img decoding=\"async\" src=\"https:\/\/www.cisco.com\/c\/dam\/en\/us\/td\/i\/templates\/blank.gif\" alt=\"\" width=\"19\" height=\"2\">When a client is authenticated, and the port security table is not full, the client&#8217;s MAC address is added to the port security list of secure hosts. The port then proceeds to come up normally.<\/p>\n\n\n\n<p>When a client is authenticated and manually configured for port security, it is guaranteed an entry in the secure host table (unless port security static aging has been enabled).<\/p>\n\n\n\n<p>A security violation occurs if an additional host is learned on the port. The action taken depends on which feature (802.1X or port security) detects the security violation:<\/p>\n\n\n\n<p>\u2013<img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.cisco.com\/c\/dam\/en\/us\/td\/i\/templates\/blank.gif\" alt=\"\" width=\"17\" height=\"2\">If 802.1X detects the violation, the action is to err-disable the port.<\/p>\n\n\n\n<p>\u2013<img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.cisco.com\/c\/dam\/en\/us\/td\/i\/templates\/blank.gif\" alt=\"\" width=\"17\" height=\"2\">If port security detects the violation, the action is to shutdown or restrict the port (the action is configurable).<\/p>\n\n\n\n<p>The following describes when port security and 802.1X security violations occur:<\/p>\n\n\n\n<p>\u2013<img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.cisco.com\/c\/dam\/en\/us\/td\/i\/templates\/blank.gif\" alt=\"\" width=\"17\" height=\"2\">In single host mode, after the port is authorized, any MAC address received other than the client&#8217;s will cause a 802.1X security violation.<\/p>\n\n\n\n<p>\u2013<img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.cisco.com\/c\/dam\/en\/us\/td\/i\/templates\/blank.gif\" alt=\"\" width=\"17\" height=\"2\">In single host mode, if installation of an 802.1X client&#8217;s MAC address fails because port security has already reached its limit (due to a configured secure MAC addresses), a port security violation is triggered.<\/p>\n\n\n\n<p>\u2013<img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.cisco.com\/c\/dam\/en\/us\/td\/i\/templates\/blank.gif\" alt=\"\" width=\"17\" height=\"2\">In multi host mode, once the port is authorized, any additional MAC addresses that cannot be installed because the port security has reached its limit will trigger a port security violation.<\/p>\n\n\n\n<p>\u2022<img decoding=\"async\" src=\"https:\/\/www.cisco.com\/c\/dam\/en\/us\/td\/i\/templates\/blank.gif\" alt=\"\" width=\"19\" height=\"2\">When an 802.1X client logs off, the port transitions back to an unauthenticated state, and all dynamic entries in the secure host table are cleared, including the entry for the client. Normal authentication then ensues.<\/p>\n\n\n\n<p>\u2022<img decoding=\"async\" src=\"https:\/\/www.cisco.com\/c\/dam\/en\/us\/td\/i\/templates\/blank.gif\" alt=\"\" width=\"19\" height=\"2\">If you administratively shut down the port, the port becomes unauthenticated, and all dynamic entries are removed from the secure host table.<\/p>\n\n\n\n<p>\u2022<img decoding=\"async\" src=\"https:\/\/www.cisco.com\/c\/dam\/en\/us\/td\/i\/templates\/blank.gif\" alt=\"\" width=\"19\" height=\"2\">Only 802.1X can remove the client&#8217;s MAC address from the port security table. Note that in multi host mode, with the exception of the client&#8217;s MAC address, all MAC addresses that are learned by port security can be deleted using port security CLIs.<\/p>\n\n\n\n<p>\u2022<img decoding=\"async\" src=\"https:\/\/www.cisco.com\/c\/dam\/en\/us\/td\/i\/templates\/blank.gif\" alt=\"\" width=\"19\" height=\"2\">Whenever port security ages out a 802.1X client&#8217;s MAC address, 802.1X attempts to reauthenticate the client. Only if the reauthentication succeeds will the client&#8217;s MAC address be retained in the port security table.<\/p>\n\n\n\n<p>\u2022<img decoding=\"async\" src=\"https:\/\/www.cisco.com\/c\/dam\/en\/us\/td\/i\/templates\/blank.gif\" alt=\"\" width=\"19\" height=\"2\">All of the 802.1X client&#8217;s MAC addresses are tagged with (dot1x) when you display the port security table by using CLI.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">802.1X RADIUS Accounting<\/h3>\n\n\n\n<p>802.1X RADIUS accounting relays important events to the RADIUS server (such as the client&#8217;s connection session). This session is defined as the difference in time from when client is authorized to use the port and when the client stops using the port.<\/p>\n\n\n\n<p>Figure\u00a031-3\u00a0shows the 802.1X device roles.<\/p>\n\n\n\n<p>Figure&nbsp;31-3 Radius Accounting<a href=\"https:\/\/www.cisco.com\/c\/dam\/en\/us\/td\/i\/100001-200000\/100001-110000\/105001-106000\/105283.ps\/_jcr_content\/renditions\/105283.jpg\"><\/a><img decoding=\"async\" src=\"https:\/\/www.cisco.com\/c\/dam\/en\/us\/td\/i\/templates\/note.gif\" alt=\"\"><\/p>\n\n\n\n<hr class=\"wp-block-separator\"\/>\n\n\n\n<p><strong>Note&nbsp;<\/strong>You must configure the 802.1X client to send an EAP-logoff (Stop) message to the switch when the user logs off. If you do not configure the 802.1X client, an EAP-logoff message is not sent to the switch and the accompanying accounting Stop message will not be sent to the authentication server. Refer to the Microsoft Knowledge Base article at the URL:&nbsp;<a href=\"http:\/\/support.microsoft.com\/\">http:\/\/support.microsoft.com<\/a>. Also refer to the Microsoft article at the URL:&nbsp;<a href=\"http:\/\/www.microsoft.com\/technet\/treeview\/default.asp?url=\/technet\/columns\/cableguy\/cg0703.asp\">http:\/\/www.microsoft.com\/technet\/treeview\/default.asp?url=\/technet\/columns\/cableguy\/cg0703.asp<\/a>, and set the SupplicantMode registry to 3 and the AuthMode registry to 1.<\/p>\n\n\n\n<hr class=\"wp-block-separator\"\/>\n\n\n\n<p>The client uses EAP to authenticate itself with the RADIUS server. The switch relays EAP packets between the client and the RADIUS server.<\/p>\n\n\n\n<p>After the client is authenticated, the switch sends accounting-request packets to the RADIUS server, which responds with accounting-response packets to acknowledge the receipt of the request.<\/p>\n\n\n\n<p>A RADIUS accounting-request packet contains one or more Attribute-Value pairs to report various events and related information to the RADIUS server. The following events are tracked:<\/p>\n\n\n\n<p>\u2022<img decoding=\"async\" src=\"https:\/\/www.cisco.com\/c\/dam\/en\/us\/td\/i\/templates\/blank.gif\" alt=\"\" width=\"19\" height=\"2\">User successfully authenticates<\/p>\n\n\n\n<p>\u2022<img decoding=\"async\" src=\"https:\/\/www.cisco.com\/c\/dam\/en\/us\/td\/i\/templates\/blank.gif\" alt=\"\" width=\"19\" height=\"2\">User logs-off<\/p>\n\n\n\n<p>\u2022<img decoding=\"async\" src=\"https:\/\/www.cisco.com\/c\/dam\/en\/us\/td\/i\/templates\/blank.gif\" alt=\"\" width=\"19\" height=\"2\">Link-down occurs on a 802.1X port<\/p>\n\n\n\n<p>\u2022<img decoding=\"async\" src=\"https:\/\/www.cisco.com\/c\/dam\/en\/us\/td\/i\/templates\/blank.gif\" alt=\"\" width=\"19\" height=\"2\">Reauthentication succeeds<\/p>\n\n\n\n<p>\u2022<img decoding=\"async\" src=\"https:\/\/www.cisco.com\/c\/dam\/en\/us\/td\/i\/templates\/blank.gif\" alt=\"\" width=\"19\" height=\"2\">Reauthentication fails<\/p>\n\n\n\n<p>When the port state transitions between authorized and unauthorized, the RADIUS messages are transmitted to the RADIUS server.<\/p>\n\n\n\n<p>The switch does not log any accounting information. Instead, it sends such information to the RADIUS server, which must be configured to log accounting messages.<\/p>\n\n\n\n<p>The 802.1X authentication, authorization and accounting process is as follows:<\/p>\n\n\n\n<hr class=\"wp-block-separator\"\/>\n\n\n\n<p><strong>Step&nbsp;1&nbsp;<\/strong><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.cisco.com\/c\/dam\/en\/us\/td\/i\/templates\/blank.gif\" alt=\"\" width=\"5\" height=\"2\">A user connects to a port on the switch.<\/p>\n\n\n\n<p><strong>Step&nbsp;2&nbsp;<\/strong><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.cisco.com\/c\/dam\/en\/us\/td\/i\/templates\/blank.gif\" alt=\"\" width=\"5\" height=\"2\">Authentication is performed, for example, using the username\/password method.<\/p>\n\n\n\n<p><strong>Step&nbsp;3&nbsp;<\/strong><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.cisco.com\/c\/dam\/en\/us\/td\/i\/templates\/blank.gif\" alt=\"\" width=\"5\" height=\"2\">VLAN assignment is enabled, as appropriate, per RADIUS server configuration.<\/p>\n\n\n\n<p><strong>Step&nbsp;4&nbsp;<\/strong><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.cisco.com\/c\/dam\/en\/us\/td\/i\/templates\/blank.gif\" alt=\"\" width=\"5\" height=\"2\">The switch sends a start message to an accounting server.<\/p>\n\n\n\n<p><strong>Step&nbsp;5&nbsp;<\/strong><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.cisco.com\/c\/dam\/en\/us\/td\/i\/templates\/blank.gif\" alt=\"\" width=\"5\" height=\"2\">Reauthentication is performed, as necessary.<\/p>\n\n\n\n<p><strong>Step&nbsp;6&nbsp;<\/strong><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.cisco.com\/c\/dam\/en\/us\/td\/i\/templates\/blank.gif\" alt=\"\" width=\"5\" height=\"2\">The switch sends an interim accounting update to the accounting server that is based on the result of reauthentication.<\/p>\n\n\n\n<p><strong>Step&nbsp;7&nbsp;<\/strong><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.cisco.com\/c\/dam\/en\/us\/td\/i\/templates\/blank.gif\" alt=\"\" width=\"5\" height=\"2\">The user disconnects from the port.<\/p>\n\n\n\n<p><strong>Step&nbsp;8&nbsp;<\/strong><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.cisco.com\/c\/dam\/en\/us\/td\/i\/templates\/blank.gif\" alt=\"\" width=\"5\" height=\"2\">The switch sends a stop message to the accounting server.<\/p>\n\n\n\n<hr class=\"wp-block-separator\"\/>\n\n\n\n<p>To configure 802.1X accounting, you need to do the following tasks:<\/p>\n\n\n\n<p>\u2022<img decoding=\"async\" src=\"https:\/\/www.cisco.com\/c\/dam\/en\/us\/td\/i\/templates\/blank.gif\" alt=\"\" width=\"19\" height=\"2\">Enable logging of &#8220;Update\/Watchdog packets from this AAA client&#8221; in your RADIUS server&#8217;s Network Configuration tab.<\/p>\n\n\n\n<p>\u2022<img decoding=\"async\" src=\"https:\/\/www.cisco.com\/c\/dam\/en\/us\/td\/i\/templates\/blank.gif\" alt=\"\" width=\"19\" height=\"2\">Enable &#8220;Logging&gt;CVS RADIUS Accounting&#8221; in your RADIUS server System Configuration tab.<\/p>\n\n\n\n<p>\u2022<img decoding=\"async\" src=\"https:\/\/www.cisco.com\/c\/dam\/en\/us\/td\/i\/templates\/blank.gif\" alt=\"\" width=\"19\" height=\"2\">Enable 802.1X accounting on your switch.<\/p>\n\n\n\n<p>\u2022<img decoding=\"async\" width=\"19\" height=\"2\" src=\"https:\/\/www.cisco.com\/c\/dam\/en\/us\/td\/i\/templates\/blank.gif\" alt=\"\">Enable AAA accounting by using the aaa system accounting command. Refer to the\u00a0&#8220;Enabling 802.1X Accounting&#8221; section.<\/p>\n\n\n\n<p>Enabling AAA system accounting along with 802.1X accounting allows system reload events to be sent to the accounting RADIUS server for logging. By doing this, the accounting RADIUS server can infer that all active 802.1X sessions are appropriately closed.<\/p>\n\n\n\n<p>Because RADIUS uses the unreliable transport protocol UDP, accounting messages may be lost due to poor network conditions. If the switch does not receive the accounting response message from the RADIUS server after a configurable number of retransmissions of an accounting request, the following system message appears:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">Accounting message %s for session %s failed to receive Accounting Response.\n<\/pre>\n\n\n\n<pre class=\"wp-block-preformatted\"><\/pre>\n\n\n\n<p>When the stop message is not transmitted successfully, the following message appears:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">00:09:55: %RADIUS-3-NOACCOUNTINGRESPONSE: Accounting message Start for session \n172.20.50.145 sam 11\/06\/03 07:01:16 11000002 failed to receive Accounting Response.\n<\/pre>\n\n\n\n<pre class=\"wp-block-preformatted\"><\/pre>\n\n\n\n<p>Use the show radius statistics command to display the number of RADIUS messages that do not receive the accounting response message.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Using 802.1X with Voice VLAN Ports<\/h3>\n\n\n\n<p>A voice VLAN port is a special access port associated with two VLAN identifiers:<\/p>\n\n\n\n<p>\u2022<img decoding=\"async\" src=\"https:\/\/www.cisco.com\/c\/dam\/en\/us\/td\/i\/templates\/blank.gif\" alt=\"\" width=\"19\" height=\"2\">Voice VLAN ID (VVID) to carry voice traffic to and from the IP phone. The VVID is used to configure the IP phone connected to the port.<\/p>\n\n\n\n<p>\u2022<img decoding=\"async\" src=\"https:\/\/www.cisco.com\/c\/dam\/en\/us\/td\/i\/templates\/blank.gif\" alt=\"\" width=\"19\" height=\"2\">Port VLAN ID (PVID) to carry the data traffic to and from the workstation connected to the switch through the IP phone. The PVID is the native VLAN of the port.<\/p>\n\n\n\n<p>Each port that you configure for a voice VLAN is associated with a VVID and a PVID. This configuration allows voice traffic and data traffic to be separated onto different VLANs.<\/p>\n\n\n\n<p>When you enable the single-host mode, only one 802.1X client is allowed on the primary VLAN; other workstations are blocked. When you enable the multiple-hosts mode and an 802.1X client is authenticated on the primary VLAN, additional clients on the voice VLAN are unrestricted after 802.1X authentication succeeds on the primary VLAN.<\/p>\n\n\n\n<p>A voice VLAN port becomes active when there is link, and the device MAC address appears in the MAC-address table after the first CDP message from the IP phone. Cisco IP phones do not relay CDP messages from other devices. As a result, if several Cisco IP phones are connected in series, the switch recognizes only the one directly connected to it. When 802.1X is enabled on a voice VLAN port, the switch drops packets from unrecognized Cisco IP phones more than one hop away.<\/p>\n\n\n\n<p>When 802.1X is enabled on a port, you cannot configure a PVID that is equal to a VVID. For more information about voice VLANs, see\u00a0&#8220;Configuring Voice Interfaces.&#8221;<\/p>\n\n\n\n<p>Be aware of the following feature interactions:<\/p>\n\n\n\n<p>\u2022<img decoding=\"async\" src=\"https:\/\/www.cisco.com\/c\/dam\/en\/us\/td\/i\/templates\/blank.gif\" alt=\"\" width=\"19\" height=\"2\">802.1X VLAN assignment cannot assign to the port the same VLAN as the voice VLAN; otherwise, the 802.1X authentication will fail.<\/p>\n\n\n\n<p>\u2022<img decoding=\"async\" src=\"https:\/\/www.cisco.com\/c\/dam\/en\/us\/td\/i\/templates\/blank.gif\" alt=\"\" width=\"19\" height=\"2\">802.1X guest VLAN works with the 802.1X voice VLAN port feature. However, the guest VLAN cannot be the same as the voice VLAN.<\/p>\n\n\n\n<p>\u2022<img decoding=\"async\" src=\"https:\/\/www.cisco.com\/c\/dam\/en\/us\/td\/i\/templates\/blank.gif\" alt=\"\" width=\"19\" height=\"2\">802.1X port security works with the 802.1X voice VLAN port feature and is configured per port. Three secure addresses must be configured: one for the Cisco IP phone MAC address on the VVID, one for the PC MAC-address on PVID, and a third to allow the Cisco IP phone MAC address on the PVID.<\/p>\n\n\n\n<p>However, you cannot use the 802.1X voice VLAN port feature with 802.1X port security&#8217;s sticky MAC address configuration and 802.1X port-security&#8217;s statically configured MAC address configuration.<\/p>\n\n\n\n<p>\u2022<img decoding=\"async\" src=\"https:\/\/www.cisco.com\/c\/dam\/en\/us\/td\/i\/templates\/blank.gif\" alt=\"\" width=\"19\" height=\"2\">802.1X accounting is unaffected by the 802.1X voice VLAN port feature.<\/p>\n\n\n\n<p>\u2022<img decoding=\"async\" src=\"https:\/\/www.cisco.com\/c\/dam\/en\/us\/td\/i\/templates\/blank.gif\" alt=\"\" width=\"19\" height=\"2\">When 802.1X is configured on a port, you cannot connect multiple IP-phones to a Catalyst 4500 series switch through a hub.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Supported Topologies<\/h3>\n\n\n\n<p>The 802.1X port-based authentication supports two topologies:<\/p>\n\n\n\n<p>\u2022<img decoding=\"async\" src=\"https:\/\/www.cisco.com\/c\/dam\/en\/us\/td\/i\/templates\/blank.gif\" alt=\"\" width=\"19\" height=\"2\">Point to point<\/p>\n\n\n\n<p>\u2022<img decoding=\"async\" src=\"https:\/\/www.cisco.com\/c\/dam\/en\/us\/td\/i\/templates\/blank.gif\" alt=\"\" width=\"19\" height=\"2\">Wireless LAN<\/p>\n\n\n\n<p>In a point-to-point configuration (see\u00a0Figure\u00a031-1), only one client can be connected to the 802.1X-enabled switch port when the multi-host mode is not enabled (the default). The switch detects the client when the port link state changes to the up state. If a client leaves or is replaced with another client, the switch changes the port link state to down, and the port returns to the unauthorized state.<\/p>\n\n\n\n<p>Figure\u00a031-4\u00a0illustrates 802.1X port-based authentication in a wireless LAN. You must configure the 802.1X port as a multiple-host port that is authorized as a wireless access point once the client is authenticated. (See the\u00a0&#8220;Enabling Multiple Hosts&#8221; section.) When the port is authorized, all other hosts that are indirectly attached to the port are granted access to the network. If the port becomes unauthorized (reauthentication fails or an EAPOL-logoff message is received), the switch denies access to the network for all wireless access point-attached clients. In this topology, the wireless access point is responsible for authenticating clients attached to it, and the wireless access point acts as a client to the switch.<\/p>\n\n\n\n<p>Figure&nbsp;31-4 Wireless LAN Example<a href=\"https:\/\/www.cisco.com\/c\/dam\/en\/us\/td\/i\/000001-100000\/90001-95000\/94001-95000\/94160.ps\/_jcr_content\/renditions\/94160.jpg\"><\/a><\/p>\n\n\n\n<h2 class=\"wp-block-heading\">How to Configure 802.1X<\/h2>\n\n\n\n<p>These sections describe how to configure 802.1X:<\/p>\n\n\n\n<p>\u2022<img decoding=\"async\" width=\"19\" height=\"2\" src=\"https:\/\/www.cisco.com\/c\/dam\/en\/us\/td\/i\/templates\/blank.gif\" alt=\"\">Default 802.1X Configuration<\/p>\n\n\n\n<p>\u2022<img decoding=\"async\" width=\"19\" height=\"2\" src=\"https:\/\/www.cisco.com\/c\/dam\/en\/us\/td\/i\/templates\/blank.gif\" alt=\"\">802.1X Configuration Guidelines<\/p>\n\n\n\n<p>\u2022<img decoding=\"async\" width=\"19\" height=\"2\" src=\"https:\/\/www.cisco.com\/c\/dam\/en\/us\/td\/i\/templates\/blank.gif\" alt=\"\">Enabling 802.1X Authentication\u00a0(required)<\/p>\n\n\n\n<p>\u2022<img decoding=\"async\" width=\"19\" height=\"2\" src=\"https:\/\/www.cisco.com\/c\/dam\/en\/us\/td\/i\/templates\/blank.gif\" alt=\"\">Configuring Switch-to-RADIUS-Server Communication\u00a0(required)<\/p>\n\n\n\n<p>\u2022<img decoding=\"async\" width=\"19\" height=\"2\" src=\"https:\/\/www.cisco.com\/c\/dam\/en\/us\/td\/i\/templates\/blank.gif\" alt=\"\">Enabling 802.1X Accounting<\/p>\n\n\n\n<p>\u2022<img decoding=\"async\" width=\"19\" height=\"2\" src=\"https:\/\/www.cisco.com\/c\/dam\/en\/us\/td\/i\/templates\/blank.gif\" alt=\"\">Configuring 802.1X with Guest VLANs<\/p>\n\n\n\n<p>\u2022<img decoding=\"async\" width=\"19\" height=\"2\" src=\"https:\/\/www.cisco.com\/c\/dam\/en\/us\/td\/i\/templates\/blank.gif\" alt=\"\">Configuring 802.1X with Voice VLAN<\/p>\n\n\n\n<p>\u2022<img decoding=\"async\" width=\"19\" height=\"2\" src=\"https:\/\/www.cisco.com\/c\/dam\/en\/us\/td\/i\/templates\/blank.gif\" alt=\"\">Enabling Periodic Reauthentication\u00a0(optional)<\/p>\n\n\n\n<p>\u2022<img decoding=\"async\" width=\"19\" height=\"2\" src=\"https:\/\/www.cisco.com\/c\/dam\/en\/us\/td\/i\/templates\/blank.gif\" alt=\"\">Manually Reauthenticating a Client Connected to a Port\u00a0(optional)<\/p>\n\n\n\n<p>\u2022<img decoding=\"async\" width=\"19\" height=\"2\" src=\"https:\/\/www.cisco.com\/c\/dam\/en\/us\/td\/i\/templates\/blank.gif\" alt=\"\">Changing the Quiet Period\u00a0(optional)<\/p>\n\n\n\n<p>\u2022<img decoding=\"async\" width=\"19\" height=\"2\" src=\"https:\/\/www.cisco.com\/c\/dam\/en\/us\/td\/i\/templates\/blank.gif\" alt=\"\">Changing the Switch-to-Client Retransmission Time\u00a0(optional)<\/p>\n\n\n\n<p>\u2022<img decoding=\"async\" width=\"19\" height=\"2\" src=\"https:\/\/www.cisco.com\/c\/dam\/en\/us\/td\/i\/templates\/blank.gif\" alt=\"\">Setting the Switch-to-Client Frame-Retransmission Number\u00a0(optional)<\/p>\n\n\n\n<p>\u2022<img decoding=\"async\" width=\"19\" height=\"2\" src=\"https:\/\/www.cisco.com\/c\/dam\/en\/us\/td\/i\/templates\/blank.gif\" alt=\"\">Enabling Multiple Hosts\u00a0(optional)<\/p>\n\n\n\n<p>\u2022<img decoding=\"async\" width=\"19\" height=\"2\" src=\"https:\/\/www.cisco.com\/c\/dam\/en\/us\/td\/i\/templates\/blank.gif\" alt=\"\">Resetting the 802.1X Configuration to the Default Values\u00a0(optional)<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Default 802.1X Configuration<\/h3>\n\n\n\n<p>Table\u00a031-1\u00a0shows the default 802.1X configuration.<\/p>\n\n\n\n<figure id=\"wp1133406table1133400\" class=\"wp-block-table\"><table><tbody><tr><th scope=\"col\">Feature<\/th><th scope=\"col\">Default Setting<\/th><\/tr><tr><td>Authentication, authorization, and accounting (AAA)<\/td><td>Disabled<\/td><\/tr><tr><td>RADIUS server\u2022<img decoding=\"async\" src=\"https:\/\/www.cisco.com\/c\/dam\/en\/us\/td\/i\/templates\/blank.gif\" alt=\"\" width=\"19\" height=\"2\">IP address\u2022<img decoding=\"async\" src=\"https:\/\/www.cisco.com\/c\/dam\/en\/us\/td\/i\/templates\/blank.gif\" alt=\"\" width=\"19\" height=\"2\">UDP authentication port\u2022<img decoding=\"async\" src=\"https:\/\/www.cisco.com\/c\/dam\/en\/us\/td\/i\/templates\/blank.gif\" alt=\"\" width=\"19\" height=\"2\">Key<\/td><td>\u2022<img decoding=\"async\" src=\"https:\/\/www.cisco.com\/c\/dam\/en\/us\/td\/i\/templates\/blank.gif\" alt=\"\" width=\"19\" height=\"2\">None specified\u2022<img decoding=\"async\" src=\"https:\/\/www.cisco.com\/c\/dam\/en\/us\/td\/i\/templates\/blank.gif\" alt=\"\" width=\"19\" height=\"2\">1812\u2022<img decoding=\"async\" src=\"https:\/\/www.cisco.com\/c\/dam\/en\/us\/td\/i\/templates\/blank.gif\" alt=\"\" width=\"19\" height=\"2\">None specified<\/td><\/tr><tr><td>Per-interface 802.1X protocol enable state<\/td><td>Disabled (force-authorized)The port transmits and receives normal traffic without 802.1X-based authentication of the client.<\/td><\/tr><tr><td>Periodic reauthentication<\/td><td>Disabled<\/td><\/tr><tr><td>Time between reauthentication attempts<\/td><td>3600 sec<\/td><\/tr><tr><td>Quiet period<\/td><td>60 secNumber of seconds that the switch remains in the quiet state following a failed authentication exchange with the client.<\/td><\/tr><tr><td>Retransmission time<\/td><td>30 secNumber of seconds that the switch should wait for a response to an EAP request\/identity frame from the client before retransmitting the request.<\/td><\/tr><tr><td>Maximum retransmission number<\/td><td>2Number of times that the switch will send an EAP-request\/identity frame before restarting the authentication process.<\/td><\/tr><tr><td>Multiple host support<\/td><td>Disabled<\/td><\/tr><tr><td>Client timeout period<\/td><td>30 secWhen relaying a request from the authentication server to the client, the amount of time that the switch waits for a response before retransmitting the request to the client.<\/td><\/tr><tr><td>Authentication server timeout period<\/td><td>30 secWhen relaying a response from the client to the authentication server, the amount of time that the switch waits for a reply before retransmitting the response to the server.&nbsp;This setting is not configurable.<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\">802.1X Configuration Guidelines<\/h3>\n\n\n\n<p>This section describes the guidelines for configuring 802.1X authentication:<\/p>\n\n\n\n<p>\u2022<img decoding=\"async\" src=\"https:\/\/www.cisco.com\/c\/dam\/en\/us\/td\/i\/templates\/blank.gif\" alt=\"\" width=\"19\" height=\"2\">The 802.1X protocol is supported on both Layer 2 static-access ports and Layer 3 routed ports, but it is not supported on the following port types:<\/p>\n\n\n\n<p>\u2013<img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.cisco.com\/c\/dam\/en\/us\/td\/i\/templates\/blank.gif\" alt=\"\" width=\"17\" height=\"2\">Trunk port\u2014If you try to enable 802.1X on a trunk port, an error message appears, and 802.1X is not enabled. If you try to change the mode of an 802.1X-enabled port to trunk, the port mode is not changed.<\/p>\n\n\n\n<p>\u2013<img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.cisco.com\/c\/dam\/en\/us\/td\/i\/templates\/blank.gif\" alt=\"\" width=\"17\" height=\"2\">Default ports\u2014All ports default as dynamic-access ports (auto). Use the&nbsp;<strong>no switchport<\/strong>&nbsp;command to access a router port.<\/p>\n\n\n\n<p>\u2013<img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.cisco.com\/c\/dam\/en\/us\/td\/i\/templates\/blank.gif\" alt=\"\" width=\"17\" height=\"2\">Dynamic ports\u2014A port in dynamic mode can negotiate with its neighbor to become a trunk port. If you try to enable 802.1X on a dynamic port, an error message appears, and 802.1X is not enabled. If you try to change the mode of an 802.1X-enabled port to dynamic, the port mode is not changed.<\/p>\n\n\n\n<p>\u2013<img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.cisco.com\/c\/dam\/en\/us\/td\/i\/templates\/blank.gif\" alt=\"\" width=\"17\" height=\"2\">EtherChannel port\u2014Before enabling 802.1X on the port, you must first remove it from the EtherChannel. If you try to enable 802.1X on an EtherChannel or on an active port in an EtherChannel, an error message appears, and 802.1X is not enabled. If you enable 802.1X on a not-yet active port of an EtherChannel, the port does not join the EtherChannel.<\/p>\n\n\n\n<p>\u2013<img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.cisco.com\/c\/dam\/en\/us\/td\/i\/templates\/blank.gif\" alt=\"\" width=\"17\" height=\"2\">Switched Port Analyzer (SPAN) destination port\u2014You can enable 802.1X on a port that is a SPAN destination port; however, 802.1X is disabled until the port is removed as a SPAN destination. You can enable 802.1X on a SPAN source port.<\/p>\n\n\n\n<p>If you are planning to use either 802.1X accounting or VLAN assignment, be aware that both features utilize general AAA commands. For information how to configure AAA, refer to&nbsp;<a href=\"https:\/\/www.cisco.com\/c\/en\/us\/td\/docs\/switches\/lan\/catalyst4500\/12-2\/25ew\/configuration\/guide\/conf\/dot1x.html#wp1175417\">&#8220;Enabling 802.1X Authentication&#8221; on page&nbsp;13<\/a>&nbsp;and&nbsp;<a href=\"https:\/\/www.cisco.com\/c\/en\/us\/td\/docs\/switches\/lan\/catalyst4500\/12-2\/25ew\/configuration\/guide\/conf\/dot1x.html#wp1150185\">&#8220;Enabling 802.1X Accounting&#8221; on page&nbsp;16<\/a>. Alternatively, you can refer to the Cisco IOS security documentation.<\/p>\n\n\n\n<p>Refer to the following Cisco IOS security documentation for information on how to configure AAA system accounting:<\/p>\n\n\n\n<p>\u2022<a href=\"http:\/\/www.cisco.com\/univercd\/cc\/td\/doc\/product\/software\/ios122\/122cgcr\/fsecur_c\/index.htm\">http:\/\/www.cisco.com\/univercd\/cc\/td\/doc\/product\/software\/ios122\/122cgcr\/fsecur_c\/index.htm<\/a><\/p>\n\n\n\n<p>\u2022<a href=\"http:\/\/www.cisco.com\/univercd\/cc\/td\/doc\/product\/software\/ios122\/122cgcr\/fsecur_r\/index.htm\">http:\/\/www.cisco.com\/univercd\/cc\/td\/doc\/product\/software\/ios122\/122cgcr\/fsecur_r\/index.htm<\/a><\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Enabling 802.1X Authentication<\/h3>\n\n\n\n<p>To enable 802.1X port-based authentication, you first must enable 802.1X globally on your switch, then enable AAA and specify the authentication method list. A method list describes the sequence and authentication methods that must be queried to authenticate a user.<\/p>\n\n\n\n<p>The software uses the first method listed in the method list to authenticate users; if that method fails to respond, the software selects the next authentication method in the list. This process continues until there is successful communication with a listed authentication method or until all defined methods are exhausted. If authentication fails at any point in this cycle, the authentication process stops, and no other authentication methods are attempted.<\/p>\n\n\n\n<p>To allow VLAN assignment, you must enable AAA authorization to configure the switch for all network-related service requests.<\/p>\n\n\n\n<p>To configure 802.1X port-based authentication, perform this task:<\/p>\n\n\n\n<figure id=\"wp1141029table1133484\" class=\"wp-block-table\"><table><tbody><tr><th scope=\"col\">&nbsp;<\/th><th scope=\"col\">Command<\/th><th scope=\"col\">Purpose<\/th><\/tr><tr><td>Step&nbsp;1&nbsp;<\/td><td>Switch#<strong> configure terminal<\/strong><\/td><td>Enters global configuration mode.<\/td><\/tr><tr><td>Step&nbsp;2&nbsp;<\/td><td>Switch(config)#[<strong>no<\/strong>]<strong> dot1x system-auth-control<\/strong><\/td><td>Enables the 802.1X feature on your switch.<\/td><\/tr><tr><td>Step&nbsp;3&nbsp;<\/td><td>Switch(config)#<strong> aaa new-model<\/strong><\/td><td>Enables AAA.<\/td><\/tr><tr><td>Step&nbsp;4&nbsp;<\/td><td>Switch(config)#<strong> aaa authentication dot1x <\/strong>{default} method1 [method2&#8230;]<\/td><td>Creates an 802.1X authentication method list.To create a default list that is used when a named list is not specified in the&nbsp;<strong>authentication<\/strong>&nbsp;command, use the&nbsp;<strong>default<\/strong>&nbsp;keyword followed by the methods that are to be used in default situations. The default method list is automatically applied to all interfaces.Enter at least one of these keywords:\u2022<img decoding=\"async\" src=\"https:\/\/www.cisco.com\/c\/dam\/en\/us\/td\/i\/templates\/blank.gif\" alt=\"\" width=\"19\" height=\"2\"><strong>group radius<\/strong>\u2014Use the list of all RADIUS servers for authentication.\u2022<img decoding=\"async\" src=\"https:\/\/www.cisco.com\/c\/dam\/en\/us\/td\/i\/templates\/blank.gif\" alt=\"\" width=\"19\" height=\"2\"><strong>none<\/strong>\u2014Use no authentication. The client is automatically authenticated by the switch without using the information supplied by the client.<\/td><\/tr><tr><td>Step&nbsp;5&nbsp;<\/td><td>Switch(config)# <strong>aaa authorization network {default} group radius<\/strong><\/td><td>(Optional) Configure the switch for user RADIUS authorization for all network-related service requests, such as VLAN assignment.<\/td><\/tr><tr><td>Step&nbsp;6&nbsp;<\/td><td>Switch(config)#<strong> interface<\/strong> interface-id<\/td><td>Enters interface configuration mode and specifies the interface to be enabled for 802.1X authentication.<\/td><\/tr><tr><td>Step&nbsp;7&nbsp;<\/td><td>Switch(config-if)#<strong> dot1x port-control auto<\/strong><\/td><td>Enables 802.1X authentication on the interface.For feature interaction information with trunk, dynamic, dynamic-access, EtherChannel, secure, and SPAN ports, see the\u00a0&#8220;802.1X Configuration Guidelines&#8221; section.<\/td><\/tr><tr><td>Step&nbsp;8&nbsp;<\/td><td>Switch(config-if)#<strong> end<\/strong><\/td><td>Returns to privileged EXEC mode.<\/td><\/tr><tr><td>Step&nbsp;9&nbsp;<\/td><td>Switch #<strong> show dot1x all<\/strong><\/td><td>Verifies your entries.Check the Status column in the 802.1X Port Summary section of the display. An enabled status means that the port-control value is set either to&nbsp;<strong>auto<\/strong>&nbsp;or to&nbsp;<strong>force-unauthorized<\/strong>.<\/td><\/tr><tr><td>Step&nbsp;10&nbsp;<\/td><td>Switch#<strong> show running-config<\/strong><\/td><td>Verifies your entries.<\/td><\/tr><tr><td>Step&nbsp;11&nbsp;<\/td><td>Switch#<strong> copy running-config startup-config<\/strong><\/td><td>(Optional) Saves your entries in the configuration file.<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p>To disable AAA, use the&nbsp;<strong>no aaa new-model<\/strong>&nbsp;global configuration command.<\/p>\n\n\n\n<p>To disable 802.1X AAA authentication, use the<strong>&nbsp;no aaa authentication&nbsp;<\/strong>dot1x&nbsp;{default&nbsp;|&nbsp;<em>list-name<\/em>}&nbsp;<em>method1<\/em>&nbsp;[<em>method2<\/em>&#8230;]&nbsp;global configuration command.<\/p>\n\n\n\n<p>To disable 802.1X authentication, use the&nbsp;<strong>dot1x port-control force-authorized<\/strong>&nbsp;or the&nbsp;<strong>no dot1x port-control<\/strong>&nbsp;interface configuration command.<\/p>\n\n\n\n<p>This example shows how to enable AAA and 802.1X on Fast Ethernet port 2\/1:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">Switch# <strong>configure terminal\n<\/strong><\/pre>\n\n\n\n<pre class=\"wp-block-preformatted\">Switch(config)# <strong>dot1x system-auth-control\n<\/strong><\/pre>\n\n\n\n<pre class=\"wp-block-preformatted\">Switch(config)# <strong>aaa new-model\n<\/strong><\/pre>\n\n\n\n<pre class=\"wp-block-preformatted\">Switch(config)# <strong>aaa authentication dot1x default group radius\n<\/strong><\/pre>\n\n\n\n<pre class=\"wp-block-preformatted\">Switch(config)# <strong>interface fastethernet2\/1\n<\/strong><\/pre>\n\n\n\n<pre class=\"wp-block-preformatted\">Switch(config-if)# <strong>dot1x port-control auto\n<\/strong><\/pre>\n\n\n\n<pre class=\"wp-block-preformatted\">Switch(config-if)# <strong>end\n<\/strong><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\">Configuring Switch-to-RADIUS-Server Communication<\/h3>\n\n\n\n<p>A RADIUS security server is identified by its host name or IP address, host name and specific UDP port number, or IP address and specific UDP port numbers. The combination of the IP address and UDP port number creates a unique identifier, which enables RADIUS requests to be sent to multiple UDP ports on a server at the same IP address. If two different host entries on the same RADIUS server are configured for the same service\u2014for example, authentication\u2014the second host entry configured acts as the fail-over backup to the first one. The RADIUS host entries are tried in the order they were configured.<\/p>\n\n\n\n<p>To configure the RADIUS server parameters on the switch, perform this task:<\/p>\n\n\n\n<figure id=\"wp1141084table1133568\" class=\"wp-block-table\"><table><tbody><tr><th scope=\"col\">&nbsp;<\/th><th scope=\"col\">Command<\/th><th scope=\"col\">Purpose<\/th><\/tr><tr><td>Step&nbsp;1&nbsp;<\/td><td>Switch#<strong> configure terminal<\/strong><\/td><td>Enters global configuration mode.<\/td><\/tr><tr><td>Step&nbsp;2&nbsp;<\/td><td>Switch(config)#<strong> radius-server host<\/strong> {<em>hostname<\/em> | <em>ip-address<\/em>} <strong>auth-port<\/strong> <em>port-number<\/em> [<strong>acct-port<\/strong> <em>port-number<\/em>]key <em>string<\/em><\/td><td>Configures the RADIUS server parameters on the switch.For&nbsp;<em>hostname<\/em>&nbsp;|&nbsp;<em>ip-address,&nbsp;<\/em>specify the hostname or IP address of the remote RADIUS server.For&nbsp;<strong>auth-port&nbsp;<\/strong>port-number, specify the UDP destination port for authentication requests. The default is 1812.For&nbsp;<strong>acct-port&nbsp;<\/strong>port-number, specify the UDP destination port for accounting requests. The default is 1813.For&nbsp;<strong>key<\/strong>&nbsp;<em>string<\/em>, specify the authentication and encryption key used between the switch and the RADIUS daemon running on the RADIUS server. The key is a text string that must match the encryption key used on the RADIUS server.<strong>Note&nbsp;<\/strong>Always configure the key as the last item in the&nbsp;<strong>radius-server host<\/strong>&nbsp;command syntax because leading spaces are ignored, but spaces within and at the end of the key are used. If you use spaces in the key, do not enclose the key in quotation marks unless the quotation marks are part of the key. This key must match the encryption used on the RADIUS daemon.If you want to use multiple RADIUS servers, reenter this command.<\/td><\/tr><tr><td>Step&nbsp;3&nbsp;<\/td><td>Switch(config-if)#<strong> ip radius source-interface m\/p<\/strong><\/td><td>Establishes the IP address to be used as the source address for all outgoing RADIUS packets.<\/td><\/tr><tr><td>Step&nbsp;4&nbsp;<\/td><td>Switch(config)#<strong> end<\/strong><\/td><td>Returns to privileged EXEC mode.<\/td><\/tr><tr><td>Step&nbsp;5&nbsp;<\/td><td>Switch#<strong> show running-config<\/strong><\/td><td>Verifies your entries.<\/td><\/tr><tr><td>Step&nbsp;6&nbsp;<\/td><td>Switch#<strong> copy running-config startup-config<\/strong><\/td><td>(Optional) Saves your entries in the configuration file.<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p>To delete the specified RADIUS server, use the&nbsp;<strong>no radius-server host<\/strong>&nbsp;{<em>hostname<\/em>&nbsp;|&nbsp;<em>ip-address<\/em>} global configuration command.<\/p>\n\n\n\n<p>This example shows how to specify the server with IP address 172.20.39.46 as the RADIUS server. The first command specifies port 1612 as the authorization port, sets the encryption key to rad123. The second command dictates that key matches will be performed on the RADIUS server:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">Switch(config)# <strong>radius-server host 172.l20.39.46 auth-port 1612 key rad123\n<\/strong><\/pre>\n\n\n\n<pre class=\"wp-block-preformatted\">Switch(config)# <strong>ip radius source-interface m\/p\n<\/strong><\/pre>\n\n\n\n<p>You can globally configure the timeout, retransmission, and encryption key values for all RADIUS servers by using the&nbsp;<strong>radius-server host<\/strong>&nbsp;global configuration command. If you want to configure these options on a per-server basis, use the&nbsp;<strong>radius-server timeout<\/strong>,&nbsp;<strong>radius-server retransmit<\/strong>, and the&nbsp;<strong>radius-server key<\/strong>&nbsp;global configuration commands.<\/p>\n\n\n\n<p>You also need to configure some settings on the RADIUS server. These settings include the IP address of the switch and the key string to be shared by both the server and the switch.<\/p>\n\n\n\n<p>Refer to the following Cisco IOS security documentation for information on how to configure AAA system accounting:<\/p>\n\n\n\n<p>\u2022<img decoding=\"async\" src=\"https:\/\/www.cisco.com\/c\/dam\/en\/us\/td\/i\/templates\/blank.gif\" alt=\"\" width=\"19\" height=\"2\">http:\/\/www.cisco.com\/univercd\/cc\/td\/doc\/product\/software\/ios122\/122cgcr\/fsecur_c\/index.htm<\/p>\n\n\n\n<p>\u2022<img decoding=\"async\" src=\"https:\/\/www.cisco.com\/c\/dam\/en\/us\/td\/i\/templates\/blank.gif\" alt=\"\" width=\"19\" height=\"2\">http:\/\/www.cisco.com\/univercd\/cc\/td\/doc\/product\/software\/ios122\/122cgcr\/fsecur_r\/index.htm<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Enabling 802.1X Accounting<\/h3>\n\n\n\n<p><img decoding=\"async\" src=\"https:\/\/www.cisco.com\/c\/dam\/en\/us\/td\/i\/templates\/note.gif\" alt=\"\"><\/p>\n\n\n\n<hr class=\"wp-block-separator\"\/>\n\n\n\n<p><strong>Note&nbsp;<\/strong>If you plan to implement system-wide accounting, you should also configure 802.1X accounting. Moreover, you need to inform the accounting server of the system reload event when the system is reloaded. Doing this, ensures that the accounting server knows that all outstanding 802.1X sessions on this system are closed.<\/p>\n\n\n\n<hr class=\"wp-block-separator\"\/>\n\n\n\n<p>Once you configure 802.1X authentication and switch-to-RADIUS server communication, perform this task to enable 802.1X accounting:<\/p>\n\n\n\n<figure id=\"wp1150191table1150187\" class=\"wp-block-table\"><table><tbody><tr><th scope=\"col\">&nbsp;<\/th><th scope=\"col\">Command<\/th><th scope=\"col\">Purpose<\/th><\/tr><tr><td>Step&nbsp;1&nbsp;<\/td><td>Switch #<strong> configure terminal<\/strong><\/td><td>Enters global configuration mode.<\/td><\/tr><tr><td>Step&nbsp;2&nbsp;<\/td><td>Switch(config)#<strong> aaa accounting dot1x default start-stop group radius<\/strong><\/td><td>Enables 802.1X accounting, using the list of all RADIUS servers.<\/td><\/tr><tr><td>Step&nbsp;3&nbsp;<\/td><td>Switch(config)# <strong>clock timezone PST -8<\/strong><\/td><td>Sets the time zone for the accounting event-time stamp field.<\/td><\/tr><tr><td>Step&nbsp;4&nbsp;<\/td><td>Switch(config)# <strong>clock calendar-valid<\/strong><\/td><td>Enables the date for the accounting event-time stamp field.<\/td><\/tr><tr><td>Step&nbsp;5&nbsp;<\/td><td>Switch(config-if)#<strong> aaa accounting system default start-stop group radius<\/strong><\/td><td>(Optional) Enables system accounting (using the list of all RADIUS servers) and generates system accounting reload event messages when the switch reloads.<\/td><\/tr><tr><td>Step&nbsp;6&nbsp;<\/td><td>Switch(config-if)#<strong> end<\/strong><\/td><td>Returns to privileged EXEC mode.<\/td><\/tr><tr><td>Step&nbsp;7&nbsp;<\/td><td>Switch #<strong> show running-config<\/strong><\/td><td>Verifies your entries.<\/td><\/tr><tr><td>Step&nbsp;8&nbsp;<\/td><td>Switch #<strong> copy running-config startup-config<\/strong><\/td><td>(Optional) Saves your entries in the configuration file.<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p>This example shows how to configure 802.1X accounting. The first command configures the RADIUS server, specifying 1813 as the UDP port for accounting:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">Switch(config)# radius-server host 172.120.39.46 auth-port 1812 acct-port 1813 key rad123\n<\/pre>\n\n\n\n<pre class=\"wp-block-preformatted\">Switch(config)# aaa accounting dot1x default start-stop group radius\n<\/pre>\n\n\n\n<pre class=\"wp-block-preformatted\">Switch(config)# aaa accounting system default start-stop group radius\n<\/pre>\n\n\n\n<p><img decoding=\"async\" src=\"https:\/\/www.cisco.com\/c\/dam\/en\/us\/td\/i\/templates\/note.gif\" alt=\"\"><\/p>\n\n\n\n<hr class=\"wp-block-separator\"\/>\n\n\n\n<p><strong>Note&nbsp;<\/strong>You must configure the RADIUS server to perform accounting tasks, such as logging start, stop, and interim-update messages and time stamps. To turn on these functions, enable logging of &#8220;Update\/Watchdog packets from this AAA client&#8221; in your RADIUS server Network Configuration tab. Next, enable &#8220;CVS RADIUS Accounting&#8221; in your RADIUS server System Configuration tab.<\/p>\n\n\n\n<hr class=\"wp-block-separator\"\/>\n\n\n\n<h3 class=\"wp-block-heading\">Configuring 802.1X with Guest VLANs<\/h3>\n\n\n\n<p><img decoding=\"async\" src=\"https:\/\/www.cisco.com\/c\/dam\/en\/us\/td\/i\/templates\/note.gif\" alt=\"\"><\/p>\n\n\n\n<hr class=\"wp-block-separator\"\/>\n\n\n\n<p><strong>Note&nbsp;<\/strong>When a port is put into a guest VLAN, it is automatically placed into multihost mode, and an unlimited number of hosts can connect through the port. Changing the multihost configuration does not effect a port in a guest VLAN.<\/p>\n\n\n\n<hr class=\"wp-block-separator\"\/>\n\n\n\n<p>To configure 802.1X with guest-VLAN, perform this task:<\/p>\n\n\n\n<figure id=\"wp1150380table1150376\" class=\"wp-block-table\"><table><tbody><tr><th scope=\"col\">&nbsp;<\/th><th scope=\"col\">Command<\/th><th scope=\"col\">Purpose<\/th><\/tr><tr><td>Step&nbsp;1&nbsp;<\/td><td>Switch #<strong> configure terminal<\/strong><\/td><td>Enters global configuration mode.<\/td><\/tr><tr><td>Step&nbsp;2&nbsp;<\/td><td>Switch(config)#<strong> interface<\/strong> interface-id<\/td><td>Enters interface configuration mode and specifies the interface to be enabled for 802.1X authentication.<\/td><\/tr><tr><td>Step&nbsp;3&nbsp;<\/td><td>Switch(config-if)#<strong> dot1x port-control auto<\/strong>]<\/td><td>Enables 802.1X authentication on the interface.For feature interaction information with trunk, dynamic, dynamic-access, EtherChannel, secure, and SPAN ports, see the\u00a0&#8220;802.1X Configuration Guidelines&#8221; section.<\/td><\/tr><tr><td>Step&nbsp;4&nbsp;<\/td><td>Switch(config-if)#<strong> dot1x guest-vlan <\/strong>vlan-id<\/td><td>Enables a guest VLAN on a particular interface.<\/td><\/tr><tr><td>Step&nbsp;5&nbsp;<\/td><td>Switch(config-if)#<strong> end<\/strong><\/td><td>Returns to configuration mode.<\/td><\/tr><tr><td>Step&nbsp;6&nbsp;<\/td><td>Switch(config)#<strong> end<\/strong><\/td><td>Returns to privileged EXEC mode.<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p>To disable the guest VLAN feature on a particular port, use the no dot1x guest-vlan&nbsp;interface configuration command.<\/p>\n\n\n\n<p>This example shows how to enable a guest VLAN on Fast Ethernet interface 4\/3:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">Switch# configure terminal\n<\/pre>\n\n\n\n<pre class=\"wp-block-preformatted\">Switch(config)# <strong>interface fastethernet4\/3\n<\/strong><\/pre>\n\n\n\n<pre class=\"wp-block-preformatted\">Switch(config-if)# <strong>dot1x port-control auto\n<\/strong><\/pre>\n\n\n\n<pre class=\"wp-block-preformatted\">Switch(config-if)# dot1x guest-vlan 50\n<\/pre>\n\n\n\n<pre class=\"wp-block-preformatted\">Switch(config-if)# <strong>end\n<\/strong><\/pre>\n\n\n\n<pre class=\"wp-block-preformatted\">Switch(config)# <strong>end\n<\/strong><\/pre>\n\n\n\n<pre class=\"wp-block-preformatted\">Switch#\n<\/pre>\n\n\n\n<h3 class=\"wp-block-heading\">Configuring 802.1X with Voice VLAN<\/h3>\n\n\n\n<p>To enable 802.1X with voice VLAN feature, perform this task:<\/p>\n\n\n\n<figure id=\"wp1170183table1170179\" class=\"wp-block-table\"><table><tbody><tr><th scope=\"col\">&nbsp;<\/th><th scope=\"col\">Command<\/th><th scope=\"col\">Purpose<\/th><\/tr><tr><td>Step&nbsp;1&nbsp;<\/td><td>Switch #<strong> configure terminal<\/strong><\/td><td>Enters global configuration mode.<\/td><\/tr><tr><td>Step&nbsp;2&nbsp;<\/td><td>Switch(config)#<strong> interface<\/strong> interface-id<\/td><td>Enters interface configuration mode.<\/td><\/tr><tr><td>Step&nbsp;3&nbsp;<\/td><td>Switch(config-if)#<strong> switchport access vlan <\/strong>vlan-id<\/td><td>Sets the VLAN for a switched interface in access mode.<\/td><\/tr><tr><td>Step&nbsp;4&nbsp;<\/td><td>Switch(config-if)#<strong> switchport mode access<\/strong><\/td><td>Specifies a nontrunking, nontagged single VLAN Layer 2 interface.<\/td><\/tr><tr><td>Step&nbsp;5&nbsp;<\/td><td>Switch(config-if)#<strong> switchport voice vlan <\/strong>vlan-id<\/td><td>Sets the voice VLAN for the interface.<\/td><\/tr><tr><td>Step&nbsp;6&nbsp;<\/td><td>Switch(config-if)#<strong> dot1x port-control auto<\/strong><\/td><td>Enables 802.1X authentication on the interface.<\/td><\/tr><tr><td>Step&nbsp;7&nbsp;<\/td><td>Switch(config-if)#<strong> end<\/strong><\/td><td>Returns to configuration mode.<\/td><\/tr><tr><td>Step&nbsp;8&nbsp;<\/td><td>Switch(config)#<strong> end<\/strong><\/td><td>Returns to privileged EXEC mode.<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p>This example shows how to enable 802.1X with voice VLAN feature on Fast Ethernet interface 5\/9:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">Switch# <strong>configure terminal\n<\/strong><\/pre>\n\n\n\n<pre class=\"wp-block-preformatted\">Switch(config)# <strong>interface fastethernet5\/9\n<\/strong><\/pre>\n\n\n\n<pre class=\"wp-block-preformatted\">Switch(config-if)# <strong>switchport access vlan 2\n<\/strong><\/pre>\n\n\n\n<pre class=\"wp-block-preformatted\">Switch(config-if)# <strong>switchport mode access\n<\/strong><\/pre>\n\n\n\n<pre class=\"wp-block-preformatted\">Switch(config-if)# <strong>switchport voice vlan 10\n<\/strong><\/pre>\n\n\n\n<pre class=\"wp-block-preformatted\">Switch(config-if)# <strong>dot1x port-control auto\n<\/strong><\/pre>\n\n\n\n<pre class=\"wp-block-preformatted\">Switch(config-if)# <strong>end\n<\/strong><\/pre>\n\n\n\n<p><img decoding=\"async\" src=\"https:\/\/www.cisco.com\/c\/dam\/en\/us\/td\/i\/templates\/note.gif\" alt=\"\"><\/p>\n\n\n\n<hr class=\"wp-block-separator\"\/>\n\n\n\n<p><strong>Note&nbsp;<\/strong><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.cisco.com\/c\/dam\/en\/us\/td\/i\/templates\/blank.gif\" alt=\"\" width=\"6\" height=\"2\">You must configure 802.1X and voice VLAN at the same time.<\/p>\n\n\n\n<hr class=\"wp-block-separator\"\/>\n\n\n\n<h3 class=\"wp-block-heading\">Enabling Periodic Reauthentication<\/h3>\n\n\n\n<p>You can enable periodic 802.1X client reauthentication and specify how often it occurs. If you do not specify a time value before enabling reauthentication, the interval between reauthentication attempts is 3600 seconds.<\/p>\n\n\n\n<p>Automatic 802.1X client reauthentication is a per-interface setting and can be set for clients connected to individual ports. To manually reauthenticate the client connected to a specific port, see the\u00a0&#8220;Manually Reauthenticating a Client Connected to a Port&#8221; section.<\/p>\n\n\n\n<p>To enable periodic reauthentication of the client and to configure the number of seconds between reauthentication attempts, perform this task:<\/p>\n\n\n\n<figure id=\"wp1141142table1133627\" class=\"wp-block-table\"><table><tbody><tr><th scope=\"col\">&nbsp;<\/th><th scope=\"col\">Command<\/th><th scope=\"col\">Purpose<\/th><\/tr><tr><td>Step&nbsp;1&nbsp;<\/td><td>Switch#<strong> configure terminal<\/strong><\/td><td>Enters global configuration mode.<\/td><\/tr><tr><td>Step&nbsp;2&nbsp;<\/td><td>Switch(config)#<strong> interface<\/strong> interface-id<\/td><td>Enters interface configuration mode and specifies the interface to be enabled for periodic reauthentication.<\/td><\/tr><tr><td>Step&nbsp;3&nbsp;<\/td><td>Switch(config-if)#<strong> dot1x re-authentication<\/strong><\/td><td>Enables periodic reauthentication of the client, which is disabled by default.<\/td><\/tr><tr><td>Step&nbsp;4&nbsp;<\/td><td>Switch(config)#<strong> dot1x timeout reauth-period<\/strong> <em>seconds<\/em><\/td><td>Specifies the number of seconds between reauthentication attempts.The range is&nbsp;1 to&nbsp;65,535; the default is 3600 seconds.This command affects the behavior of the switch only if periodic reauthentication is enabled.<\/td><\/tr><tr><td>Step&nbsp;5&nbsp;<\/td><td>Switch(config)#<strong> end<\/strong><\/td><td>Returns to privileged EXEC mode.<\/td><\/tr><tr><td>Step&nbsp;6&nbsp;<\/td><td>Switch#<strong> show dot1x all<\/strong><\/td><td>Verifies your entries.<\/td><\/tr><tr><td>Step&nbsp;7&nbsp;<\/td><td>Switch(config)#<strong> copy running-config startup-config<\/strong><\/td><td>(Optional) Saves your entries in the configuration file.<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p>To disable periodic reauthentication, use the&nbsp;<strong>no<\/strong>&nbsp;<strong>dot1x re-authentication<\/strong>&nbsp;interface configuration command. To return to the default number of seconds between reauthentication attempts, use the&nbsp;<strong>no<\/strong>&nbsp;dot1x timeout reauth-period&nbsp;global configuration command.<\/p>\n\n\n\n<p>This example shows how to enable periodic reauthentication and set the number of seconds between reauthentication attempts to 4000:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">Switch(config)# <strong>dot1x timeout reauth-period 4000\n<\/strong><\/pre>\n\n\n\n<pre class=\"wp-block-preformatted\">Switch(config)# <strong>dot1x re-authentication\n<\/strong><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\">Manually Reauthenticating a Client Connected to a Port<\/h3>\n\n\n\n<p>You can manually reauthenticate a client connected to a specific port at any time by entering the\u00a0<strong>dot1x re-authenticate interface<\/strong>\u00a0<em>interface-id<\/em>\u00a0privileged EXEC command. If you want to enable or disable periodic reauthentication, see the\u00a0&#8220;Enabling Periodic Reauthentication&#8221; section.<\/p>\n\n\n\n<p>This example shows how to manually reauthenticate the client connected to Fast Ethernet port 1\/1:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">Switch# <strong>dot1x re-authenticate interface fastethernet1\/1\n<\/strong><\/pre>\n\n\n\n<pre class=\"wp-block-preformatted\">Starting reauthentication on FastEthernet1\/1\n<\/pre>\n\n\n\n<h3 class=\"wp-block-heading\">Changing the Quiet Period<\/h3>\n\n\n\n<p>When the switch cannot authenticate the client, the switch remains idle for a set period of time, and then tries again. The idle time is determined by the&nbsp;<strong>quiet-period<\/strong>&nbsp;value. A failed authentication of the client might occur because the client provided an invalid password. You can provide a faster response time to the user by entering a number smaller than the default.<\/p>\n\n\n\n<p>To change the quiet period, perform this task:<\/p>\n\n\n\n<figure id=\"wp1141203table1133692\" class=\"wp-block-table\"><table><tbody><tr><th scope=\"col\">&nbsp;<\/th><th scope=\"col\">Command<\/th><th scope=\"col\">Purpose<\/th><\/tr><tr><td>Step&nbsp;1&nbsp;<\/td><td>Switch# <strong>configure terminal<\/strong><\/td><td>Enters global configuration mode.<\/td><\/tr><tr><td>Step&nbsp;2&nbsp;<\/td><td>Switch(config)#<strong> interface<\/strong> interface-id<\/td><td>Enters interface configuration mode and specifies the interface to be enabled for timeout&nbsp;<strong>quiet-period<\/strong>.<\/td><\/tr><tr><td>Step&nbsp;3&nbsp;<\/td><td>Switch(config)#<strong> dot1x timeout quiet-period<\/strong> <em>seconds<\/em><\/td><td>Sets the number of seconds that the switch remains in the&nbsp;<strong>quiet-period<\/strong>&nbsp;following a failed authentication exchange with the client.The range is 0 to 65,535 seconds; the default is 60.<\/td><\/tr><tr><td>Step&nbsp;4&nbsp;<\/td><td>Switch(config)#<strong> end<\/strong><\/td><td>Returns to privileged EXEC mode.<\/td><\/tr><tr><td>Step&nbsp;5&nbsp;<\/td><td>Switch#<strong> show dot1x all<\/strong><\/td><td>Verifies your entries.<\/td><\/tr><tr><td>Step&nbsp;6&nbsp;<\/td><td>Switch# <strong>copy running-config startup-config<\/strong><\/td><td>(Optional) Saves your entries in the configuration file.<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p>To return to the default quiet-period, use the&nbsp;<strong>no<\/strong>&nbsp;dot1x timeout quiet-period&nbsp;configuration command.&nbsp;This example shows how to set the&nbsp;<strong>quiet-period<\/strong>&nbsp;on the switch to 30 seconds:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">Switch(config)# <strong>dot1x timeout quiet-period 30\n<\/strong><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\">Changing the Switch-to-Client Retransmission Time<\/h3>\n\n\n\n<p>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 retransmits the frame.<img decoding=\"async\" src=\"https:\/\/www.cisco.com\/c\/dam\/en\/us\/td\/i\/templates\/note.gif\" alt=\"\"><\/p>\n\n\n\n<hr class=\"wp-block-separator\"\/>\n\n\n\n<p><strong>Note&nbsp;<\/strong>You should change the default value of this command only to adjust for unusual circumstances, such as unreliable links or specific behavioral problems with certain clients and authentication servers.<\/p>\n\n\n\n<hr class=\"wp-block-separator\"\/>\n\n\n\n<p>To change the amount of time that the switch waits for client notification, perform this task:<\/p>\n\n\n\n<figure id=\"wp1141258table1133740\" class=\"wp-block-table\"><table><tbody><tr><th scope=\"col\">&nbsp;<\/th><th scope=\"col\">Command<\/th><th scope=\"col\">Purpose<\/th><\/tr><tr><td>Step&nbsp;1&nbsp;<\/td><td>Switch#<strong> configure terminal<\/strong><\/td><td>Enters global configuration mode.<\/td><\/tr><tr><td>Step&nbsp;2&nbsp;<\/td><td>Switch(config)#<strong> interface<\/strong> interface-id<\/td><td>Enters interface configuration mode and specifies the interface to be enabled for timeout tx-period.<\/td><\/tr><tr><td>Step&nbsp;3&nbsp;<\/td><td>Switch(config-if)#<strong> dot1x timeout tx-period<\/strong> <em>seconds<\/em><\/td><td>Sets the number of seconds that the switch waits for a response to an EAP-request\/identity frame from the client before retransmitting the request.The range is 1 to 65,535 seconds; the default is 30.<\/td><\/tr><tr><td>Step&nbsp;4&nbsp;<\/td><td>Switch(config)#<strong> end<\/strong><\/td><td>Returns to privileged EXEC mode.<\/td><\/tr><tr><td>Step&nbsp;5&nbsp;<\/td><td>Switch#<strong> show dot1x all<\/strong><\/td><td>Verifies your entries.<\/td><\/tr><tr><td>Step&nbsp;6&nbsp;<\/td><td>Switch#<strong> copy running-config startup-config<\/strong><\/td><td>(Optional) Saves your entries in the configuration file.<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p>To return to the default retransmission time, use the&nbsp;<strong>no<\/strong>&nbsp;dot1x timeout tx-period&nbsp;interface configuration command.<\/p>\n\n\n\n<p>This example shows how to set the retransmission time to 60 seconds:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">Switch(config)# <strong>dot1x timeout tx-period 60\n<\/strong><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\">Setting the Switch-to-Client Frame-Retransmission Number<\/h3>\n\n\n\n<p>In addition to changing the switch-to-client retransmission times, you can change the number of times that the switch sends EAP-Request\/Identity and other EAP-Request frames to the client before restarting the authentication process. The number of EAP-Request\/Identity retransmissions is controlled by the dot1x max-reauth-req command; the number of retransmissions for other EAP-Request frames is controlled by the dot1x max-req command.<img decoding=\"async\" src=\"https:\/\/www.cisco.com\/c\/dam\/en\/us\/td\/i\/templates\/note.gif\" alt=\"\"><\/p>\n\n\n\n<hr class=\"wp-block-separator\"\/>\n\n\n\n<p><strong>Note&nbsp;<\/strong>You should change the default values of these commands only to adjust for unusual circumstances such as unreliable links or specific behavioral problems with certain clients and authentication servers.<\/p>\n\n\n\n<hr class=\"wp-block-separator\"\/>\n\n\n\n<p>To set the switch-to-client frame-retransmission numbers, perform this task:<\/p>\n\n\n\n<figure id=\"wp1141304table1133788\" class=\"wp-block-table\"><table><tbody><tr><th scope=\"col\">&nbsp;<\/th><th scope=\"col\">Command<\/th><th scope=\"col\">Purpose<\/th><\/tr><tr><td>Step&nbsp;1&nbsp;<\/td><td>Switch#<strong> configure terminal<\/strong><\/td><td>Enters global configuration mode.<\/td><\/tr><tr><td>Step&nbsp;2&nbsp;<\/td><td>Switch(config)#<strong> interface<\/strong> interface-id<\/td><td>Enters interface configuration mode and specifies the interface to be enabled for&nbsp;<strong>max-reauth-req&nbsp;<\/strong>and\/or<strong>&nbsp;max-req<\/strong>.<\/td><\/tr><tr><td>Step&nbsp;3&nbsp;<\/td><td>Switch(config-if)#<strong> dot1x max-req<\/strong> <em>count<\/em><br>or<br>Switch(config-if)#<strong> dot1x max-req<\/strong> <em>count<\/em><\/td><td>Specifies the number of times that the switch retransmits an EAP-request frame of a type other than EAP-request\/identity to the client before restarting the authentication process.Specifies the number of times that the switch retransmits an EAP-request\/identity frame to the client before restarting the authentication process.The range for count is 1 to 10; the default is 2.<\/td><\/tr><tr><td>Step&nbsp;4&nbsp;<\/td><td>Switch(config)#<strong> end<\/strong><\/td><td>Returns to privileged EXEC mode.<\/td><\/tr><tr><td>Step&nbsp;5&nbsp;<\/td><td>Switch#<strong> show dot1x all<\/strong><\/td><td>Verifies your entries.<\/td><\/tr><tr><td>Step&nbsp;6&nbsp;<\/td><td>Switch#<strong> copy running-config startup-config<\/strong><\/td><td>(Optional) Saves your entries in the configuration file.<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p>To return to the default retransmission number, use the&nbsp;<strong>no dot1x max-req<\/strong>&nbsp;and<br><strong>no dot1x max-reauth-req&nbsp;<\/strong>global configuration command.<\/p>\n\n\n\n<p>This example shows how to set 5 as the number of times that the switch retransmits an EAP-request\/identity request before restarting the authentication process:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">Switch(config)# <strong>dot1x max-reauth-req 5\n<\/strong><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\">Enabling Multiple Hosts<\/h3>\n\n\n\n<p>You can attach multiple hosts to a single 802.1X-enabled port as shown in\u00a0Figure\u00a031-4. In this mode, only one of the attached hosts must be successfully authorized for all hosts to be granted network access. If the port becomes unauthorized (reauthentication fails or an EAPOL-logoff message is received), all attached clients are denied access to the network.<\/p>\n\n\n\n<p>To allow multiple hosts (clients) on an 802.1X-authorized port that has the&nbsp;<strong>dot1x port-control&nbsp;<\/strong>interface configuration command set to&nbsp;<strong>auto<\/strong>,&nbsp;perform this task:<\/p>\n\n\n\n<figure id=\"wp1141648table1141644\" class=\"wp-block-table\"><table><tbody><tr><th scope=\"col\">&nbsp;<\/th><th scope=\"col\">Command<\/th><th scope=\"col\">Purpose<\/th><\/tr><tr><td>Step&nbsp;1&nbsp;<\/td><td>Switch#<strong> configure terminal<\/strong><\/td><td>Enters global configuration mode.<\/td><\/tr><tr><td>Step&nbsp;2&nbsp;<\/td><td>Switch(config)#<strong> interface<\/strong> interface-id<\/td><td>Enters interface configuration mode and specifies the interface to which multiple hosts are indirectly attached.<\/td><\/tr><tr><td>Step&nbsp;3&nbsp;<\/td><td>Switch(config-if)#<strong> dot1x host-mode multi-host<\/strong><\/td><td>Allows multiple hosts (clients) on an 802.1X-authorized port.Make sure that the&nbsp;<strong>dot1x port-control<\/strong>&nbsp;interface configuration command set is set to&nbsp;<strong>auto<\/strong>&nbsp;for the specified interface.<\/td><\/tr><tr><td>Step&nbsp;4&nbsp;<\/td><td>Switch(config-if)#<strong> end<\/strong><\/td><td>Returns to privileged EXEC mode.<\/td><\/tr><tr><td>Step&nbsp;5&nbsp;<\/td><td>Switch#<strong> show dot1x all interface <\/strong>interface-id<\/td><td>Verifies your entries.<\/td><\/tr><tr><td>Step&nbsp;6&nbsp;<\/td><td>Switch#<strong> copy running-config startup-config<\/strong><\/td><td>(Optional) Saves your entries in the configuration file.<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p>To disable multiple hosts on the port, use the no dot1x multiple-hosts&nbsp;interface configuration command.<\/p>\n\n\n\n<p>This example shows how to enable 802.1X on Fast Ethernet interface 0\/1 and to allow multiple hosts:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">Switch(config)# <strong>interface fastethernet0\/1\n<\/strong><\/pre>\n\n\n\n<pre class=\"wp-block-preformatted\">Switch(config-if)# <strong>dot1x port-control auto\n<\/strong><\/pre>\n\n\n\n<pre class=\"wp-block-preformatted\">Switch(config-if)# <strong>dot1x multiple-hosts\n<\/strong><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\">Resetting the 802.1X Configuration to the Default Values<\/h3>\n\n\n\n<p>To reset the 802.1X configuration to the default values, perform this task:<\/p>\n\n\n\n<figure id=\"wp1141385table1133890\" class=\"wp-block-table\"><table><tbody><tr><th scope=\"col\">&nbsp;<\/th><th scope=\"col\">Command<\/th><th scope=\"col\">Purpose<\/th><\/tr><tr><td>Step&nbsp;1&nbsp;<\/td><td>Switch#<strong> configure terminal<\/strong><\/td><td>Enters global configuration mode.<\/td><\/tr><tr><td>Step&nbsp;2&nbsp;<\/td><td>Switch(config)#<strong> dot1x default<\/strong><\/td><td>Resets the configurable 802.1X parameters to the default values.<\/td><\/tr><tr><td>Step&nbsp;3&nbsp;<\/td><td>Switch(config)#<strong> end<\/strong><\/td><td>Returns to privileged EXEC mode.<\/td><\/tr><tr><td>Step&nbsp;4&nbsp;<\/td><td>Switch#<strong> show dot1x all<\/strong><\/td><td>Verifies your entries.<\/td><\/tr><tr><td>Step&nbsp;5&nbsp;<\/td><td>Switch#<strong> copy running-config startup-config<\/strong><\/td><td>(Optional) Saves your entries in the configuration file.<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">Displaying 802.1X Statistics and Status<\/h2>\n\n\n\n<p>To display 802.1X statistics for all interfaces, use the&nbsp;<strong>show dot1x statistics<\/strong>&nbsp;privileged EXEC command. To display 802.1X statistics for a specific interface, use the&nbsp;<strong>show dot1x statistics<\/strong>&nbsp;<strong>interface<\/strong>&nbsp;<em>interface-id&nbsp;<\/em>privileged EXEC command.<\/p>\n\n\n\n<p>To display the 802.1X administrative and operational status for the switch, use the\u00a0<strong>show dot1x all\u00a0<\/strong>privileged EXEC command. To display the 802.1X administrative and operational status for a specific interface, use the\u00a0<strong>show dot1x interface<\/strong>\u00a0<em>interface-id<\/em>\u00a0privileged EXEC command.<\/p>\n\n\n\n<p>Ref: https:\/\/www.cisco.com\/c\/en\/us\/td\/docs\/switches\/lan\/catalyst4500\/12-2\/25ew\/configuration\/guide\/conf\/dot1x.html<\/p>\n","protected":false},"excerpt":{"rendered":"<p>802.1X defines 802.1X port-based authentication as a client-server based access control and authentication protocol that restricts unauthorized clients from connecting to a LAN through publicly accessible ports. An authentication server validates each supplicant (client) connected to an authenticator (network access switch) port before making available any services offered by the switch or the LAN. Until <a class=\"read-more\" href=\"https:\/\/SUMMALAI.COM\/?p=2995\">Read More<\/a><\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_bbp_topic_count":0,"_bbp_reply_count":0,"_bbp_total_topic_count":0,"_bbp_total_reply_count":0,"_bbp_voice_count":0,"_bbp_anonymous_reply_count":0,"_bbp_topic_count_hidden":0,"_bbp_reply_count_hidden":0,"_bbp_forum_subforum_count":0,"om_disable_all_campaigns":false,"_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"footnotes":""},"categories":[400,4,9,19],"tags":[580],"class_list":["post-2995","post","type-post","status-publish","format-standard","hentry","category-ccnp","category-cert","category-networks","category-router-switch","tag-802-1x-port-based-authentication"],"aioseo_notices":[],"_links":{"self":[{"href":"https:\/\/SUMMALAI.COM\/index.php?rest_route=\/wp\/v2\/posts\/2995","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/SUMMALAI.COM\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/SUMMALAI.COM\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/SUMMALAI.COM\/index.php?rest_route=\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/SUMMALAI.COM\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=2995"}],"version-history":[{"count":1,"href":"https:\/\/SUMMALAI.COM\/index.php?rest_route=\/wp\/v2\/posts\/2995\/revisions"}],"predecessor-version":[{"id":2996,"href":"https:\/\/SUMMALAI.COM\/index.php?rest_route=\/wp\/v2\/posts\/2995\/revisions\/2996"}],"wp:attachment":[{"href":"https:\/\/SUMMALAI.COM\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=2995"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/SUMMALAI.COM\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=2995"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/SUMMALAI.COM\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=2995"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}