--- 1/draft-ietf-radext-vlan-00.txt 2006-03-24 01:12:31.000000000 +0100 +++ 2/draft-ietf-radext-vlan-01.txt 2006-03-24 01:12:31.000000000 +0100 @@ -1,18 +1,18 @@ Network Working Group Paul Congdon INTERNET-DRAFT Mauricio Sanchez Category: Proposed Standard Hewlett-Packard Company - Bernard Aboba -20 February 2006 Microsoft Corporation + Bernard Aboba +22 March 2006 Microsoft Corporation - RADIUS VLAN and Priority Attributes + RADIUS Attributes for Virtual LAN and Priority Support By submitting this Internet-Draft, each author represents that any applicable patent or other IPR claims of which he or she is aware have been or will be disclosed, and any of which he or she becomes aware will be disclosed, in accordance with Section 6 of BCP 79. Internet-Drafts are working documents of the Internet Engineering Task Force (IETF), its areas, and its working groups. Note that other groups may also distribute working documents as Internet- Drafts. @@ -21,135 +21,136 @@ and may be updated, replaced, or obsoleted by other documents at any time. It is inappropriate to use Internet-Drafts as reference material or to cite them other than as "work in progress." The list of current Internet-Drafts can be accessed at http://www.ietf.org/ietf/1id-abstracts.txt. The list of Internet-Draft Shadow Directories can be accessed at http://www.ietf.org/shadow.html. - This Internet-Draft will expire on August 10, 2006. + This Internet-Draft will expire on September 10, 2006. Copyright Notice Copyright (C) The Internet Society 2006. Abstract - This document proposes additional attributes for dynamic VLAN - assignment and prioritization, for use by IEEE 802.1X authenticators. - These attributes are usable within either RADIUS or Diameter. + This document proposes additional RADIUS (Remote Authentication Dial + In User Service) attributes for dynamic Virtual LAN assignment and + prioritization, for use by IEEE 802.1X authenticators. These + attributes are usable within either RADIUS or Diameter. Table of Contents 1. Introduction .......................................... 3 1.1 Terminology ..................................... 3 1.2 Requirements Language ........................... 3 1.3 Attribute Interpretation ........................ 4 2. Attributes ............................................ 4 2.1 Egress-VLANID ................................... 4 2.2 Ingress-Filters ................................. 5 2.3 Egress-VLAN-Name ................................ 6 2.4 User-Priority-Table ............................. 7 3. Table of Attributes ................................... 8 -4. IANA Considerations ................................... 8 -5. Security Considerations ............................... 9 -6. References ............................................ 9 - 6.1 Normative References ............................ 9 - 6.2 Informative References .......................... 10 -ACKNOWLEDGMENTS .............................................. 11 -AUTHORS' ADDRESSES ........................................... 11 -Intellectual Property Statement............................... 12 +4. Diameter Considerations ............................... 9 +5. IANA Considerations ................................... 9 +6. Security Considerations ............................... 9 +7. References ............................................ 10 + 7.1 Normative References ............................ 10 + 7.2 Informative References .......................... 10 +ACKNOWLEDGMENTS .............................................. 12 +AUTHORS' ADDRESSES ........................................... 12 +Intellectual Property Statement............................... 13 Disclaimer of Validity........................................ 13 Full Copyright Statement ..................................... 13 1. Introduction IEEE 802.1X [IEEE-802.1X] provides "network port authentication" for IEEE 802 [IEEE-802] media, including Ethernet [IEEE-802.3], Token Ring and 802.11 wireless LANs [IEEE-802.11i]. - This document describes VLAN and re-prioritization attributes that - may prove useful for provisioning of access to IEEE 802 local area - networks. + This document describes Virtual LAN (VLAN) and re-prioritization + attributes that may prove useful for provisioning of access to IEEE + 802 local area networks with the Remote Authentication Dialin User + Service (RADIUS). While [RFC3580] enables support for VLAN assignment based on the tunnel attributes defined in [RFC2868], it does not provide support for a more complete set of VLAN functionality as defined by - [IEEE-802.1Q]. The VLAN attributes defined in this document provide + [IEEE-802.1Q]. The attributes defined in this document provide support within RADIUS analogous to the management variables supported - in [IEEE-802.1Q] and MIB objects defined in [RFC2674]. In addition, + in [IEEE-802.1Q] and MIB objects defined in [RFC4363]. In addition, this document enables support for a wider range of [IEEE-802.1X] configurations. 1.1. Terminology This document uses the following terms: Authenticator - An authenticator is an entity that requires authentication - from the supplicant. The authenticator may be connected to - the supplicant at the other end of a point-to-point LAN - segment or 802.11 wireless link. + The end of the link initiating EAP authentication. The term + authenticator is used in [RFC3748] and [IEEE-802.1X], and has the + same meaning in this document. -Authentication server - An authentication server is an entity that provides an - authentication service to an authenticator. This service - verifies from the credentials provided by the supplicant, the - claim of identity made by the supplicant. +backend authentication server + A backend authentication server is an entity that provides an + authentication service to an authenticator. When used, this server + typically executes EAP methods for the authenticator. This + terminology is also used in [IEEE-802.1X]. + +Network Access Server (NAS) + A device that provides an access service for a user to a network. Supplicant - A supplicant is an entity that is being authenticated by an - authenticator. The supplicant may be connected to the - authenticator at one end of a point-to-point LAN segment or - 802.11 wireless link. + The end of the link that responds to the authenticator in + [IEEE-802.1X]. 1.2. Requirements Language - In this document, several words are used to signify the requirements - of the specification. The key words "MUST", "MUST NOT", "REQUIRED", - "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", - and "OPTIONAL" in this document are to be interpreted as described in - [RFC2119]. + The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", + "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this + document are to be interpreted as described in [RFC2119]. 1.3. Attribute Interpretation If a NAS conforming to this specification receives an Access-Accept packet containing an attribute defined in this document which it cannot apply, it MUST act as though it had received an Access-Reject. Similarly, [RFC3576] requires that a NAS receiving a CoA-Request containing an unsupported attribute reply with a CoA-NAK. It is recommended that an Error-Cause attribute with value set to - Unsupported Attribute" (401) be included in the packet. As noted in + "Unsupported Attribute" (401) be included in the packet. As noted in [RFC3576], authorization changes are atomic so that this situation does not result in session termination and the pre-existing configuration remains unchanged. As a result, no accounting packets should be generated. 2. Attributes 2.1. Egress-VLANID Description The Egress-VLANID attribute represents an allowed IEEE 802 Egress VLANID for this port, indicating if the VLANID is allowed for tagged or untagged packets as well as the VLANID. Multiple Egress-VLANID attributes MAY be included in an Access- - Accept or CoA-Request packet; this attribute MUST NOT be sent - within an Access-Request, Access-Challenge, Access-Reject, - Disconnect-Request, Disconnect-ACK, Disconnect-NAK, CoA-ACK, or - CoA-NAK. Each attribute adds the specified VLAN to the list of - allowed egress VLANs for the port. + Request, Access-Accept or CoA-Request packet; this attribute MUST + NOT be sent within an Access-Challenge, Access-Reject, Disconnect- + Request, Disconnect-ACK, Disconnect-NAK, CoA-ACK, or CoA-NAK. + Each attribute adds the specified VLAN to the list of allowed + egress VLANs for the port. The Egress-VLANID attribute is shown below. The fields are transmitted from left to right: 0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Type | Length | Integer +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Integer | @@ -163,39 +164,40 @@ 6 Integer The Integer field is four octets in length. The format is described below: 0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ - | VLAN Tag | Pad | VLANID | + | Tag Indic. | Pad | VLANID | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ - The VLAN Tag field is one octet in length, and indicates whether - the frames on the VLAN are tagged (0x31) or untagged (0x32). The - Pad field is 12-bits in length and MUST be 0 (zero). The VLANID is - 12-bits in length and contains the [IEEE-802.1Q] VLAN VID value. + The Tag Indication field is one octet in length, and indicates + whether the frames on the VLAN are tagged (0x31) or untagged + (0x32). The Pad field is 12-bits in length and MUST be 0 (zero). + The VLANID is 12-bits in length and contains the [IEEE-802.1Q] + VLAN VID value. 2.2. Ingress-Filters Description The Ingress-Filters attribute corresponds to Ingress Filter per- port variable defined in [IEEE-802.1Q] clause 8.4.5. When the attribute has the value "Enabled", the set of VLANs that are allowed to ingress a port must match the set of VLANs that are allowed to egress a port. Only a single Ingress-Filters attribute - MAY be sent within an Access-Accept or CoA-Request packet; this - attribute MUST NOT be sent within an Access-Request, Access- + MAY be sent within an Access-Request, Access-Accept or CoA-Request + packet; this attribute MUST NOT be sent within an Access- Challenge, Access-Reject, Disconnect-Request, Disconnect-ACK, Disconnect-NAK, CoA-ACK, or CoA-NAK. The Ingress-Filters attribute is shown below. The fields are transmitted from left to right: 0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Type | Length | Integer @@ -228,44 +230,46 @@ to the Egress-VLANID attribute, except that the VLAN-ID itself is not specified or known; rather the VLAN name is used to identify the VLAN within the system. The Egress-VLAN-Name attribute contains two parts; the first part indicates if frames on the VLAN for this port are to be represented in tagged or untagged format, the second part is the VLAN name. Multiple Egress-VLAN-Name attributes MAY be included within an - Access-Accept or CoA-Request packet; this attribute MUST NOT be - sent within an Access-Request, Access-Challenge, Access-Reject, - Disconnect-Request, Disconnect-ACK, Disconnect-NAK, CoA-ACK, or - CoA-NAK. Each attribute adds the named VLAN to the list of - allowed egress VLANs for the port. The Egress-VLAN-Name attribute - is shown below. The fields are transmitted from left to right: + Access-Request, Access-Accept or CoA-Request packet; this + attribute MUST NOT be sent within an Access-Challenge, Access- + Reject, Disconnect-Request, Disconnect-ACK, Disconnect-NAK, CoA- + ACK, or CoA-NAK. Each attribute adds the named VLAN to the list + of allowed egress VLANs for the port. The Egress-VLAN-Name + attribute is shown below. The fields are transmitted from left to + right: 0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ - | Type | Length | VLAN Tag | String... + | Type | Length | Tag Indic. | String... +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Type TBD - Length >=4 - VLAN Tag - The VLAN tag field is one octet in length, and indicates whether - the frames on the VLAN are tagged (0x31) or untagged (0x32). + Tag Indication + + The Tag Indication field is one octet in length, and indicates + whether the frames on the VLAN are tagged (0x31) or untagged + (0x32). String The String field is at least one octet in length, and contains the the VLAN Name as defined in [IEEE-802.1Q] clause 12.10.2.1.3 (a). [RFC3629] UTF-8 encoded 10646 characters are RECOMMENDED, but a robust implementation SHOULD support the field as undistinguished octets. 2.4. User-Priority-Table @@ -275,24 +279,23 @@ [IEEE-802.1D] clause 7.5.1 discusses how to regenerate (or re-map) user priority on frames received at a port. This per-port configuration enables a bridge to cause the priority of received traffic at a port to be mapped to a particular priority. The management variables are described in clause 14.6.2.2. This attribute represents the IEEE 802 prioritization that will be applied to packets arriving at this port. There are eight possible user priorities, according to the [IEEE-802] standard. A single User-Priority-Table attribute MAY be included in an Access- - Accept or CoA-Request packet; this attribute MUST NOT be sent - within an Access-Request, Access-Challenge, Access-Reject, - Disconnect-Request, Disconnect-ACK, Disconnect-NAK, CoA-ACK, or - CoA-NAK. + Request, Access-Accept or CoA-Request packet; this attribute MUST + NOT be sent within an Access-Challenge, Access-Reject, Disconnect- + Request, Disconnect-ACK, Disconnect-NAK, CoA-ACK, or CoA-NAK. The User-Priority-Table attribute is shown below. The fields are transmitted from left to right: 0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Type | Length | String +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ String @@ -324,134 +327,155 @@ The [IEEE-8021.D] specification, Annex G, provides a useful description of traffic type - traffic class mappings. 3. Table of Attributes The following table provides a guide to which attributes may be found in which kinds of packets, and in what quantity. Access- Access- Access- Access- CoA- Request Accept Reject Challenge Req # Attribute - 0 0+ 0 0 0+ TBD Egress-VLANID - 0 0-1 0 0 0-1 TBD Ingress-Filters - 0 0+ 0 0 0+ TBD Egress-VLAN-Name - 0 0-1 0 0 0-1 TBD User-Priority-Table + 0+ 0+ 0 0 0+ TBD Egress-VLANID + 0-1 0-1 0 0 0-1 TBD Ingress-Filters + 0+ 0+ 0 0 0+ TBD Egress-VLAN-Name + 0-1 0-1 0 0 0-1 TBD User-Priority-Table The following table defines the meaning of the above table entries. 0 This attribute MUST NOT be present in the packet. 0+ Zero or more instances of this attribute MAY be present in the packet. 0-1 Zero or one instance of this attribute MAY be present in the packet. -4. IANA Considerations +4. Diameter Considerations + + Diameter needs to define identical attributes with the same Type + values. The attributes should be available as part of the NASREQ + application [RFC4005], as well as the Diameter EAP application + [RFC4072]. + +5. IANA Considerations This specification does not create any new registries. This document uses the RADIUS [RFC2865] namespace, see . Allocation of four updates for the section "RADIUS Attribute Types" is requested. The RADIUS attributes for which values are requested are: TBD - Egress-VLANID TBD - Ingress-Filters TBD - Egress-VLAN-Name TBD - User-Priority-Table -5. Security Considerations +6. Security Considerations - Since this document describes the use of RADIUS for purposes of - authentication and authorization, and accounting in IEEE 802.1X- - enabled networks, it is vulnerable to all of the threats that are - present in other RADIUS applications. For a discussion of these - threats, see [RFC2607], [RFC3162], [RFC3579], and [RFC3580]. + This specification describes the use of RADIUS for purposes of + authentication, authorization and accounting in networks supporting + [IEEE 802.1X]. Threats and security issues for this application are + described in [RFC3579] and [RFC3580]; security issues encountered in + roaming are described in [RFC2607]. This document specifies new attributes that can be included in - existing RADIUS packets. These packets are protected as described in - [RFC3579] and [RFC3576]; see those documents for a more detailed - description and related security considerations. + existing RADIUS packets, which are protected as described in + [RFC3579] and [RFC3576]. See those documents for a more detailed + description. - The security mechanisms in [RFC3579] and [RFC3576] are primarily - concerned with an attacker attempting to spoof or modify messages in - transit. They do not prevent an authorized RADIUS server or proxy - from inserting attributes with malicious intent. + The security mechanisms described in [RFC3579] and [RFC3576] are + focused on preventing an attacker from spoofing packets or modifying + packets in transit. They do not prevent an authorized RADIUS server + or proxy from inserting attributes with malicious intent. - For example, modifications to VLAN attributes may enable access to + VLAN attributes sent by a RADIUS server or proxy may enable access to unauthorized VLANs. These vulnerabilities can be limited by - performing authorization checks at the NAS. For instance, a NAS can - be configured to accept only certain VLAN-IDs from a given RADIUS + performing authorization checks at the NAS. For example, a NAS can + be configured to accept only certain VLANIDs from a given RADIUS server/proxy. -6. References + Similarly, an attacker gaining control of a RADIUS server or proxy + can modify the user priority table, causing either degradation of + quality of service (by downgrading user priority of packets arriving + at a port), or denial of service (by raising the level of priority of + traffic at multiple ports of a device, oversubscribing the switch or + link capabilities). -6.1. Normative references +7. References + +7.1. Normative references [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", RFC 2119, March, 1997. -[RFC2674] Bell, E., Smith, A., Langille, P., Rijhsinghani, A., - McCloghrie, K., Definitions of Managed Objects for Bridges - with Traffic Classes, Multicast Filtering and Virtual LAN - Extensions", RFC 2674, August 1999. - [RFC2865] Rigney, C., Rubens, A., Simpson, W. and S. Willens, "Remote Authentication Dial In User Service (RADIUS)", RFC 2865, June 2000. [RFC3575] Aboba, B., "IANA Considerations for RADIUS", RFC 3575, July 2003. [RFC3629] Yergeau, F., "UTF-8, a transformation of ISO 10646", RFC 2607, November 2003. +[RFC4363] Levi, D. and D. Harrington, "Definitions of Managed Objects + for Bridges with Traffic Classes, Multicast Filtering and + Virtual LAN Extensions", RFC 4363, January 2006. + [IEEE-802] IEEE Standards for Local and Metropolitan Area Networks: Overview and Architecture, ANSI/IEEE Std 802, 1990. [IEEE-802.1D] IEEE Standards for Local and Metropolitan Area Networks: Media Access Control (MAC) Bridges, IEEE Std 802.1D-2004, June 2004. [IEEE-802.1Q] IEEE Standards for Local and Metropolitan Area Networks: Draft Standard for Virtual Bridged Local Area Networks, P802.1Q-2003, January 2003. [IEEE-802.1X] IEEE Standards for Local and Metropolitan Area Networks: Port based Network Access Control, IEEE Std 802.1X-2004, August 2004. -6.2. Informative references +7.2. Informative references [RFC2607] Aboba, B. and J. Vollbrecht, "Proxy Chaining and Policy Implementation in Roaming", RFC 2607, June 1999. [RFC2868] Zorn, G., Leifer, D., Rubens, A., Shriver, J., Holdrege, M. and I. Goyret, "RADIUS Attributes for Tunnel Protocol Support", RFC 2868, June 2000. -[RFC3162] Aboba, B., Zorn, G. and D. Mitton, "RADIUS and IPv6", RFC - 3162, August 2001. - [RFC3576] Chiba, M., Dommety, G., Eklund, M., Mitton, D. and B. Aboba, "Dynamic Authorization Extensions to Remote Authentication Dial In User Service (RADIUS)", RFC 3576, July 2003. [RFC3579] Aboba, B. and P. Calhoun, "RADIUS Support for Extensible Authentication Protocol (EAP)", RFC 3579, September 2003. [RFC3580] Congdon, P., Aboba, B., Smith, A., Zorn, G., Roese, J., "IEEE 802.1X Remote Authentication Dial In User Service (RADIUS) Usage Guidelines", RFC3580, September 2003. +[RFC3748] Aboba, B., Blunk, L., Vollbrecht, J., Carlson, J. and H. + Levkowetz, "Extensible Authentication Protocol (EAP)", RFC + 3748, June 2004. + +[RFC4005] Calhoun, P., Zorn, G., Spence, D. and D. Mitton, "Diameter + Network Access Server Application", RFC 4005, August 2005. + +[RFC4072] Eronen, P., Hiller, T., and G. Zorn, "Diameter Extensible + Authentication Protocol (EAP) Application", RFC 4072, August + 2005. + [IEEE-802.3] ISO/IEC 8802-3 Information technology - Telecommunications and information exchange between systems - Local and metropolitan area networks - Common specifications - Part 3: Carrier Sense Multiple Access with Collision Detection (CSMA/CD) Access Method and Physical Layer Specifications, (also ANSI/IEEE Std 802.3- 1996), 1996. [IEEE-802.11] Information technology - Telecommunications and information