1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445
|
<pre>Network Working Group R. Droms
Request for Comments: 4014 J. Schnizlein
Category: Standards Track Cisco Systems
February 2005
<span class="h1">Remote Authentication Dial-In User Service (RADIUS)</span>
<span class="h1">Attributes Suboption for the</span>
<span class="h1">Dynamic Host Configuration Protocol (DHCP)</span>
Relay Agent Information Option
Status of This Memo
This document specifies an Internet standards track protocol for the
Internet community, and requests discussion and suggestions for
improvements. Please refer to the current edition of the "Internet
Official Protocol Standards" (STD 1) for the standardization state
and status of this protocol. Distribution of this memo is unlimited.
Copyright Notice
Copyright (C) The Internet Society (2005).
Abstract
The RADIUS Attributes suboption enables a network element to pass
identification and authorization attributes received during RADIUS
authentication to a DHCP server. When the DHCP server receives a
message from a relay agent containing a RADIUS Attributes suboption,
it extracts the contents of the suboption and uses that information
in selecting configuration parameters for the client.
<span class="h2"><a class="selflink" id="section-1" href="#section-1">1</a>. Introduction and Background</span>
The RADIUS Attributes suboption for the DHCP Relay Agent option
provides a way in which a NAS can pass attributes obtained from a
RADIUS server to a DHCP server [<a href="#ref-1" title=""Dynamic Host Configuration Protocol"">1</a>]. IEEE 802.1X [<a href="#ref-2" title=""Local and Metropolitan Area Networks: Port based Network Access Control"">2</a>] is an example of
a mechanism through which a NAS such as a switch or a wireless LAN
access point can authenticate the identity of the user of a device
before providing layer 2 network access with RADIUS as the
Authentication Service, as specified in <a href="./rfc3580">RFC 3580</a> [<a href="#ref-8" title=""IEEE 802.1X Remote Authentication Dial In User Service (RADIUS) Usage Guidelines"">8</a>]. In IEEE 802.1X
authenticated access, a device must first exchange some
authentication credentials with the NAS. The NAS then supplies these
credentials to a RADIUS server, which eventually sends either an
Access-Accept or an Access-Reject in response to an Access-Request.
The NAS, based on the reply of the RADIUS server, then allows or
denies network access to the requesting device.
<span class="grey">Droms & Schnizlein Standards Track [Page 1]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-2" ></span>
<span class="grey"><a href="./rfc4014">RFC 4014</a> RADIUS Attributes Suboption February 2005</span>
Figure 1 summarizes the message exchange among the participants in
IEEE 802.1X authentication.
+-----------------+
|Device requesting|
| network access |
+-----------------+
| ^
| |
(1) Request for access
| |
| (4) Success/Failure
v |
+-----------------+
| NAS |
|(IEEE 802.1X and |
|DHCP relay agent}|
+-----------------+
| ^
| |
(2) Request for authentication
| |
| (3) Access-Accept/Reject
v |
+-----------------+
| RADIUS |
| Server |
+-----------------+
Figure 1
The access device acts as an IEEE 802.1X Authenticator and adds a
DHCP relay agent option that includes a RADIUS Attributes suboption
to DHCP messages. At the successful conclusion of IEEE 802.1X
authentication, a RADIUS Access-Accept provides attributes for
service authorizations to the NAS. The NAS stores these attributes
locally. When the NAS subsequently relays DHCP messages from the
network device, the NAS adds these attributes in a RADIUS Attributes
suboption. The RADIUS Attributes suboption is another suboption of
the Relay Agent Information option [<a href="#ref-5" title=""DHCP Relay Agent Information Option"">5</a>].
The RADIUS Attributes suboption described in this document is not
limited to use in conjunction with IEEE 802.1X and can be used to
carry RADIUS attributes obtained by the relay agent for any reason.
That is, the option is not limited to use with IEEE 802.1X but is
constrained by RADIUS semantics (see <a href="#section-4">Section 4</a>).
<span class="grey">Droms & Schnizlein Standards Track [Page 2]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-3" ></span>
<span class="grey"><a href="./rfc4014">RFC 4014</a> RADIUS Attributes Suboption February 2005</span>
The scope of applicability of this specification is such that robust
interoperability is only guaranteed for RADIUS service
implementations that exist within the same scope as does the DHCP
service implementation, i.e., within a single, localized
administrative domain. Global interoperability of this
specification, across administrative domains, is not required.
<span class="h2"><a class="selflink" id="section-2" href="#section-2">2</a>. Terminology</span>
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 <a href="./rfc2119">RFC 2119</a> [<a href="#ref-3" title=""Key words for use in RFCs to Indicate Requirement Levels"">3</a>].
Within this specification, the use of the key words "MUST", "MUST
NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT",
"RECOMMENDED", "MAY", and "OPTIONAL" is with respect to RADIUS
clients and servers that implement the optional features of this
specification. The use of these key words does not create any
normative requirements outside of that scope, and does not modify the
base RADIUS specifications, such as <a href="./rfc2865">RFC 2865</a> [<a href="#ref-4" title=""Remote Authentication Dial In User Service (RADIUS)"">4</a>].
<span class="h3"><a class="selflink" id="section-2.1" href="#section-2.1">2.1</a>. DHCP Terminology</span>
The following terms are used as defined in <a href="./rfc2131">RFC 2131</a> and <a href="./rfc3046">RFC 3046</a>:
DHCP relay agent, DHCP server, DHCP client.
<span class="h3"><a class="selflink" id="section-2.2" href="#section-2.2">2.2</a>. RADIUS Terminology</span>
The following terms are used in conjunction with RADIUS:
RADIUS server: A RADIUS server is responsible for receiving user
connection requests, authenticating the user, and then returning
all configuration information necessary for the client to deliver
service to the user.
Attribute: A Type-Length-Value tuple encapsulating data elements as
defined in <a href="./rfc2865">RFC 2865</a> [<a href="#ref-4" title=""Remote Authentication Dial In User Service (RADIUS)"">4</a>].
NAS: A Network Access Server (NAS) provides access to the network
and operates as a client of RADIUS. The client is responsible for
passing user information to designated RADIUS servers and then
acting on the response that is returned. Unlike a traditional
dial NAS, the NAS considered here may not have a protocol such as
PPP through which it can pass configuration information from the
RADIUS attributes to the client.
<span class="grey">Droms & Schnizlein Standards Track [Page 3]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-4" ></span>
<span class="grey"><a href="./rfc4014">RFC 4014</a> RADIUS Attributes Suboption February 2005</span>
<span class="h3"><a class="selflink" id="section-2.3" href="#section-2.3">2.3</a>. IEEE 802.1X Terminology</span>
The following terms are used as defined in the IEEE 802.1X protocol:
Authenticator, Supplicant.
<span class="h2"><a class="selflink" id="section-3" href="#section-3">3</a>. RADIUS Attributes Suboption Format</span>
The RADIUS Attributes suboption is a new suboption for the DHCP Relay
Agent option.
The format of the RADIUS Attributes suboption is as follows:
SubOpt Len RADIUS attributes
code
+-------+-----+------+------+------+------+--...-+------+
| 7 | N | o1 | o2 | o3 | o4 | | oN |
+-------+-----+------+------+------+------+--...-+------+
The RADIUS attributes are encoded according to the encoding rules in
<a href="./rfc2865">RFC 2865</a>, in octets o1...oN.
The DHCP relay agent truncates the RADIUS attributes to fit in the
RADIUS Attributes suboption.
<span class="h2"><a class="selflink" id="section-4" href="#section-4">4</a>. DHCP Relay Agent Behavior</span>
When the DHCP relay agent receives a DHCP message from the client, it
MAY append a DHCP Relay Agent Information option containing the
RADIUS Attributes suboption, along with any other suboptions it is
configured to supply. The RADIUS Attributes suboption MUST only
contain the attributes provided in the RADIUS Access/Accept message.
The DHCP relay agent MUST NOT add more than one RADIUS Attributes
suboption in a message.
The relay agent MUST include the User-Name and Framed-Pool attributes
in the RADIUS Attributes suboption, if they are available, and MAY
include other attributes.
To avoid dependencies between the address allocation and other state
information between the RADIUS server and the DHCP server, the DHCP
relay agent SHOULD include only the attributes in the table below in
an instance of the RADIUS Attributes suboption. The table, based on
the analysis in <a href="./rfc3580">RFC 3580</a> [<a href="#ref-8" title=""IEEE 802.1X Remote Authentication Dial In User Service (RADIUS) Usage Guidelines"">8</a>], lists attributes that MAY be included:
<span class="grey">Droms & Schnizlein Standards Track [Page 4]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-5" ></span>
<span class="grey"><a href="./rfc4014">RFC 4014</a> RADIUS Attributes Suboption February 2005</span>
# Attribute
--- ---------
1 User-Name (<a href="./rfc2865">RFC 2865</a> [<a href="#ref-3" title=""Key words for use in RFCs to Indicate Requirement Levels"">3</a>])
6 Service-Type (<a href="./rfc2865">RFC 2865</a>)
26 Vendor-Specific (<a href="./rfc2865">RFC 2865</a>)
27 Session-Timeout (<a href="./rfc2865">RFC 2865</a>)
88 Framed-Pool (<a href="./rfc2869">RFC 2869</a>)
100 Framed-IPv6-Pool (<a href="./rfc3162">RFC 3162</a> [<a href="#ref-7" title=""RADIUS and IPv6"">7</a>])
<span class="h2"><a class="selflink" id="section-5" href="#section-5">5</a>. DHCP Server Behavior</span>
When the DHCP server receives a message from a relay agent containing
a RADIUS Attributes suboption, it extracts the contents of the
suboption and uses that information in selecting configuration
parameters for the client. If the relay agent relays RADIUS
attributes not included in the table in <a href="#section-4">Section 4</a>, the DHCP server
SHOULD ignore them. If the DHCP server uses attributes not specified
here, it might result in side effects not anticipated in the existing
RADIUS specifications.
<span class="h2"><a class="selflink" id="section-6" href="#section-6">6</a>. DHCP Client Behavior</span>
Relay agent options are exchanged only between relay agents and the
DHCP server, so DHCP clients are never aware of their use.
<span class="h2"><a class="selflink" id="section-7" href="#section-7">7</a>. Security Considerations</span>
Message authentication in DHCP for intradomain use where the
out-of-band exchange of a shared secret is feasible is defined in <a href="./rfc3118">RFC</a>
<a href="./rfc3118">3118</a> [<a href="#ref-6" title=""Authentication for DHCP Messages"">6</a>]. Potential exposures to attack are discussed in <a href="#section-7">section 7</a>
of the DHCP protocol specification in <a href="./rfc2131">RFC 2131</a> [<a href="#ref-1" title=""Dynamic Host Configuration Protocol"">1</a>].
The DHCP Relay Agent option depends on a trusted relationship between
the DHCP relay agent and the server, as described in section 5 of <a href="./rfc3046">RFC</a>
<a href="./rfc3046">3046</a> [<a href="#ref-5" title=""DHCP Relay Agent Information Option"">5</a>]. Although the introduction of fraudulent relay-agent
options can be prevented by a perimeter defense that blocks these
options unless the relay agent is trusted, a deeper defense using the
authentication option for relay agent options [<a href="#ref-9" title=""The Authentication Suboption for the DHCP Relay Agent Option"">9</a>] or IPsec [<a href="#ref-10" title=""Authentication of DHCP Relay Agent Options Using IPsec"">10</a>]
SHOULD be deployed as well.
<span class="h2"><a class="selflink" id="section-8" href="#section-8">8</a>. IANA Considerations</span>
IANA has assigned the value of 7 for the DHCP Relay Agent Information
option suboption code for this suboption. This document does not
define any new namespaces or other constants for which IANA must
maintain a registry.
<span class="grey">Droms & Schnizlein Standards Track [Page 5]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-6" ></span>
<span class="grey"><a href="./rfc4014">RFC 4014</a> RADIUS Attributes Suboption February 2005</span>
<span class="h2"><a class="selflink" id="section-9" href="#section-9">9</a>. Acknowledgements</span>
Expert advice from Bernard Aboba, Paul Funk, David Nelson, Ashwin
Palekar, and Greg Weber on avoiding RADIUS entanglements is
gratefully acknowledged.
<span class="h2"><a class="selflink" id="section-10" href="#section-10">10</a>. References</span>
<span class="h3"><a class="selflink" id="section-10.1" href="#section-10.1">10.1</a>. Normative References</span>
[<a id="ref-1">1</a>] Droms, R., "Dynamic Host Configuration Protocol", <a href="./rfc2131">RFC 2131</a>,
March 1997.
[<a id="ref-2">2</a>] Institute of Electrical and Electronics Engineers, "Local and
Metropolitan Area Networks: Port based Network Access Control",
IEEE Standard 802.1X, March 2001.
[<a id="ref-3">3</a>] Bradner, S., "Key words for use in RFCs to Indicate Requirement
Levels", <a href="https://www.rfc-editor.org/bcp/bcp14">BCP 14</a>, <a href="./rfc2119">RFC 2119</a>, March 1997.
[<a id="ref-4">4</a>] Rigney, C., Willens, S., Rubens, A., and W. Simpson, "Remote
Authentication Dial In User Service (RADIUS)", <a href="./rfc2865">RFC 2865</a>, June
2000.
[<a id="ref-5">5</a>] Patrick, M., "DHCP Relay Agent Information Option", <a href="./rfc3046">RFC 3046</a>,
January 2001.
<span class="h3"><a class="selflink" id="section-10.2" href="#section-10.2">10.2</a>. Informative References</span>
[<a id="ref-6">6</a>] Droms, R. and W. Arbaugh, "Authentication for DHCP Messages",
<a href="./rfc3118">RFC 3118</a>, June 2001.
[<a id="ref-7">7</a>] Aboba, B., Zorn, G., and D. Mitton, "RADIUS and IPv6", <a href="./rfc3162">RFC 3162</a>,
August 2001.
[<a id="ref-8">8</a>] Congdon, P., Aboba, B., Smith, A., Zorn, G., and J. Roese, "IEEE
802.1X Remote Authentication Dial In User Service (RADIUS) Usage
Guidelines", <a href="./rfc3580">RFC 3580</a>, September 2003.
[<a id="ref-9">9</a>] Stapp, M. and T. Lemon, "The Authentication Suboption for the
DHCP Relay Agent Option", Work in Progress, October 2003.
[<a id="ref-10">10</a>] Droms, R., "Authentication of DHCP Relay Agent Options Using
IPsec", Work in Progress, September 2003.
<span class="grey">Droms & Schnizlein Standards Track [Page 6]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-7" ></span>
<span class="grey"><a href="./rfc4014">RFC 4014</a> RADIUS Attributes Suboption February 2005</span>
Authors' Addresses
Ralph Droms
Cisco Systems
1414 Massachusetts Avenue
Boxborough, MA 01719
USA
EMail: rdroms@cisco.com
John Schnizlein
Cisco Systems
9123 Loughran Road
Fort Washington, MD 20744
USA
EMail: jschnizl@cisco.com
<span class="grey">Droms & Schnizlein Standards Track [Page 7]</span></pre>
<hr class='noprint'/><!--NewPage--><pre class='newpage'><span id="page-8" ></span>
<span class="grey"><a href="./rfc4014">RFC 4014</a> RADIUS Attributes Suboption February 2005</span>
Full Copyright Statement
Copyright (C) The Internet Society (2005).
This document is subject to the rights, licenses and restrictions
contained in <a href="https://www.rfc-editor.org/bcp/bcp78">BCP 78</a>, and except as set forth therein, the authors
retain all their rights.
This document and the information contained herein are provided on an
"AS IS" basis and THE CONTRIBUTOR, THE ORGANIZATION HE/SHE REPRESENTS
OR IS SPONSORED BY (IF ANY), THE INTERNET SOCIETY AND THE INTERNET
ENGINEERING TASK FORCE DISCLAIM ALL WARRANTIES, EXPRESS OR IMPLIED,
INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE
INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED
WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
Intellectual Property
The IETF takes no position regarding the validity or scope of any
Intellectual Property Rights or other rights that might be claimed to
pertain to the implementation or use of the technology described in
this document or the extent to which any license under such rights
might or might not be available; nor does it represent that it has
made any independent effort to identify any such rights. Information
on the IETF's procedures with respect to rights in IETF Documents can
be found in <a href="https://www.rfc-editor.org/bcp/bcp78">BCP 78</a> and <a href="https://www.rfc-editor.org/bcp/bcp79">BCP 79</a>.
Copies of IPR disclosures made to the IETF Secretariat and any
assurances of licenses to be made available, or the result of an
attempt made to obtain a general license or permission for the use of
such proprietary rights by implementers or users of this
specification can be obtained from the IETF on-line IPR repository at
<a href="http://www.ietf.org/ipr">http://www.ietf.org/ipr</a>.
The IETF invites any interested party to bring to its attention any
copyrights, patents or patent applications, or other proprietary
rights that may cover technology that may be required to implement
this standard. Please address the information to the IETF at ietf-
ipr@ietf.org.
Acknowledgement
Funding for the RFC Editor function is currently provided by the
Internet Society.
Droms & Schnizlein Standards Track [Page 8]
</pre>
|