Submitted to DHC Working Group Peter De Schrijver INTERNET DRAFT Yves T'Joens Christian Hublet Alcatel June 2000 Expires December 2000 Dynamic host configuration : DHCP reconfigure extension Status of this memo This document is an Internet-Draft and is in full conformance with all provisions of Section 10 of RFC2026. 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. Internet-Drafts may be updated, replaced, or obsoleted by other documents at any time. It is not appropriate to use Internet- Drafts as reference material or to cite them other than as a ``working draft'' or ``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. To view the entire list of current Internet-Drafts, please check the "1id-abstracts.txt" listing contained in the Internet-Drafts Shadow Directories on ftp.is.co.za (Africa), ftp.nordu.net (Northern Europe), ftp.nis.garr.it (Southern Europe), munnari.oz.au(Pacific Rim), ftp.ietf.org (US East Coast), or ftp.isi.edu (US West Coast). Distribution of this memo is unlimited. Abstract This draft defines extensions to DHCP [DHCP] to allow dynamic reconfiguration of a single host triggered by the DHCP server (eg. a new IP address). This is achieved by introducing a unicast DHCP FORCERENEW message which forces the client to the RENEW state. 1. Introduction The procedures as described within this draft allow the dynamic reconfiguration of individual hosts. 1.1 Conventions 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. DHCP force renew This section describes the DHCP force renew extension. 2.1 Terminology DHCP client : host to be reconfigured using DHCP. DHCP server : server which configured the DHCP client. 2.2 Force renew procedures The DHCP server sends a force renew message to the client. The client will change its state to the RENEW state. The client will then try to renew its lease according to normal DHCP procedures. If the server wants to assign a new IP address to the client, it will reply to the DHCP REQUEST with a DHCP NAK. The client will then go back to the init state and broadcast a DHCP DISCOVER message. The server can now assign a new IP address to the client by replying with a DHCP OFFER. If the force renew message is lost, the DHCP server will not receive a DHCP REQUEST from the client and it should retransmit the DHCP FORCERENEW message using an exponential backoff algorithm. Depending on the bandwidth of the network between server and client, the server should choose a delay. This delay grows exponentially as retransmissions fail. The amount of retransmissions should be limited. 2.3 Rationale This approach has a number of advantages. It does not require new states to be added to the DHCP client implementation. This minimizes the amount of code to be changed. It also allows lease RENEWAL to be driven by the server, which can be used to optimize network usage or DHCP server load. 3. Extended DHCP state diagram +--------+ +------+ | Init / | +-->+ Init +<---------------+-------------------+ | Reboot | | +--+---+ | | +---+----+ DHCPNAK/ -/Send DHCPDISCOVER | | | Restart | (broadcast) | | | | v v-------------+ | | -/Send DHCPREQUEST | +----+------+ DHCPOFFER/DHCPDECLINE | | (broadcast) | | Selecting |----------+ | | v | +----+------+ | | +---+----+ | DHCPOFFER/DHCPREQUEST | | | Reboot +--------------+ (broadcast) | | +---+----+ v | | | +----+-------+ DHCPNAK /halt network | + Requesting | | lease expired DHCPACK/ +----+-------+ | | Record lease | | | set timers DHCPACK/Record lease | | | v Set T1 & T2 | | | +--+----+DHCPFORCE +---+---+ +---+----+ +---------------------->+ Bound +---------->+ Renew +---------->+ Rebind | +--+-+--+T1 expires +-+-+---+ T2 expires+--+--+--+ ^ /DHCPREQUEST | | /broadcast | DHCPACK to leasing | | DHCPREQUEST | | server | | | +------------------------------------------+ 4. Message layout Field DHCPFORCERENEW ----- --------------- 'op' BOOTREPLY 'htype' (From "Assigned Numbers" RFC) 'hlen' (Hardware address length in octets) 'hops' 0 'xid' selected by server 'secs' 0 'ciaddr' 0 'yiaddr' 0 'siaddr' 0 'flags' 0 'giaddr' 0 'chaddr' client's hardware address 'sname' 0 'file' 0 'options' options DHCP option 53 (DHCP message type) is extended with a new value : DHCPFORCERENEW (TBD) 5. Failover Considerations A DHCP server should only send a DHCPFORCERENEW when it's fully aware of the current state of the DHCP client. In practice this means it should only send a DHCPFORCERENEW when in "PARTNER DOWN", "COMMUNICATIONS INTERRUPTED" or "NORMAL" state, and only for DHCP clients of which the state is synchronised. (see [DHCP-FAILOVER]) 6. IANA Considerations The new value for DHCP option 53 (DHCP message type) to indicate a DHCPFORCERENEW message is TBD. 7. Security Considerations As in some network environments DHCPFORCERENEW can be used to snoop and spoof traffic, the DHCPFORCERENEW message MUST be authenticated using a shared secret based mechanism as described in [DHCP-AUTH]. 8. References [DHCP] R.Droms, "Dynamic Host Configuration Protocol", RFC 2131, March 1997. [DHCP-AUTH] R. Droms, "Authentication for DHCP Messages", draft-ietf- dhc-authentication-12, October 1999, Work in progress. [DHCP-FAILOVER] R. Droms, K. Kinnear, M. Stapp, B. Volz, S. Gonczi, G. Rabil, M. Dooley, A. Kapur, "DHCP Failover Protocol", draft-ietf- dhc-failover-06.txt, March 2000, Work in progress. 9. Contacts Peter De Schrijver Alcatel Network Strategy Group Francis Wellesplein 1, 2018 Antwerp, Belgium Phone : +32 3 240 8569 E-mail : peter.de_schrijver@alcatel.be Yves T'joens Alcatel Network Strategy Group Francis Wellesplein 1, 2018 Antwerp, Belgium Phone : +32 3 240 7890 E-mail : yves.tjoens@alcatel.be Christian Hublet Alcatel Carrier Internetworking Division De Villermontstraat 28, 2550 Kontich, Belgium Phone : +32 3 450 3322 E-mail : Christian.Hublet@alcatel.be