idnits 2.17.1 draft-kinnear-dhc-relay-agent-flags-00.txt: Checking boilerplate required by RFC 5378 and the IETF Trust (see https://trustee.ietf.org/license-info): ---------------------------------------------------------------------------- ** It looks like you're using RFC 3978 boilerplate. You should update this to the boilerplate described in the IETF Trust License Policy document (see https://trustee.ietf.org/license-info), which is required now. -- Found old boilerplate from RFC 3978, Section 5.1 on line 15. -- Found old boilerplate from RFC 3978, Section 5.5 on line 274. -- Found old boilerplate from RFC 3979, Section 5, paragraph 1 on line 251. -- Found old boilerplate from RFC 3979, Section 5, paragraph 2 on line 258. -- Found old boilerplate from RFC 3979, Section 5, paragraph 3 on line 264. ** This document has an original RFC 3978 Section 5.4 Copyright Line, instead of the newer IETF Trust Copyright according to RFC 4748. ** This document has an original RFC 3978 Section 5.5 Disclaimer, instead of the newer disclaimer which includes the IETF Trust according to RFC 4748. Checking nits according to https://www.ietf.org/id-info/1id-guidelines.txt: ---------------------------------------------------------------------------- == No 'Intended status' indicated for this document; assuming Proposed Standard == It seems as if not all pages are separated by form feeds - found 0 form feeds but 8 pages Checking nits according to https://www.ietf.org/id-info/checklist : ---------------------------------------------------------------------------- No issues found here. Miscellaneous warnings: ---------------------------------------------------------------------------- == The copyright year in the RFC 3978 Section 5.4 Copyright Line does not match the current year -- The document seems to lack a disclaimer for pre-RFC5378 work, but may have content which was first submitted before 10 November 2008. If you have contacted all the original authors and they are all willing to grant the BCP78 rights to the IETF Trust, then this is fine, and you can ignore this comment. If not, you may need to add the pre-RFC5378 disclaimer. (See the Legal Provisions document at https://trustee.ietf.org/license-info for more information.) -- The document date (June 8, 2006) is 6531 days in the past. Is this intentional? Checking references for intended status: Proposed Standard ---------------------------------------------------------------------------- (See RFCs 3967 and 4897 for information about using normative references to lower-maturity documents in RFCs) No issues found here. Summary: 3 errors (**), 0 flaws (~~), 3 warnings (==), 7 comments (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 1 DHC K. Kinnear 2 Internet-Draft M. Normoyle 3 Expires: December 10, 2006 M. Stapp 4 Cisco Systems, Inc. 5 June 8, 2006 7 DHCPv4 Relay Agent Flags Suboption 8 draft-kinnear-dhc-relay-agent-flags-00.txt 10 Status of this Memo 12 By submitting this Internet-Draft, each author represents that any 13 applicable patent or other IPR claims of which he or she is aware 14 have been or will be disclosed, and any of which he or she becomes 15 aware will be disclosed, in accordance with Section 6 of BCP 79. 17 Internet-Drafts are working documents of the Internet Engineering 18 Task Force (IETF), its areas, and its working groups. Note that 19 other groups may also distribute working documents as Internet- 20 Drafts. 22 Internet-Drafts are draft documents valid for a maximum of six months 23 and may be updated, replaced, or obsoleted by other documents at any 24 time. It is inappropriate to use Internet-Drafts as reference 25 material or to cite them other than as "work in progress." 27 The list of current Internet-Drafts can be accessed at 28 http://www.ietf.org/ietf/1id-abstracts.txt. 30 The list of Internet-Draft Shadow Directories can be accessed at 31 http://www.ietf.org/shadow.html. 33 This Internet-Draft will expire on December 10, 2006. 35 Copyright Notice 37 Copyright (C) The Internet Society (2006). 39 Abstract 41 This memo defines a new suboption of the DHCP relay agent information 42 option that allows the DHCP relay to specify flags for the forwarded 43 packet. One flag is defined to indicate whether the DHCP relay 44 received the packet via a unicast or broadcast packet. This 45 information may be used by the DHCP server to better serve clients 46 based on whether their request was originally broadcast or unicast. 48 Table of Contents 50 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 3 51 2. Requirements Terminology . . . . . . . . . . . . . . . . . . . 3 52 3. The Flags Suboption . . . . . . . . . . . . . . . . . . . . . . 3 53 4. DHCP Relay Agent Behavior . . . . . . . . . . . . . . . . . . . 4 54 5. DHCP Server Behavior . . . . . . . . . . . . . . . . . . . . . 5 55 6. Security Considerations . . . . . . . . . . . . . . . . . . . . 5 56 7. IANA Considerations . . . . . . . . . . . . . . . . . . . . . . 5 57 8. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . 5 58 9. References . . . . . . . . . . . . . . . . . . . . . . . . . . 5 59 9.1. Normative References . . . . . . . . . . . . . . . . . . . 5 60 9.2. Informative References . . . . . . . . . . . . . . . . . . 6 61 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 7 62 Intellectual Property and Copyright Statements . . . . . . . . . . 8 64 1. Introduction 66 Any time a client's DHCP packet is broadcast, a local DHCP relay will 67 process its request and forward it on the DHCP server. Once the 68 lease has been granted, however, future DHCP DHCPREQUEST/RENEWAL 69 messages are unicast directly to the DHCP Server. [RFC2131] 70 [RFC2132] [RFC3046] 72 In general, DHCP servers may make subtle (and sometimes not so 73 subtle) changes in their processing algorithms depending on whether 74 or not the DHCP server received the message as a unicast packet from 75 the DHCP client directly, a broadcast packet from the DHCP client on 76 a locally connected network, or a unicast packet from a DHCP Relay 77 Agent which has forwarded on a packet broadcast from a DHCP client 78 connected to a network local to the DHCP Relay Agent. 80 In some situations, DHCP Clients may unicast their DHCPREQUEST/RENEW 81 packets to the DHCP Relay Agent, which will forward the packet on to 82 the DHCP server. In these cases, the DHCP server cannot tell whether 83 the packet was broadcast or unicast by the DHCP client, and so it may 84 be unable to processes the DHCP client packets in the manner that it 85 would if it knew whether the original DHCP packet was broadcast or 86 unicast. 88 The purpose of the suboption described in this document is to allow 89 the DHCP server to know if a packet forwarded on by a DHCP Relay 90 Agent was broadcast or unicast to the DHCP Relay Agent. 92 2. Requirements Terminology 94 The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", 95 "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this 96 document are to be interpreted as described in [RFC2119]. 98 3. The Flags Suboption 100 The Flags suboption provides an extensible suboption definition for 101 several possible flags. The first flag defined is the unicast flag. 103 The format of the suboption is: 105 0 1 2 106 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 107 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 108 | Code | Length | Flags | 109 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 111 Code The suboption code. (TBD, to be assigned by IANA). 113 Length The suboption length, 1 byte. 115 Flags The Relay Agent flags for this forwarded packet. 117 0 1 2 3 4 5 6 7 118 +-+-+-+-+-+-+-+-+ 119 |U| MBZ | 120 +-+-+-+-+-+-+-+-+ 122 U: UNICAST flag 124 unicast = 1 125 broadcast = 0 127 MBZ: MUST BE ZERO (reserved for future use) 129 4. DHCP Relay Agent Behavior 131 A DHCP relay agent MUST include this suboption in every Relay Agent 132 Information Option [RFC3046] it adds to a forwarded DHCP request. In 133 this way, the DHCP server can distinguish a request forwarded from a 134 DHCP relay agent which does not support the relay-agent-flags 135 suboption from a request forwarded by a DHCP relay agent which 136 supports the relay-agent-flags suboption and which received the 137 request that is being forwarded in a broadcast packet. 139 To put this another way, A DHCP relay agent which supports the relay- 140 agent-flags suboption MUST always include it in every relay-agent- 141 information-option that it inserts into packets which it forwards on 142 to the DHCP server, whether the packet it is forwarding was received 143 as a broadcast or as a unicast. This is because the DHCP server will 144 be dealing with DHCP relay agents that support the relay-agent-flags 145 suboption as well as DHCP relay agents that do not support the relay- 146 agent-flags suboption. 148 5. DHCP Server Behavior 150 This option provides additional information to the DHCP server. The 151 DHCP server MAY use this information to make processing decisions 152 regarding the DHCP Client's packet which it is processing. For 153 instance, knowledge of the broadcast or unicast reception of a packet 154 by a DHCP relay agent is important when making the processing 155 decisions required to implement Load Balancing [RFC3074]. 157 6. Security Considerations 159 Message authentication in DHCP for intradomain use where the out-of- 160 band exchange of a shared secret is feasible is defined in [RFC3118]. 161 Potential exposures to attack are discussed in section 7 of the DHCP 162 protocol specification in [RFC2131]. 164 The DHCP Relay Agent option depends on a trusted relationship between 165 the DHCP relay agent and the server, as described in section 5 of 166 [RFC3046]. While the introduction of fraudulent relay-agent options 167 can be prevented by a perimeter defense that blocks these options 168 unless the relay agent is trusted, a deeper defense using the 169 authentication option for relay agent options [RFC4030] SHOULD be 170 deployed as well. 172 7. IANA Considerations 174 IANA is requested to assign a suboption number for the Flags 175 Suboption from the DHCP Relay Agent Information Option [RFC3046] 176 suboption number space. 178 8. Acknowledgements 180 Thanks to David Hankins for realizing the problems created by the 181 server-id-override option draft and for helping us understand the 182 value of finally solving this problem in a way that has general 183 applicability. 185 9. References 187 9.1. Normative References 189 [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate 190 Requirement Levels", BCP 14, RFC 2119, March 1997. 192 [RFC2131] Droms, R., "Dynamic Host Configuration Protocol", 193 RFC 2131, March 1997. 195 [RFC2132] Alexander, S. and R. Droms, "DHCP Options and BOOTP Vendor 196 Extensions", RFC 2132, March 1997. 198 [RFC3046] Patrick, M., "DHCP Relay Agent Information Option", 199 RFC 3046, January 2001. 201 [RFC3118] Droms, R. and W. Arbaugh, "Authentication for DHCP 202 Messages", RFC 3118, June 2001. 204 [RFC4030] Stapp, M. and T. Lemon, "The Authentication Suboption for 205 the Dynamic Host Configuration Protocol (DHCP) Relay Agent 206 Option", RFC 4030, March 2005. 208 9.2. Informative References 210 [RFC3074] Volz, B., Gonczi, S., Lemon, T., and R. Stevens, "DHC Load 211 Balancing Algorithm", RFC 3074, February 2001. 213 Authors' Addresses 215 Kim Kinnear 216 Cisco Systems, Inc. 217 1414 Massachusetts Ave. 218 Boxborough, MA 01719 219 US 221 Phone: +1 978 936 0000 222 Email: kkinnear@cisco.com 224 Marie Normoyle 225 Cisco Systems, Inc. 226 1414 Massachusetts Ave. 227 Boxborough, MA 01719 228 US 230 Phone: +1 978 936 0000 231 Email: mnormoyle@cisco.com 233 Mark Stapp 234 Cisco Systems, Inc. 235 1414 Massachusetts Ave. 236 Boxborough, MA 01719 237 US 239 Phone: +1 978 936 0000 240 Email: mjs@cisco.com 242 Intellectual Property Statement 244 The IETF takes no position regarding the validity or scope of any 245 Intellectual Property Rights or other rights that might be claimed to 246 pertain to the implementation or use of the technology described in 247 this document or the extent to which any license under such rights 248 might or might not be available; nor does it represent that it has 249 made any independent effort to identify any such rights. Information 250 on the procedures with respect to rights in RFC documents can be 251 found in BCP 78 and BCP 79. 253 Copies of IPR disclosures made to the IETF Secretariat and any 254 assurances of licenses to be made available, or the result of an 255 attempt made to obtain a general license or permission for the use of 256 such proprietary rights by implementers or users of this 257 specification can be obtained from the IETF on-line IPR repository at 258 http://www.ietf.org/ipr. 260 The IETF invites any interested party to bring to its attention any 261 copyrights, patents or patent applications, or other proprietary 262 rights that may cover technology that may be required to implement 263 this standard. Please address the information to the IETF at 264 ietf-ipr@ietf.org. 266 Disclaimer of Validity 268 This document and the information contained herein are provided on an 269 "AS IS" basis and THE CONTRIBUTOR, THE ORGANIZATION HE/SHE REPRESENTS 270 OR IS SPONSORED BY (IF ANY), THE INTERNET SOCIETY AND THE INTERNET 271 ENGINEERING TASK FORCE DISCLAIM ALL WARRANTIES, EXPRESS OR IMPLIED, 272 INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE 273 INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED 274 WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. 276 Copyright Statement 278 Copyright (C) The Internet Society (2006). This document is subject 279 to the rights, licenses and restrictions contained in BCP 78, and 280 except as set forth therein, the authors retain all their rights. 282 Acknowledgment 284 Funding for the RFC Editor function is currently provided by the 285 Internet Society.