IEEE 802.1X VLAN Assignment

IEEE 802.1X VLAN Assignment

Last Updated: July 17, 2012

The IEEE 802.1X VLAN Assignment feature is automatically enabled when IEEE 802.1X authentication is configured for an access port, which allows the RADIUS server to send a VLAN assignment to the device port. This assignment configures the device port so that network access can be limited for certain users.

Finding Feature Information

Your software release may not support all the features documented in this module. For the latest feature information and caveats, see the release notes for your platform and software release. To find information about the features documented in this module, and to see a list of the releases in which each feature is supported, see the Feature Information Table at the end of this document.

Use Cisco Feature Navigator to find information about platform support and Cisco software image support. To access Cisco Feature Navigator, go to www.cisco.com/go/cfn. An account on Cisco.com is not required.

Prerequisites for IEEE 802.1X VLAN Assignment

The following tasks must be completed before implementing the IEEE 802.1X VLAN Assignment feature:

  • IEEE 802.1X must be enabled on the device port.
  • The device must have a RADIUS configuration and be connected to the Cisco secure access control server (ACS). You should understand the concepts of the RADIUS protocol and have an understanding of how to create and apply access control lists (ACLs).
  • EAP support must be enabled on the RADIUS server.
  • You must configure the IEEE 802.1X supplicant to send an EAP-logoff (Stop) message to the switch when the user logs off. If you do not configure the IEEE 802.1X supplicant, an EAP-logoff message is not sent to the switch and the accompanying accounting Stop message is not sent to the authentication server. See the Microsoft Knowledge Base article at the location http://support.microsoft.com and set the SupplicantMode registry to 3 and the AuthMode registry to 1.
  • Authentication, authorization, and accounting (AAA) must be configured on the port for all network-related service requests. The authentication method list must be enabled and specified. A method list describes the sequence and authentication method to be queried to authenticate a user. See the IEEE 802.1X Authenticator feature module for information.
  • The port must be successfully authenticated.

The IEEE 802.1X VLAN Assignment feature is available only on Cisco 800, 870, 1800, 2800, and 3800 series integrated switching routers (ISRs) that support switch ports.

The fixed-configuration Cisco 1800 series router platforms and the Cisco 870 series routers have integrated 4-port and 8-port switches:

The following cards or modules support switch ports:

  • High-speed WAN interface cards (HWICs):
    • HWIC-4ESW
    • HWICD-9ESW
  • EtherSwitch Network Modules:
    • NM-16ESW
    • NMD-36ESW

Note


Not all Cisco ISR routers support all the components listed. For information about module compatibility with a specific router platform, see Cisco EtherSwitch Modules Comparison.

To determine whether your router has switch ports, use the show interfaces switchport command.

Restrictions for IEEE 802.1X VLAN Assignment

  • The IEEE 802.1X VLAN Assignment feature is available only on a Cisco ISR switch port.
  • The device port is always assigned to the configured access VLAN when any of the following conditions occurs:
    • No VLAN is supplied by the RADIUS server.
    • The VLAN information from the RADIUS server is not valid.
    • IEEE 802.1X authentication is disabled on the port.
    • The port is in the force authorized, force unauthorized, unauthorized, or shutdown state.

Note


An access VLAN is a VLAN assigned to an access port. All packets sent from or received on this port belong to this VLAN.
  • Assignment to the configured access VLAN prevents ports from appearing unexpectedly in an inappropriate VLAN because of a configuration error. Examples of configuration errors include the following:
    • A nonexistent or malformed VLAN ID
    • Attempted assignment to a voice VLAN ID
  • When IEEE 802.1X authentication is enabled on a port, you cannot configure a port VLAN that is equal to a voice VLAN.
  • The IEEE 802.1X authentication with VLAN assignment feature is not supported on trunk ports, dynamic ports, or with dynamic-access port assignment through a VLAN Membership Policy Server (VMPS).
  • If the multihost mode is enabled on an IEEE 802.1X port, all hosts are placed in the same VLAN (specified by the RADIUS server) as the first authenticated host.
  • If an IEEE 802.1X port is authenticated and put in the RADIUS server-assigned VLAN, any change to the port access VLAN configuration does not take effect.
  • This feature does not support standard ACLs on the switch port.

Information About IEEE 802.1X VLAN Assignment

Configuring Authorization

The AAA authorization feature is used to determine what a user can and cannot do. When AAA authorization is enabled, the network access server uses information retrieved from the user's profile, which is located either in the local user database or on the security server, to configure the user's session. Once this is done, the user is granted access to a requested service only if the information in the user profile allows it.

IEEE 802.1X Authentication with VLAN Assignment

In Cisco IOS Release 12.4(11)T and later releases, the device ports support IEEE 802.1X authentication with VLAN assignment. After successful IEEE 802.1X authentication of a port, the RADIUS server sends the VLAN assignment to configure the device port.

The RADIUS server database maintains the username-to-VLAN mappings, assigning the VLAN based on the username of the supplicant connected to the device port.

How to Configure IEEE 802.1X VLAN Assignment

Enabling AAA Authorization for VLAN Assignment

AAA authorization limits the services available to a user. When AAA authorization is enabled, the device uses information retrieved from the user's profile, which is in the local user database or on the security server, to configure the user's session. The user is granted access to a requested service only if the information in the user profile allows it.

SUMMARY STEPS

1.    enable

2.    configure terminal

3.    aaa new-model

4.    aaa authorization network radius if-authenticated

5.   aaa authorization exec radius if-authenticated

6.   end


DETAILED STEPS
 Command or ActionPurpose
Step 1
enable


Example:

Device> enable

 

Enables privileged EXEC mode.

  • Enter your password if prompted.
 
Step 2
configure terminal


Example:

Device# configure terminal

 

Enters global configuration mode.

 
Step 3
aaa new-model


Example:

Device(config)# aaa new-model

 

Enables AAA.

 
Step 4
aaa authorization network radius if-authenticated


Example:

Device(config)# aaa authorization network radius if-authenticated

 

Configures the device for user RADIUS authorization for all network-related service requests. RADIUS authorization succeeds if the user has authenticated.

 
Step 5
aaa authorization exec radius if-authenticated


Example:

Device(config)# aaa authorization exec radius if-authenticated

 

Configures the device for user RADIUS authorization if the user has privileged EXEC access. RADIUS authorization succeeds if the user has authenticated.

 
Step 6
end


Example:

Device(config)# end

 

Exits global configuration mode and enters privileged EXEC mode.

 

Enabling IEEE 802.1X Authentication and Authorization

SUMMARY STEPS

1.    enable

2.    configure terminal

3.    aaa new-model

4.    aaa authentication dot1x {default | listname} method1 [method2...]

5.    dot1x system-auth-control

6.    identity profile default

7.    interface type slot/port

8.    dot1x port-control {auto | force-authorized | force-unauthorized}

  • auto --Enables IEEE 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 changes from down to up or when an EAPOL-start frame is received. The router requests the identity of the supplicant and begins relaying authentication messages between the supplicant and the authentication server. Each supplicant attempting to access the network is uniquely identified by the router by using the supplicant MAC address.
  • force-authorized ---Disables IEEE 802.1X authentication and causes the port to change to the authorized state without any authentication exchange required. The port sends and receives normal traffic without IEEE 802.1X-based authentication of the client. This is the default setting.
  • force-unauthorized --Causes the port to remain in the unauthorized state, ignoring all attempts by the supplicant to authenticate. The router cannot provide authentication services to the supplicant through the port.

9.    end

10.    show dot1x


DETAILED STEPS
 Command or ActionPurpose
Step 1
enable


Example:

Device> enable

 

Enables privileged EXEC mode.

  • Enter your password if prompted.
 
Step 2
configure terminal


Example:

Device# configure terminal

 

Enters global configuration mode.

 
Step 3
aaa new-model


Example:

Device(config)# aaa new-model

 

Enables AAA.

 
Step 4
aaa authentication dot1x {default | listname} method1 [method2...]


Example:

Device(config)# aaa authentication dot1x default group radius

 

Creates a series of authentication methods that are used to determine user privilege to access the privileged command level so that the device can communicate with the AAA server.

 
Step 5
dot1x system-auth-control


Example:

Device(config)# dot1x system-auth-control

 

Globally enables 802.1X port-based authentication.

 
Step 6
identity profile default


Example:

Device(config)# identity profile default

 

Creates an identity profile and enters dot1x profile configuration mode.

 
Step 7
interface type slot/port


Example:

Device(config-identity-prof)# interface fastethernet 0/1

 

Enters interface configuration mode and specifies the interface to be enabled for 802.1X authentication.

 
Step 8
dot1x port-control {auto | force-authorized | force-unauthorized}
  • auto --Enables IEEE 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 changes from down to up or when an EAPOL-start frame is received. The router requests the identity of the supplicant and begins relaying authentication messages between the supplicant and the authentication server. Each supplicant attempting to access the network is uniquely identified by the router by using the supplicant MAC address.
  • force-authorized ---Disables IEEE 802.1X authentication and causes the port to change to the authorized state without any authentication exchange required. The port sends and receives normal traffic without IEEE 802.1X-based authentication of the client. This is the default setting.
  • force-unauthorized --Causes the port to remain in the unauthorized state, ignoring all attempts by the supplicant to authenticate. The router cannot provide authentication services to the supplicant through the port.


Example:

Device(config-if)# dot1x port-control auto

 

Enables 802.1X port-based authentication on the interface.

 
Step 9
end


Example:

Device(config-if)# end

 

Exits interface configuration mode and enters privileged EXEC mode.

 
Step 10
show dot1x


Example:

Device# show dot1x

 

Shows that 802.1X authentication has been configured on the device.

 

Specifying an Authorized VLAN in the RADIUS Server Database

The Internet Engineering Task Force (IETF) draft standard specifies a method for communicating vendor-specific information between the device and the RADIUS server by using the vendor-specific attribute (attribute 26). Vendor-specific attributes (VSAs) allow vendors to support their own extended attributes not suitable for general use. The Cisco RADIUS implementation supports one vendor-specific option by using the format recommended in the specification.

  • You must assign the following vendor-specific tunnel attributes in the RADIUS server database. The RADIUS server must return these attributes to the device:
    • [64] Tunnel-Type = VLAN
    • [65] Tunnel-Medium-Type = 802
    • [81] Tunnel-Private-Group-ID = VLAN name or VLAN ID

Attribute [64] must contain the value "VLAN" (type 13). Attribute [65] must contain the value "802" (type 6). Attribute [81] specifies the VLAN name or VLAN ID assigned to the IEEE 802.1X-authenticated user.

Configuration Example for IEEE 802.1X VLAN Assignment

Example: Enabling AAA Authorization for VLAN Assignment

The following example shows how to enable AAA Authorization for VLAN assignment:

Device> enable
Device# configure terminal
Device(config)# aaa new-model
Device(config)# aaa authorization network radius if-authenticated
Device(config)# aaa authorization exec radius if-authenticated
Device(config)# end

Example: Enabling 802.1X Authentication

The following example shows how to enable 802.1X authentication on a device:

Device# configure terminal
Device(config)# aaa new-model
Device(config)# aaa authentication dot1x default group radius group radius
Device(config)# dot1x system-auth-control
Device(config)# interface fastethernet 1
Device(config-if)# dot1x port-control auto

The following show dot1x command output shows that 802.1X authentication has been configured on a device:

Device# show dot1x all
Sysauthcontrol              Enabled
Dot1x Protocol Version            2
Dot1x Info for FastEthernet1
-----------------------------------
PAE                       = AUTHENTICATOR
PortControl               = AUTO
ControlDirection          = Both 
HostMode                  = MULTI_HOST
ReAuthentication          = Enabled
QuietPeriod               = 600
ServerTimeout             = 60
SuppTimeout               = 30
ReAuthPeriod              = 1800 (Locally configured)
ReAuthMax                 = 2
MaxReq                    = 3
TxPeriod                  = 60
RateLimitPeriod           = 60

Example: Specifying an Authorized VLAN in the RADIUS Server Database

This example shows how to specify an authorized VLAN in the RADIUS server by assigning vendor-specific tunnel attributes:

cisco-avpair= "tunnel-type(#64)=VLAN(13)"
cisco-avpair= "tunnel-medium-type(#65)=802 media(6)"
cisco-avpair= "tunnel-private-group-ID(#81)=vlanid"

Additional References

Standards

Standard

Title

IEEE 802.1X

Port Based Network Access Control

MIBs

MIB

MIBs Link

  • IEEE8021-PAE-MIB
  • Cisco-PAE-MIB

To locate and download MIBs for selected platforms, Cisco IOS releases, and feature sets, use Cisco MIB Locator found at the following URL:

http://www.cisco.com/go/mibs

RFCs

RFC

Title

RFC 3580

IEEE 802.1X Remote Authentication Dial In User Service (RADIUS) Usage Guidelines

Technical Assistance

Description

Link

The Cisco Support and Documentation website provides online resources to download documentation, software, and tools. Use these resources to install and configure the software and to troubleshoot and resolve technical issues with Cisco products and technologies. Access to most tools on the Cisco Support and Documentation website requires a Cisco.com user ID and password.

http://www.cisco.com/cisco/web/support/index.html

Feature Information for IEEE 802.1X VLAN Assignment

The following table provides release information about the feature or features described in this module. This table lists only the software release that introduced support for a given feature in a given software release train. Unless noted otherwise, subsequent releases of that software release train also support that feature.

Use Cisco Feature Navigator to find information about platform support and Cisco software image support. To access Cisco Feature Navigator, go to www.cisco.com/go/cfn. An account on Cisco.com is not required.

Table 1Feature Information for IEEE 802.1X VLAN Assignment
Feature Name Releases Feature Information

IEEE Information for IEEE 802.1X VLAN Assignment

12.4(11)T

The IEEE 802.1X VLAN Assignment feature is automatically enabled when IEEE 802.1X authentication is configured for an access port, which allows the RADIUS server to send a VLAN assignment to the device port. This assignment configures the device port so that network access can be limited for certain users.

Cisco and the Cisco logo are trademarks or registered trademarks of Cisco and/or its affiliates in the U.S. and other countries. To view a list of Cisco trademarks, go to this URL: www.cisco.com/go/trademarks. Third-party trademarks mentioned are the property of their respective owners. The use of the word partner does not imply a partnership relationship between Cisco and any other company. (1110R)

Any Internet Protocol (IP) addresses and phone numbers used in this document are not intended to be actual addresses and phone numbers. Any examples, command display output, network topology diagrams, and other figures included in the document are shown for illustrative purposes only. Any use of actual IP addresses or phone numbers in illustrative content is unintentional and coincidental.

© 2012 Cisco Systems, Inc. All rights reserved.