Network Working Group R. Hibbs Internet-Draft Richard Barr Hibbs, P.E. Expires:
September 28,October 29, 2004 C. Smith Sun Microsystems, Inc.C & C Catering B. Volz Cisco Systems, Inc. M. Zohar IBM T. J. Watson Research Center MarchApril 30, 2004 Dynamic Host Configuration Protocol for IPv4 (DHCPv4) Threat Analysis draft-ietf-dhc-v4-threat-analysis-01draft-ietf-dhc-v4-threat-analysis-02 Status of this Memo This document is an Internet-DraftBy submitting this Internet-Draft, I certify that any applicable patent or other IPR claims of which I am aware have been disclosed, and isany of which I become aware will be disclosed, in full conformanceaccordance with all provisions of Section 10 of RFC2026.RFC 3668. Internet-Drafts are working documents of the Internet Engineering Task Force (IETF), its areas, and its working groups. Note that other groups may also distribute working documents as Internet-Drafts. 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." The list of current Internet-Drafts can be accessed at http:// www.ietf.org/ietf/1id-abstracts.txt. The list of Internet-Draft Shadow Directories can be accessed at http://www.ietf.org/shadow.html. This Internet-Draft will expire on September 28,October 29, 2004. Copyright Notice Copyright (C) The Internet Society (2004). All Rights Reserved. Abstract DHCPv4 (RFC 2131) is a stable, widely used protocol for configuration of host systems in a TCP/IPv4 network. It did not provide for authentication of clients and servers, nor did it provide for data confidentiality. This is reflected in the original "Security Considerations" section of RFC 2131, which identifies a few threats and leaves development of any defenses against those threats to future work. Beginning in about 1995 DHCP security began to attract attention from the Internet community, eventually resulting in the publication of RFC 3118 in 2001. Although RFC 3118 was a mandatory prerequisite for the DHCPv4 Reconfigure Extension, RFC 3203, it has had no known usage by any commercial or private implementation since its adoption. The DHC Working Group has adopted a work item for 2003 to review and modify or replace RFC 3118 to afford a workable, easily deployed security mechanism for DHCPv4. This memo provides a comprehensive threat analysis of the Dynamic Host Configuration Protocol for use both as RFC 2131 advances from Draft Standard to Full Standard and to support our chartered work improving the acceptance and deployment of RFC 3118. Table of Contents 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 3. 4 1.1 Issues for Consideration . . . . . . . . . . . . . . . . . . 34 1.2 Assumptions . . . . . . . . . . . . . . . . . . . . . . . . 34 1.3 Scope of this Memo . . . . . . . . . . . . . . . . . . . . . 34 1.4 Use of Key Words . . . . . . . . . . . . . . . . . . . . . . 45 2. General threatsThreats to DHCPv4 . . . . . . . . . . . . . . . . . 4. 5 2.1 Denial-of-Service Attacks . . . . . . . . . . . . . . . . . 45 2.1.1 Refusal to Configure Clients . . . . . . . . . . . . . . . . 45 2.1.2 Client Masquerading . . . .Impersonating Clients . . . . . . . . . . . . . . . . 45 2.1.3 Flooding . . . . . . . . . . . . . . . . . . . . . . . . . . 56 2.2 Client Misconfiguration . . . . . . . . . . . . . . . . . . 56 2.3 Theft of Network Service . . . . . . . . . . . . . . . . . . . . . . 56 2.4 Packet Insertion, Deletion, or Modification . . . . . . . . 57 3. Weaknesses of RFC 3118 . . . . . . . . . . . . . . . . . . . 6. 7 3.1 Key Exposure . . . . . . . . . . . . . . . . . . . . . . . . 67 3.2 Key Distribution . . . . . . . . . . . . . . . . . . . . . . 67 3.3 Replay attacks . . . . . . . . . . . . . . . . . . . . . . . 68 3.4 Protocol Agreement Difficulties . . . . . . . . . . . . . . 78 4. DHCPv4 Security Requirements . . . . . . . . . . . . . . . . 7. 8 4.1 Environments . . . . . . . . . . . . . . . . . . . . . . . . 78 4.2 Capabilities . . . . . . . . . . . . . . . . . . . . . . . . 78 4.3 Musings on the Key Distribution Problem . . . . . . . . . . 89 4.4 Data Confidentiality . . . . . . . . . . . . . . . . . . . . 810 4.4.1 "Public" Data in DHCP Packets . . . . . . . . . . . . . . . 910 4.4.2 Protecting OtherData in DHCP Options . . . . . . . . . . . 911 5. IANA Considerations . . . . . . . . . . . . . . . . . . . . 9. 11 6. Security Considerations . . . . . . . . . . . . . . . . . . 10. 11 7. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 10. 11 8. Change Log . . . . . . . . . . . . . . . . . . . . . . . . . 10. 11 8.1 01 Draft . . . . . . . . . . . . . . . . . . . . . . . . . 11 8.2 02 Draft . . 10. . . . . . . . . . . . . . . . . . . . . . . 12 9. References . . . . . . . . . . . . . . . . . . . . . . . . . . 12 9.1 Normative References . . . . . . . . . . . . . . . . . . . . 1012 9.2 Informative References . . . . . . . . . . . . . . . . . . . 1113 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . 11. 14 Intellectual Property and Copyright Statements . . . . . . . 13. 15 1. Introduction DHCPv4 as defined in RFC 1541 [RFC1541] and RFC 2131 [RFC2131] does not provide any form of communication security, confidentiality, data integrity, or peer entity authentication. A design team was formed at IETF-55 in Atlanta in November 2002 to look at DHCPv4 and RFC 3118 [RFC3118] to document security requirements for DHCPv4. RFC 3118 defines the current security mechanisms for DHCPv4. Unfortunately, RFC 3118 has neither been implemented nor deployed to date. There is widespread feeling that its current restriction to manual keying of clients limits its deployment. The DHC Working Group seeks to rectify this situation by defining security mechanisms for DHCPv4 that have better deployment properties. 1.1 Issues for Consideration Specific issues to be considered include: o Improved key management and scalability. o Security for messages passed between relay agents and servers. o The increased usage of DHCPv4 on insecure (e.g., wireless) and public LANs. o The need for clients to be able to authenticate servers, without simultaneously requiring client authentication by the server. 1.2 Assumptions This document assumes that the reader is familiar with both the base DHCPv4 protocol as defined in RFC 2131 and the DHCPv4 authentication extension as defined in RFC 3118, and does not attempt to provide a tutorial on either. 1.3 Scope of this Memo This document confines its analysis to DHCPv4, as defined in RFC 2131 and RFC 2132 [RFC2132] and DHCP Authentication, as defined in RFC 3118. Excluded from our analysis are: o TheSecuring messages between relay agents and servers: work is already underway on this, see [auth-subopt] and [relay-ipsec]. o DHCP Reconfigure Extension (FORCERENEW), RFC 3203 [RFC3203]: the authors believe it is appropriate to put the onus to provide the analysis on those who are interested in moving itthat work forward. o DHCP Failover Protocol, as defined in [failover]: the server-to-server protocol it usesused differs significantly from DHCP. o DHCP-DNS Interaction, as defined in [fqdn]: securing communication between DHCP servers and DNS servers is a DNS update security issue and therefore out of scope for the DHC working group. o DHCPv6, as defined in RFC 3315 [RFC3315]: while we believe that authentication techniques developed for DHCPv4 would generally be applicable to DHCPv6, there are fundamental differences between the two protocols and RFC 3118 specifies DHCPv4-style message and options formats, so we have chosen to concentrate on DHCPv4. o DHCP Lease Query, as defined in [leasequery]: because of lack of maturity. 1.4 Use of Key Words 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]. 2. General threatsThreats to DHCPv4 These are the classes of threats to the base DHCPv4 protocol. Not all of these are DHCP-specific, nor can all the concerns listed be addressed by DHCP authentication. 2.1 Denial-of-Service Attacks 2.1.1 Refusal to Configure Clients This includes rogue servers that don't give addresses or give bad addresses in addition to simply ignoring client requests.A rogue DHCP server could respondcan refuse to configure clients by responding with either partial information (i.e., missing the IP address, yet containing other information) or a non-routable (or otherwise bad) IP address. Another possibility is a rogueOr, the server that respondsmay respond to DHCPDISCOVER messages (with DHCPOFFER messages) but fails to respond tothen ignore the subsequent client DHCPREQUEST messages. This mightmay cause a client to repeatedly fail to be configured. Clients shouldconfigured, though clients could take steps to ensure that they subsequently ignore such servers.servers for a period of time. 2.1.2 Client Masquerading This includes clients that send out bogus requests or masquerade as legal clients to use up addresses,Impersonating Clients A rogue client can impersonate a client or just consume server/network resources. The term "legal clients," in this case, refers tomany clients, by using another client's client identifer (client identifier option) and/or hardware address (chaddr) or by generating these identifiers. This may be done to: o Obtain addresses when hardware ("chaddr")address or client identifier (client-ID)restrictions (lists) are configured into the site's server through some mechanism not described in RFC 2131. Some sites may use such a mechanism to restrict the clients that are allowed addresses. A rogue client listens to DHCPv4 traffic and captures a few chaddrs or client-IDsclient identifiers and starts using them. o Simulate many clients to consume all available addresses. The rogue client may either hold on to these addresses (until the leases expire) or decline the addresses (by sending a DHCPDECLINE) in the hopes that the server will remove the declined address from use for a longer period of time. o Create havoc on the subnet by injecting fake messages on behalf of other clients that prematurely release (DHCPRELEASE) or decline (DHCPDECLINE) their addresses. A rogue client listens to DHCPv4 traffic and gleans client identity and address information and uses this information to inject fake messages. 2.1.3 Flooding A rogue client can flood the network with (near-) continuous DHCPv4 request messages, depleting the IP addresses andmessages thereby consuming bandwidth. As most servers are implemented as a stateless query-response model,processing resources and network traffic is effectively doubled with the message pair. DHCPv4 is particularly susceptible to such attacks because initial packet exchanges are broadcast.bandwidth. We mention this attack only for completeness, as there is little or nothing that a DHCP server can do to prevent such an attack and the client could just as well send messages of other protocols; and we will not discuss it further. 2.2 Client Misconfiguration This includes rogueRogue servers thatmay give out bad configuration information,information (such as fake gateways or DNS servers), or relay agents or other network elements thatmay alter packets between a client and server. The result is misconfiguration (such as fake gateways or DNS servers) of clients and potentially worse attacks by directing traffic through a bogus router or web spoofing or other traffic interceptionserver, to cause the client to be misconfigured, or redirection.to enable future man-in-the-middle attacks. This category is usually part of another attack, be it theft of service, business espionage, or business interruption including denial of service. 2.3 Theft of Network Service By "theft of network service" we mean the taking of an unused address for network access or the use of an assigned address not belonging to the client, in contrast with "client masquerading" (Section 2.1.2) which refers specifically to the use of a legitimate client's chaddr or client identifier. Instantiation of an unauthorized client for purposes of using network resources or services is only partially preventable using client-server authentication techniques. We mention this attack only for completeness, as there is little or nothing that a DHCP server, itself, can do to prevent such an attack. Additional host and application security is required to prevent theft of service, and such layer 5 and higher functions are declared out of scope for this analysis. 2.4 Packet Insertion, Deletion, or Modification If a client (or server or relay agent) is known to crash or shut down when invalid packets of some type are sent, this could be simply another type of denial of service attack. Likewise, simply deleting certain packet types (DHCPREQUEST to renew or rebind a lease) would eventually result in client lease expiration, a denial of service attack. A rogue relay agent or other host would typically use packet insertion and deletion to interrupt service. In a different vein, the modification of packets in the DHCP exchange may be used to facilitate many different types of attacks on either client or server. For example, a DHCPACK could be modified to a DHCPNAK, thereby denying the client a lease. 3. Weaknesses of RFC 3118 An authentication mechanism for DHCPv4 protocol messages was developed in RFC 3118, proposing two basic authentication mechanisms and the means for extending the repertoire of methods as needed. Because theThe configuration token method (protocol 0) relies on exchanging clear-text authentication tokens between as yet unconfigured DHCPv4 clients and DHCPv4 servers, it does not scale well beyond relatively small networks.servers. It is also vulnerable to message interception. Delayed authentication (protocol 1) focuses on solving the intradomain authentication problem where the out-of-band exchange of a shared secret is feasible. Methods that are more computationally intensive are particularly susceptible to Denial of Service attacks through flooding.3.1 Key Exposure The configuration token protocol, protocol 0, utilizes clear-text authentication tokens (i.e., passwords), providing only weak entity authentication and no message authentication. This protocol is vulnerable to interception and provides only the most rudimentary protection against inadvertently instantiated DHCP servers. It also leaks the key before knowing whether the server supports protocol 0. 3.2 Key Distribution Both protocols 0 and 1 suffer from the lack of a means to easily, quickly, and reliably distribute authentication tokens used in the protocols. In many environments, some existing key distribution mechanism is presumed to be trusted and reliable, with strong administrative procedures and a security-conscious user population in place, leaving only the selection and specification of an appropriate cryptographic algorithm as a concern of the protocol designer. Relying on such out-of-band methods to distribute and manage tens or hundreds of thousands of tokens is a significant barrier to the widespread implementation of either protocol 0 or 1. Key distribution presents a significant system management challenge that is in marked contrast with DHCP itself, a protocol that has been successfully deployed in environments that make few demands or assumptions. If we are to hope for similarly successful deployment of authentication for DHCP, a means for mitigating (if not eliminating) these difficulties must be offered. 3.3 Replay attacks Since the configuration token protocol, protocol 0, passes a clear-text authentication token, the token would be visible to any host on the same subnet would be able to capture it.subnet. Delayed authentication, protocol 1, is not susceptible to replay attacks since it contains a nonce value generated by the source and a message authentication code (MAC) which provides both message and entity authentication. 3.4 Protocol Agreement Difficulties An a priori agreement is presumed to have taken place between client and server on the authentication protocol to use. No mechanism is provided to allow for the discovery of supported protocols, nor is there a facility for negotiation. The only way to express non-support of a protocol is by failing to respond. 4. DHCPv4 Security Requirements DHCPv4 was developed in an era when computers were primarily used in business and university environments. Security was either not a concern or was addressed by controlling physical access stemming from the belief that intrusion into critical systems was most likely to come from an external source. Now, with wireless access points and ubiquitous networking, physical access control mechanisms are no longer sufficient, and security and privacy issues are a major concern. 4.1 Environments The following environments can be expected for DHCPv4 implementations: o Network size from a few hosts to hundreds of thousands of hosts. o Network topology from a single subnet to Class-A networks. o Network location from a single room to international dispersion. o Wired, broadcast wireless, and directional wireless media. o Movement between different media and networks. 4.2 Capabilities The following are essential elements of DHCPv4 Security:security: o Clients MUST be able to authenticate servers (to prevent misconfigured clients and assure that the correct servers are being contacted). o Servers MUST be able to authenticate clients (use of hardware addresses and client-IDs provides no real security but is all that is easily possible today). Better mechanisms are needed for servers to identify clients to which they will offer service (to prevent IP address pool depletion, for example). o Administrators MUST be able to choose between four authentication paradigms: * No authentication required. * Mutual authentication required. * Client authenticates server. * Server authenticates client. o Integrity of DHCP packet exchanges MUST be assured. Not all capabilities may be needed or desired in all situations. 4.3 Musings on the Key Distribution Problem The authors believe that only by addressing scalability issues with key distribution can RFC 3118 achieve wide deployment. While it is not our intention to describe solutions in this document, we admit that we find the model used today by browsers and secure web servers attractive: trusted root certificates are distributed with the client implementation (web browser); users have the ability to extend the certificates that they will accept, install their own certificates (should client identification be required), and choose which certificate to present to servers requesting athe client's identity. Analogously, DHCPv4 servers could make use of certificates just as web servers do, while DHCPv4 clients could be distributed with appropriate certificate authority certificates (trust anchors). Self-signed certificates are, of course, a possibility, should an organization wish full control over its domain of trust. Should this path be pursued, we believe that certificate revocation will be thea major problem to confront, just as it is in the browser/ web server environment today. Revocation of client certificates (which we believe would occur, on the whole, much more frequently than revocation of server certificates), would require only ordinary care in certificate validation by the DHCP server. Revocation of server certificates is more complex because of the difficulty updating client configuration,configurations, as well as the inability of clients to rely on certificate revocation lists while in the process of performing IP address and configuration management. 4.4 Data Confidentiality Data Confidentiality was not provided for in the original DHCP protocol as defined in RFC 2131 or any of the subsequent RFCs. Historically, DHCP was mainly used to assign IP addresses and return configuration options such as the local gateway and DNS information. Over time the DHCP protocol has evolved, deployments are extending beyond physically secure intranets to public networks in hotspots, cafes, airports, and at home over broadband. andAnd we are seeing an accompanying proliferation of new configuration options. DHCP has, in fact, become so successful that it is now used to transport a great deal of configuration data that could be obtained in a variety of other ways. It is certainly possible that a client or server might wish to reveal some of these data only to a properly-authenticated peer. 4.4.1 "Public" Data in DHCP Packets We assume that any information that may be gleaned directly from the network using, for example, Ethernet promiscuous mode is not confidential. It could be argued that over time more and more communication will be switched, encrypted, or secured at the physical layer, so that less information could easily be gleaned from the network traffic. Taking thisencryption into consideration, the IP packet payload might be encrypted, but not the IP header itself since it is required for packet routing. As a result none of the IP header fields are confidential. IP addresses included in the header are therefore not confidential. Similarly, the hardware addresses are also not confidential. Although the IP packet payload (which would include the UDP or TCP header) might normally be encrypted, some protocols have made explicit decisions not to encrypt their exchanges, declaring their data public. DNS is such a protocol [dns-threats]. Thus we may also treat DNS domain and server information as public. Commonly-used routing protocols such as BGP (RFC 1771) [RFC1771], RIP (RFC 1721) [RFC1721], and router discovery (RFC 1256) [RFC1256] also normally send advertisements in the clear and we therefore extend our treatmentdefinition of public DHCP data to include routing information.information options. 4.4.2 Protecting OtherData in DHCP Options Some DHCP options (e.g., relay agent options, RFC 3046 [RFC3046]) or option families (site or vendor options) admit no analysis because the data carried by them may be of unknown sensitivity. Analysis of their confidentiality requirements must be done by their users. Other DHCPv4 options contain opaque data, not subject to interpretation by a DHCPv4 server. With no RFC-based definition of the data content of these options, we can offer no opinion of the sensitivity of the data, and leave any confidentiality treatment to other work. Should some data require confidentiality, it may be possible to exploit the "public" data above to allow a two-step configuration process in which sufficient client configuration is first obtained by the normal DHCPDISCOVER/OFFER/REQUEST/ACK exchange, and private data subsequently transmitted over a secure communications channel (such as IPsec) using DHCPINFORM. 5. IANA Considerations None known. 6. Security Considerations This entire memo presents a threat analysis of the DHCPv4 protocol. 7. Acknowledgements This document is the result of work undertaken the by DHCP working group, beginning at 55th IETF meeting in Atlanta. The authors would also like to acknowledge contributions from others not directly involved in writing this memo, including John Beatty and Vipul Gupta of Sun Microsystems, and Ralph Droms of Cisco Systems. And Bernard Aboba and Mark Stapp for their careful reviews and suggestions. 8. Change Log This section summaries the changes made to this Internet-Draft as it has evolved. 8.1 01 Draft No significant changes were made: o Updated author information.Updated author information. o Converted to using xml2rfc to generate the draft. o Removed unused references. o Added the Change Log section. 8.2 02 Draft The following changes were made: o Updated author information. o Added text to 1.3 to exclude security for messages passed between relay agents and servers as there are two Internet-Drafts on this subject. o Reworded several sections, particularily in section 2. o Converted to using xml2rfc to generate the draft.Revised and renamed section 2.1.2; now includes more attacks. o Removed unused references.Revised section 2.1.3. o Minor revisions to section 3, 3.2, and 3.2. o Added more to section 4.4.2. o Other minor insertions, deletions, and modifications based on comments from Bernard Aboba and Mark Stapp and to otherwise improve the Change Log section.document. 9. References 9.1 Normative References [RFC1256] Deering, S., "ICMP Router Discovery Messages", RFC 1256, September 1991. [RFC1541] Droms, R., "Dynamic Host Configuration Protocol", RFC 1541, October 1993. [RFC1721] Malkin, G., "RIP Version 2 Protocol Analysis", RFC 1721, November 1994. [RFC1771] Rekhter, Y. and T. Li, "A Border Gateway Protocol 4 (BGP-4)", RFC 1771, March 1995. [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, March 1997. [RFC2131] Droms, R., "Dynamic Host Configuration Protocol", RFC 2131, March 1997. [RFC2132] Alexander, S. and R. Droms, "DHCP Options and BOOTP Vendor Extensions", RFC 2132, March 1997. [RFC3046] Patrick, M., "DHCP Relay Agent Information Option", RFC 3046, January 2001. [RFC3118] Droms, R. and W. Arbaugh, "Authentication for DHCP Messages", RFC 3118, June 2001. 9.2 Informative References [RFC3203] T'Joens, Y., Hublet, C. and P. De Schrijver, "DHCP reconfigure extension", RFC 3203, December 2001. [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. [auth-subopt] Stapp, M. and T. Lemon, "The Authentication Suboption for the DHCP Relay Agent Option", draft-ietf-dhc-auth-suboption-03 (work in progress), February 2004. [dns-threats] Atkins, D. and R. Austein, "Threat Analysis Of The Domain Name System", draft-ietf-dnsext-dns-threats-06 (work in progress), February 2004. [failover] Droms, R. and K. Kinnear, "DHCP Failover Protocol", draft-ietf-dhc-failover-12 (work in progress), December 2003. [fqdn] Stapp, M. and Y. Rekhter, "The DHCP Client FQDN Option", draft-ietf-dhc-fqdn-option-06 (work in progress), October 2003. [leasequery] Woundy, R., "DHCP Lease Query", draft-ietf-dhc-leasequery-07 (work in progress), March 2004. [relay-ipsec] Droms, R., "Authentication of DHCP Relay Agent Options Using IPsec", draft-ietf-dhc-relay-agent-ipsec-01 (work in progress), November 2003. Authors' Addresses Richard Barr Hibbs Richard Barr Hibbs, P.E. 952 Sanchez Street San Francisco, California 94114-3362 USA Phone: +1 415 648 3920 Fax: +1 415 648 9017 EMail: email@example.com Carl Smith Sun Microsystems, Inc. 901 San Antonio Road Palo Alto,C & C Catering 1121 Holly St Alameda, California 94303-490094502 USA EMail: firstname.lastname@example.org@alumni.ucsd.edu Bernard Volz Cisco Systems, Inc. 1414 Massachusetts Ave. Boxborough, MA 01719 USA Phone: +1 978 936 0382 EMail: email@example.com Mimi Zohar IBM T. J. Watson Research Center 19 Skyline Drive Hawthorne, New York 10532-2134 USA Phone: +1 914 784 7606 EMail: firstname.lastname@example.org Intellectual Property Statement The IETF takes no position regarding the validity or scope of any intellectual propertyIntellectual 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; neithernor 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 standards-track and standards-related documentationIETF Documents can be found in BCP-11.BCP 78 and BCP 79. Copies of claims of rightsIPR disclosures made available for publicationto 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 implementorsimplementers or users of this specification can be obtained from the IETF Secretariat.on-line IPR repository at http://www.ietf.org/ipr. The IETF invites any interested party to bring to its attention any copyrights, patents or patent applications, or other proprietary rights whichthat may cover technology that may be required to practiceimplement this standard. Please address the information to the IETF Executive Director. Full Copyright Statement Copyright (C) The Internet Society (2004). All Rights Reserved. This document and translations of it may be copied and furnished to others, and derivative works that comment on or otherwise explain it or assist in its implementation may be prepared, copied, published and distributed, in whole or in part, without restriction of any kind, provided that the above copyright notice and this paragraph are included on all such copies and derivative works. However, this document itself may not be modified in any way, such as by removing the copyright notice or references to the Internet Society or other Internet organizations, except as needed for the purposeat email@example.com. Disclaimer of developing Internet standards in which case the procedures for copyrights defined in the Internet Standards process must be followed, or as required to translate it into languages other than English. The limited permissions granted above are perpetual and will not be revoked by the Internet Society or its successors or assignees.Validity This document and the information contained herein isare 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 DISCLAIMSDISCLAIM 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. Copyright Statement Copyright (C) The Internet Society (2004). This document is subject to the rights, licenses and restrictions contained in BCP 78, and except as set forth therein, the authors retain all their rights. Acknowledgment Funding for the RFC Editor function is currently provided by the Internet Society.