--- 1/draft-ietf-dhc-relay-port-08.txt 2017-11-29 23:13:08.829135353 -0800 +++ 2/draft-ietf-dhc-relay-port-09.txt 2017-11-29 23:13:08.853135609 -0800 @@ -1,18 +1,18 @@ Networking Working Group N. Shen Internet-Draft E. Chen Intended status: Standards Track Cisco Systems -Expires: June 1, 2018 November 28, 2017 +Expires: June 2, 2018 November 29, 2017 Generalized UDP Source Port for DHCP Relay - draft-ietf-dhc-relay-port-08 + draft-ietf-dhc-relay-port-09 Abstract This document proposes an extension to the DHCP protocols that allows a relay agent to use any available source port for upstream communications, and to include a DHCP option that can be used to statelessly route responses back to the appropriate source port on downstream communications. Status of This Memo @@ -23,21 +23,21 @@ Internet-Drafts are working documents of the Internet Engineering Task Force (IETF). Note that other groups may also distribute working documents as Internet-Drafts. The list of current Internet- Drafts is at http://datatracker.ietf.org/drafts/current/. Internet-Drafts are draft documents valid for a maximum of six months 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." - This Internet-Draft will expire on June 1, 2018. + This Internet-Draft will expire on June 2, 2018. Copyright Notice Copyright (c) 2017 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) in effect on the date of publication of this document. Please review these documents @@ -46,36 +46,36 @@ include Simplified BSD License text as described in Section 4.e of the Trust Legal Provisions and are provided without warranty as described in the Simplified BSD License. Table of Contents 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2 1.1. Requirements Language . . . . . . . . . . . . . . . . . . 3 2. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 3 3. Changes to DHCP Specifications . . . . . . . . . . . . . . . 3 - 3.1. Changes to DHCPv4 in RFC 2131 . . . . . . . . . . . . . . 3 - 3.2. Changes to DHCPv6 in RFC 3315 . . . . . . . . . . . . . . 4 + 3.1. Additions to DHCPv4 in RFC 2131 . . . . . . . . . . . . . 3 + 3.2. Additions to DHCPv6 in RFC 3315 . . . . . . . . . . . . . 4 4. Relay Source Port Sub-option and Option . . . . . . . . . . . 4 4.1. Source Port Sub-option for DHCPv4 . . . . . . . . . . . . 4 4.2. Relay Source Port Option for DHCPv6 . . . . . . . . . . . 5 - 5. Relay Agent and Server Behavior . . . . . . . . . . . . . . . 6 - 5.1. DHCPv4 . . . . . . . . . . . . . . . . . . . . . . . . . 6 + 5. Relay Agent and Server Behavior . . . . . . . . . . . . . . . 5 + 5.1. DHCPv4 . . . . . . . . . . . . . . . . . . . . . . . . . 5 5.2. DHCPv6 . . . . . . . . . . . . . . . . . . . . . . . . . 6 - 5.3. Compatibility . . . . . . . . . . . . . . . . . . . . . . 7 + 5.3. Compatibility . . . . . . . . . . . . . . . . . . . . . . 6 5.4. Deployment Considerations . . . . . . . . . . . . . . . . 7 6. An IPv6 Cascaded Relay Example . . . . . . . . . . . . . . . 7 - 7. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 9 + 7. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 8 8. Security Considerations . . . . . . . . . . . . . . . . . . . 9 9. Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . 9 10. Normative References . . . . . . . . . . . . . . . . . . . . 9 - Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 10 + Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 9 1. Introduction RFC 2131 [RFC2131] and RFC 3315 [RFC3315] specify the use of UDP as the transport protocol for DHCP. They also define both the server side and client side port numbers. The IPv4 server port is UDP number (67) and the client port is UDP number (68); for IPv6 the server port is (547) and the client port is (546). The fixed UDP port combinations for the DHCP protocol scheme creates @@ -131,54 +131,47 @@ device uses when forwarding Relay-forward Messages to this relay agent device. This UDP port is to be used by this relay agent device when forwarding the Relay-reply Messages to that downstream device. Non-DHCP UDP Port: Any valid and non-zero UDP port other than port 67 for DHCPv4 and port 547 for DHCPv6. 3. Changes to DHCP Specifications -3.1. Changes to DHCPv4 in RFC 2131 +3.1. Additions to DHCPv4 in RFC 2131 Section 4.1 of RFC 2131 [RFC2131] specifies that: DHCP uses UDP as its transport protocol. DHCP messages from a client to a server are sent to the 'DHCP server' port (67), and DHCP messages from a server to a client are sent to the 'DHCP client' port (68). - This specification adds the following extension to the above - paragraph. - - DHCP messages from a relay agent to a server are sent to the 'DHCP - server' port (67), and the UDP source port it uses can be any - valid UDP port available in the relay system, including the DHCP - port 67. The default port number is 67 if there is no explicit - configuration for the generalized source UDP port extension for - DHCP relay. + Relay agents implementing this specification may be configured + instead to use a source port number other than 67, and to receive + responses on that same port. This will only work when the DHCP + server or relay agent to which such a relay agent is forwarding + messages is upgraded to support this extension. -3.2. Changes to DHCPv6 in RFC 3315 +3.2. Additions to DHCPv6 in RFC 3315 Section 5.2 of RFC 3315 [RFC3315] specifies that: Clients listen for DHCP messages on UDP port 546. Servers and relay agents listen for DHCP messages on UDP port 547. - This specification adds the following extension to the above - paragraph. - - A DHCP relay agent can listen for DHCP messages from a server or - another upstream relay agent device on any valid UDP port - available in the relay system including the DHCP UDP port 547. - The default UDP port is 547 if there is no explicit configuration - for the generalized UDP source port extension for DHCP relay. + Relay agents implementing this specification may be configured + instead to use a source port number other than 547, and to receive + responses on that same port. This will only work when the DHCP + server or relay agent to which such a relay agent is forwarding + messages is upgraded to support this extension. 4. Relay Source Port Sub-option and Option Relay agents do not maintain state. To return a message to its source, the relay agent must include all the required information in the Relay-Forward message. When a relay in a sequence of cascaded relays does not use the standard source port, that source port must be included along with the source address. This option allows the relay agent to do so. @@ -286,32 +279,31 @@ 5.3. Compatibility Sites that need for relay agents to specify a source port will need to install new DHCP server and DHCP relay agent software with this feature. If a site installs only DHCP relay agent software with this feature, there is no possibility that the DHCP server will be able to communicate to the relay agent. 5.4. Deployment Considerations - During deployment, it may be advisable the operator and/or user of - the new DHCP relay port implementation upgrade the DHCP server first - when possible, before the relay implementations are deployed. This - would ensure that the erroneous case noted in Section 5.3 is not - encountered. + During deployment, it is advisable the operator and/or user of the + new DHCP relay port implementation upgrade the DHCP server first when + possible, before the relay implementations are deployed. This would + ensure that the erroneous case noted in Section 5.3 is not + encountered. If the upstream relay agent or server does not support + this extension, this DHCP relay port feature needs to be disabled. - When the DHCP relay port implementation is deployed, it is - recommended that the configuration is setup to allow for the mode of - operation where a non-DHCP port can be used for the DHCP relay - agents. The recommended configuration then permits the relay agent - to utilize the default DHCP UDP port, or a non-DHCP UDP port as - desired. + When the DHCP relay port implementation is deployed, the default + relay agent behavior should use the DHCP UDP port, it is recommended + that the configuration is setup to allow for the mode of operation + where a non-DHCP port can be used for the DHCP relay agents. Although if the network uses firewall to block or allow DHCP packets with both static UDP source and destination port numbers, this may no longer match the packets from new DHCP relay agent and server software with this extension. The firewall rules need to be modified only to match the DHCP server side of the UDP port number, and if necessary, IP addresses and other attributes. 6. An IPv6 Cascaded Relay Example