RFC 7083

Modification to Default Values of SOL_MAX_RT and INF_MAX_RT

๐Ÿ“… published November 2013, from ietf

RFC 7083 ๐Ÿ’– Modification to Default Values of SOL_MAX_RT and INF_MAX_RT โœจ

Part 1 of 2

  • Series: Internet Engineering Task Force (IETF), Request for Comments ๐ŸŽ€
  • Number: 7083
  • Author: R. Droms, Cisco Systems ๐Ÿ‘‘
  • Date: November 2013 ๐Ÿ“
  • Category: Standards Track ๐ŸŒˆ
  • Updates: RFC 3315 ๐Ÿฆ‹ (nothing is listed as obsoleted)
  • ISSN: 2070-1721 โญ

Abstract

okay so this doc is all about updating RFC 3315 ๐ŸŽ€. It redefines the default values for SOL_MAX_RT and INF_MAX_RT, and it also adds options so a DHCPv6 server can override the client's default for both with brand new values. slay ๐Ÿ’…

Status of This Memo

This is an Internet Standards Track document. ๐ŸŒธ

This document is a product of the Internet Engineering Task Force (IETF). It represents the consensus of the IETF community. It has received public review and has been approved for publication by the Internet Engineering Steering Group (IESG). Further information on Internet Standards is available in Section 2 of RFC 5741. โœจ

Info about the current status of this document, any errata, and how to send feedback on it can be found at http://www.rfc-editor.org/info/rfc7083. ๐Ÿงš

Copyright (c) 2013 IETF Trust and the persons identified as the document authors. All rights reserved. ๐Ÿ’œ

This document is subject to BCP 78 and the IETF Trust's Legal Provisions Relating to IETF Documents (http://trustee.ietf.org/license-info) as they stand on the date this document was published. Please actually read these, because they spell out your rights and restrictions for this document ๐Ÿ™ˆ. Code Components pulled out of this document must include Simplified BSD License text as described in Section 4.e of the Trust Legal Provisions, and they come without warranty as described in the Simplified BSD License.

Table of Contents

1.  Introduction  . . . . . . . . . . . . . . . . . . . . . . . .   2
2.  Requirements Language . . . . . . . . . . . . . . . . . . . .   2
3.  Updates to SOL_MAX_RT and INF_MAX_RT in RFC 3315  . . . . . .   2
4.  SOL_MAX_RT option . . . . . . . . . . . . . . . . . . . . . .   3
5.  INF_MAX_RT Option . . . . . . . . . . . . . . . . . . . . . .   4
6.  Updates for SOL_MAX_RT and INF_MAX_RT Options to RFC 3315 . .   4
7.  DHCPv6 Client Behavior  . . . . . . . . . . . . . . . . . . .   5
8.  DHCPv6 Server Behavior  . . . . . . . . . . . . . . . . . . .   6
9.  DHCPv6 Relay Agent Behavior . . . . . . . . . . . . . . . . .   6
10. Security Considerations . . . . . . . . . . . . . . . . . . .   6
11. Acknowledgments . . . . . . . . . . . . . . . . . . . . . . .   7
12. IANA Considerations . . . . . . . . . . . . . . . . . . . . .   7
13. References  . . . . . . . . . . . . . . . . . . . . . . . . .   7
  13.1.  Normative References . . . . . . . . . . . . . . . . . .   7
  13.2.  Informative References . . . . . . . . . . . . . . . . .   7

1. Introduction ๐ŸŒท

so the DHCPv6 spec [RFC3315] says in Section 5.5 that SOL_MAX_RT and INF_MAX_RT both default to 120 seconds ๐Ÿ˜ญ. In some situations, those defaults cause an unacceptably high amount of aggregated traffic at a DHCPv6 server. Way too much!!

The SOL_MAX_RT change is a response to DHCPv6 message rates that were observed on a DHCPv6 server in a deployment where lots of DHCPv6 clients were sending Solicit messages, but the server was set up not to answer those Solicit messages. ๐Ÿ™ˆ No one has explicitly measured traffic caused by INF_MAX_RT, but this document updates INF_MAX_RT anyway so it stays consistent with SOL_MAX_RT. That's the consistency energy we love ๐Ÿซถ.

2. Requirements Language ๐Ÿ“œ

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 RFC 2119 [RFC2119]. ๐Ÿ’…

3. Updates to SOL_MAX_RT and INF_MAX_RT in RFC 3315 ๐Ÿฆ‹

this doc changes Section 5.5 of RFC 3315 like this:

   OLD:
      SOL_MAX_RT      120 secs  Max Solicit timeout value

   NEW:
      SOL_MAX_RT     3600 secs  Max Solicit timeout value

   OLD:
      INF_MAX_RT      120 secs  Max Information-request timeout value

   NEW:
      INF_MAX_RT     3600 secs  Max Information-request timeout value

With this change, a DHCPv6 client that doesn't get a satisfying response will still send Solicit or Information-request messages with the same starting frequency and exponential backoff as Sections 17.1.2 and 18.1.5 of RFC 3315 describe. โœจ The big difference is the long-term vibe: those clients will send a Solicit or Information-request message every 3600 seconds instead of every 120 seconds, which massively cuts down the aggregated traffic at the DHCPv6 server. Iconic ๐Ÿ‘‘.

4. SOL_MAX_RT option ๐Ÿ’œ

A DHCPv6 server sends the SOL_MAX_RT option to a client to override the default value of SOL_MAX_RT. The value of SOL_MAX_RT in the option replaces the default value defined in Section 3. One use of the SOL_MAX_RT option is setting a longer SOL_MAX_RT, which cuts down the Solicit traffic from a client that hasn't gotten a response to its Solicit messages. ๐ŸŒธ

The format of the SOL_MAX_RT option is:

     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
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
    |          option-code          |         option-len            |
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
    |                       SOL_MAX_RT value                        |
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

      option-code          OPTION_SOL_MAX_RT (82)

      option-len           4

      SOL_MAX_RT value     Overriding value for SOL_MAX_RT
                           in seconds; MUST be in range:
                             60 <= "value" <= 86400 (1 day)

                 Figure 1: SOL_MAX_RT Option Format

5. INF_MAX_RT Option ๐Ÿงš

A DHCPv6 server sends the INF_MAX_RT option to a client to override the default value of INF_MAX_RT. The value of INF_MAX_RT in the option replaces the default value defined in Section 3. One use of the INF_MAX_RT option is setting a longer INF_MAX_RT, which cuts down the Information-request traffic from a client that hasn't gotten a response to its Information-request messages. ๐Ÿ“

The format of the INF_MAX_RT option is:

     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
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
    |          option-code          |         option-len            |
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
    |                       INF_MAX_RT value                        |
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

      option-code          OPTION_INF_MAX_RT (83)

      option-len           4

      INF_MAX_RT value     Overriding value for INF_MAX_RT
                           in seconds; MUST be in range:
                             60 <= "value" <= 86400 (1 day)

                 Figure 2: INF_MAX_RT Option Format

(continued in part 2 with Section 6) ๐Ÿฆ‹

10. Security Considerations โš ๏ธ

okay bestie, this section is SERIOUS but also kinda iconic ๐Ÿ’… so listen up. This document adds exactly one new security consideration on top of what RFC 3315 already covers ๐Ÿ”’. The worry is a sus, malicious DHCPv6 server ๐Ÿ˜ค that uses the SOL_MAX_RT and INF_MAX_RT options to push a client's SOL_MAX_RT and INF_MAX_RT parameters to some unreasonably high value. Like, absolutely unhinged numbers ๐Ÿ’€. The result could be an undue delay before the client finishes its DHCPv6 protocol transaction, but only in the case where no other valid response shows up ๐Ÿ˜ญ. BUT here's the plot twist ๐Ÿฆ‹: if the client also gets a response from a valid DHCPv6 server, those huge values for SOL_MAX_RT and INF_MAX_RT won't have any effect at all. Main character energy for the good server ๐Ÿ‘‘โœจ.

11. Acknowledgments ๐Ÿซถ

Shoutout to Tomek Mrugalski ๐ŸŒธ, who edited the text so it complies with "Guidelines for Creating New DHCPv6 Options" [DHC-OPTION] and added important details to the Security Considerations section. Slay ๐Ÿ’–.

12. IANA Considerations ๐Ÿ“‹

IANA has assigned one option code each for OPTION_SOL_MAX_RT (82) and OPTION_INF_MAX_RT (83) ๐ŸŽ€. Both come from the "DHCP Option Codes" table of the "Dynamic Host Configuration Protocol for IPv6 (DHCPv6)" registry ๐Ÿ—‚๏ธ.

OPTION_SOL_MAX_RT    82
OPTION_INF_MAX_RT    83

13. References ๐Ÿ“š

13.1. Normative References ๐Ÿง 

[RFC2119]  Bradner, S., "Key words for use in RFCs to Indicate
           Requirement Levels", BCP 14, RFC 2119, March 1997.

[RFC3315]  Droms, R., Bound, J., Volz, B., Lemon, T., Perkins, C.,
           and M. Carney, "Dynamic Host Configuration Protocol for
           IPv6 (DHCPv6)", RFC 3315, July 2003.

13.2. Informative References ๐ŸŒˆ

[DHC-OPTION]
           Hankins, D., Mrugalski, T., Siodelski, M., Jiang, S., and
           S. Krishnan, "Guidelines for Creating New DHCPv6 Options",
           Work in Progress, September 2013.

[RFC3633]  Troan, O. and R. Droms, "IPv6 Prefix Options for Dynamic
           Host Configuration Protocol (DHCP) version 6", RFC 3633,
           December 2003.

Author's Address ๐Ÿ“ฎ

Ralph Droms
Cisco Systems
1414 Massachusetts Avenue
Boxborough, MA  01719
USA

Phone: +1 978 936 1674
EMail: rdroms@cisco.com
๐Ÿ“ฆ where this page comes from