draft-ietf-dhc-dhcpv6-unknown-msg-02.txt   draft-ietf-dhc-dhcpv6-unknown-msg-03.txt 
DHC Working Group Y. Cui DHC Working Group Y. Cui
Internet-Draft Q. Sun Internet-Draft Q. Sun
Updates: RFC3315 (if approved) Tsinghua University Updates: RFC3315 (if approved) Tsinghua University
Intended status: Standards Track T. Lemon Intended status: Standards Track T. Lemon
Expires: March 29, 2014 Nominum, Inc. Expires: May 16, 2014 Nominum, Inc.
September 25, 2013 November 12, 2013
Handling Unknown DHCPv6 Messages Handling Unknown DHCPv6 Messages
draft-ietf-dhc-dhcpv6-unknown-msg-02 draft-ietf-dhc-dhcpv6-unknown-msg-03
Abstract Abstract
Dynamic Host Configuration Protocol version 6 (DHCPv6) isn't specific Dynamic Host Configuration Protocol version 6 (DHCPv6) isn't specific
about handling messages with unknown types. This memo describes the about handling messages with unknown types. This memo describes the
problems and defines how a DHCPv6 function node should behave in this problems and defines how a DHCPv6 function node should behave in this
case. This document updates RFC3315. case. This document updates RFC 3315.
Status of this Memo Status of This Memo
This Internet-Draft is submitted in full conformance with the This Internet-Draft is submitted in full conformance with the
provisions of BCP 78 and BCP 79. provisions of BCP 78 and BCP 79.
Internet-Drafts are working documents of the Internet Engineering Internet-Drafts are working documents of the Internet Engineering
Task Force (IETF). Note that other groups may also distribute Task Force (IETF). Note that other groups may also distribute
working documents as Internet-Drafts. The list of current Internet- working documents as Internet-Drafts. The list of current Internet-
Drafts is at http://datatracker.ietf.org/drafts/current/. Drafts is at http://datatracker.ietf.org/drafts/current/.
Internet-Drafts are draft documents valid for a maximum of six months Internet-Drafts are draft documents valid for a maximum of six months
and may be updated, replaced, or obsoleted by other documents at any and may be updated, replaced, or obsoleted by other documents at any
time. It is inappropriate to use Internet-Drafts as reference time. It is inappropriate to use Internet-Drafts as reference
material or to cite them other than as "work in progress." material or to cite them other than as "work in progress."
This Internet-Draft will expire on March 29, 2014. This Internet-Draft will expire on May 16, 2014.
Copyright Notice Copyright Notice
Copyright (c) 2013 IETF Trust and the persons identified as the Copyright (c) 2013 IETF Trust and the persons identified as the
document authors. All rights reserved. document authors. All rights reserved.
This document is subject to BCP 78 and the IETF Trust's Legal This document is subject to BCP 78 and the IETF Trust's Legal
Provisions Relating to IETF Documents Provisions Relating to IETF Documents
(http://trustee.ietf.org/license-info) in effect on the date of (http://trustee.ietf.org/license-info) in effect on the date of
publication of this document. Please review these documents publication of this document. Please review these documents
carefully, as they describe your rights and restrictions with respect carefully, as they describe your rights and restrictions with respect
to this document. Code Components extracted from this document must to this document. Code Components extracted from this document must
include Simplified BSD License text as described in Section 4.e of include Simplified BSD License text as described in Section 4.e of
the Trust Legal Provisions and are provided without warranty as the Trust Legal Provisions and are provided without warranty as
described in the Simplified BSD License. described in the Simplified BSD License.
Table of Contents Table of Contents
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 3 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2
2. Requirements Language . . . . . . . . . . . . . . . . . . . . . 3 2. Requirements Language . . . . . . . . . . . . . . . . . . . . 2
3. Problem Statement . . . . . . . . . . . . . . . . . . . . . . . 3 3. Problem Statement . . . . . . . . . . . . . . . . . . . . . . 2
4. Relay Agent Behavior Update . . . . . . . . . . . . . . . . . . 3 4. Relay Agent Behavior Update . . . . . . . . . . . . . . . . . 2
4.1. Definition of a Valid Message . . . . . . . . . . . . . . . 4 4.1. Definition of a Valid Message . . . . . . . . . . . . . . 3
4.2. Relaying a Message towards Server . . . . . . . . . . . . . 4 4.2. Relaying a Message towards Server . . . . . . . . . . . . 3
4.3. Relaying a Message towards Client . . . . . . . . . . . . . 4 4.3. Relaying a Message towards Client . . . . . . . . . . . . 4
5. Client and Server Behavior Update . . . . . . . . . . . . . . . 4 5. Client and Server Behavior Update . . . . . . . . . . . . . . 4
6. Security Considerations . . . . . . . . . . . . . . . . . . . . 4 6. Security Considerations . . . . . . . . . . . . . . . . . . . 4
7. IANA Considerations . . . . . . . . . . . . . . . . . . . . . . 5 7. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 5
8. Contributors List . . . . . . . . . . . . . . . . . . . . . . . 5 8. Contributors List . . . . . . . . . . . . . . . . . . . . . . 5
9. Normative References . . . . . . . . . . . . . . . . . . . . . 5 9. Normative References . . . . . . . . . . . . . . . . . . . . 5
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 6 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 5
1. Introduction 1. Introduction
Dynamic Host Configuration Protocol version 6 (DHCPv6) [RFC3315] Dynamic Host Configuration Protocol version 6 (DHCPv6) [RFC3315]
provides a framework for conveying IPv6 configuration information to provides a framework for conveying IPv6 configuration information to
hosts on a TCP/IP network. But [RFC3315] is not specific about how hosts on a TCP/IP network. But [RFC3315] is not specific about how
to deal with message with unrecognized types. This document describe to deal with messages with unrecognized types. This document
the problems and defines the behavior of a DHCPv6 function node when describes the problems and defines the behavior of a DHCPv6 function
handling unknown DHCPv6 messages. This document updates [RFC3315]. node when handling unknown DHCPv6 messages.
2. Requirements Language 2. Requirements Language
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
"SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this
document are to be interpreted as described in [RFC2119]. document are to be interpreted as described in [RFC2119].
3. Problem Statement 3. Problem Statement
The relay agent is bound to send a message either to the server or to The relay agent is bound to send a message either to the server or to
skipping to change at page 4, line 6 skipping to change at page 3, line 22
We say "toward the client" and "toward the server" because relay We say "toward the client" and "toward the server" because relay
agents may be chained together, so a relay message may be sent agents may be chained together, so a relay message may be sent
through multiple relays along the path to its destination. Relay- through multiple relays along the path to its destination. Relay-
reply messages specify a destination address; the relay agent reply messages specify a destination address; the relay agent
extracts the encapsulated message and sends it to the specified extracts the encapsulated message and sends it to the specified
destination address. Any message other than a Relay-reply does not destination address. Any message other than a Relay-reply does not
have such a specified destination, so it follows the default have such a specified destination, so it follows the default
forwarding path configured on the relay agent, which is always toward forwarding path configured on the relay agent, which is always toward
the server. the server.
The sole purpose of requiring relay agents to relay unknown messages
is to ensure that when legitimate new messages are defined in the
protocol, relay agents, even if they were manufactured prior to the
definition of these new messages, will, by default, succeed in
relaying such messages.
4.1. Definition of a Valid Message 4.1. Definition of a Valid Message
Section 20.1 of [RFC3315] states that: Section 20.1 of [RFC3315] states that:
"When a relay agent receives a valid message to be relayed, it "When a relay agent receives a valid message to be relayed, it
constructs a new Relay-forward message." constructs a new Relay-forward message."
It doesn't define what a valid message is. In this document, we It doesn't define what a valid message is. In this document, we
specify the definition as follows. specify the definition as follows.
The message is valid for constructing a new Relay-forward message: The message is valid for constructing a new Relay-forward message:
(a) if the message is a Relay-forward message, or (a) if the message is a Relay-forward message, or
(b) if a relay agent receives the message but the relay agent does (b) if a relay agent receives the message but the relay agent does
not identify itself as the target of the message, and the message not identify itself as the target of the message, and the message
is not a Relay-reply message. is not a Relay-reply message.
In the case that a new type of relay message is sent to a relay agent In the case that a new type of relay message is sent to a relay agent
but the relay agent doesn't recognize it, the message is put into a but the relay agent doesn't recognize it, the message is put into a
Relay-forward message and sent to the server. Then the server knows Relay-forward message and sent to the server. Then the server knows
the relay agent doesn't support the new message. the relay agent doesn't support the new message.
4.2. Relaying a Message towards Server 4.2. Relaying a Message towards Server
If the relay agent received a Relay-forward message, Section 20.1.2 If the relay agent received a Relay-forward message, Section 20.1.2
of [RFC3315] defines the related behavior. If the relay agent of [RFC3315] defines the related behavior. If the relay agent
received messages other than Relay-forward and Relay-reply, it MUST received messages other than Relay-forward and Relay-reply, it MUST
forward them as is described in Section 20.1.1 of [RFC3315]. forward them as is described in Section 20.1.1 of [RFC3315].
4.3. Relaying a Message towards Client 4.3. Relaying a Message towards Client
If the relay agent receives a Relay-reply message, it MUST process If the relay agent receives a Relay-reply message, it MUST process
the message as is defined in Section 20.2 of [RFC3315], regardless of the message as is defined in Section 20.2 of [RFC3315], regardless of
the type of the message encapsulated in the Relay Message Option. the type of the message encapsulated in the Relay Message Option.
skipping to change at page 5, line 32 skipping to change at page 4, line 51
message types are already possible on the local wire. message types are already possible on the local wire.
So in most cases, if clients are not upgraded there should be minimal So in most cases, if clients are not upgraded there should be minimal
additional risk; at sites where only servers and relays can be additional risk; at sites where only servers and relays can be
upgraded, the incremental benefit of doing so most likely exceeds any upgraded, the incremental benefit of doing so most likely exceeds any
risk due to vulnerable clients. risk due to vulnerable clients.
Nothing in this update should be construed to mean that relay agents Nothing in this update should be construed to mean that relay agents
may not be administratively configurable to drop messages on the may not be administratively configurable to drop messages on the
basis of the message type, for security reasons (e.g., in a basis of the message type, for security reasons (e.g., in a
firewall). The sole purpose of requiring relay agents to relay firewall).
unknown messages is to ensure that when legitimate new messages are
defined in the protocol, relay agents, even if they were manufactured
prior to the definition of these new messages, will, by default,
succeed in relaying such messages.
7. IANA Considerations 7. IANA Considerations
This document does not include an IANA request. This document does not include an IANA request.
8. Contributors List 8. Contributors List
Many thanks for Bernie Volz, Cong Liu and Yuchi Chen's contributions Many thanks to Bernie Volz, Cong Liu and Yuchi Chen for their
to the draft. contributions to the document.
9. Normative References 9. Normative References
[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate
Requirement Levels", BCP 14, RFC 2119, March 1997. Requirement Levels", BCP 14, RFC 2119, March 1997.
[RFC3315] Droms, R., Bound, J., Volz, B., Lemon, T., Perkins, C., [RFC3315] Droms, R., Bound, J., Volz, B., Lemon, T., Perkins, C.,
and M. Carney, "Dynamic Host Configuration Protocol for and M. Carney, "Dynamic Host Configuration Protocol for
IPv6 (DHCPv6)", RFC 3315, July 2003. IPv6 (DHCPv6)", RFC 3315, July 2003.
Authors' Addresses Authors' Addresses
Yong Cui Yong Cui
Tsinghua University Tsinghua University
Department of Computer Science, Tsinghua University
Beijing 100084 Beijing 100084
P.R.China P.R.China
Phone: +86-10-6260-3059 Phone: +86-10-6260-3059
Email: yong@csnet1.cs.tsinghua.edu.cn Email: yong@csnet1.cs.tsinghua.edu.cn
Qi Sun Qi Sun
Tsinghua University Tsinghua University
Department of Computer Science, Tsinghua University
Beijing 100084 Beijing 100084
P.R.China P.R.China
Phone: +86-10-6278-5822 Phone: +86-10-6278-5822
Email: sunqi@csnet1.cs.tsinghua.edu.cn Email: sunqi@csnet1.cs.tsinghua.edu.cn
Ted Lemon Ted Lemon
Nominum, Inc. Nominum, Inc.
2000 Seaport Blvd 2000 Seaport Blvd
Redwood City, CA 94063 Redwood City, CA 94063
USA USA
Phone: +1-650-381-6000 Phone: +1-650-381-6000
Email: mellon@nominum.com Email: Ted.Lemon@nominum.com
 End of changes. 18 change blocks. 
39 lines changed or deleted 38 lines changed or added

This html diff was produced by rfcdiff 1.41. The latest version is available from http://tools.ietf.org/tools/rfcdiff/