draft-ietf-dhc-autoconfig-00.txt   draft-ietf-dhc-autoconfig-01.txt 
Dynamic Host Configuration WG R. Troll Dynamic Host Configuration WG R. Troll
Internet Draft: DHC-AUTOCONFIG Carnegie Mellon Internet Draft: DHC-AUTOCONFIG Carnegie Mellon
Document: draft-ietf-dhc-autoconfig-00.txt August 1998 Document: draft-ietf-dhc-autoconfig-01.txt September 1998
Expires: February 1999 Expires: March 1999
DHCP Option to Disable Stateless Auto-Configuration in IPv4 Clients DHCP Option to Disable Stateless Auto-Configuration in IPv4 Clients
<draft-ietf-dhc-autoconfig-00.txt> <draft-ietf-dhc-autoconfig-01.txt>
Status of this memo Status of this memo
This document is an Internet-Draft. Internet-Drafts are working This document is an Internet-Draft. Internet-Drafts are working
documents of the Internet Engineering Task Force (IETF), its areas, documents of the Internet Engineering Task Force (IETF), its areas,
and its working groups. Note that other groups may also distribute and its working groups. Note that other groups may also distribute
working documents as Internet-Drafts. working documents as Internet-Drafts.
Internet-Drafts are draft documents valid for a maximum of six Internet-Drafts are draft documents valid for a maximum of six
months and may be updated, replaced, or obsoleted by other months and may be updated, replaced, or obsoleted by other
documents at any time. It is inappropriate to use Internet-Drafts documents at any time. It is inappropriate to use Internet-Drafts
as reference material or to cite them other than as "work in as reference material or to cite them other than as "work in
progress." progress."
To view the entire list of current Internet-Drafts, please check To view the entire list of current Internet-Drafts, please check
the "1id-abstracts.txt" listing contained in the Internet-Drafts the "1id-abstracts.txt" listing contained in the Internet-Drafts
Shadow Directories on ftp.is.co.za (Africa), ftp.nordu.net Shadow Directories on ftp.is.co.za (Africa), ftp.nordu.net
(Northern Europe), ftp.nis.garr.it (Southern Europe), munnari.oz.au (Northern Europe), ftp.nis.garr.it (Southern Europe), munnari.oz.au
(Pacific Rim), ftp.ietf.org (US East Coast), or ftp.isi.edu (Pacific Rim), ftp.ietf.org (US East Coast), or ftp.isi.edu (US
(US West Coast). West Coast).
Abstract Abstract
Operating Systems are now attempting to support ad-hoc networks of Operating Systems are now attempting to support ad-hoc networks of
two or more systems, while keeping user configuration at a minimum. two or more systems, while keeping user configuration at a minimum.
To accommodate this, in the absence of a central configuration To accommodate this, in the absence of a central configuration
mechanism (DHCP), some OS's are automaticly choosing an IP address mechanism (DHCP), some OS's are automaticly choosing an IP address
which will allow them to communicate with other hosts running the which will allow them to communicate with other hosts running the
same OS. However, some sites depend on the fact that a host with same OS. However, some sites depend on the fact that a host with
no DHCP response will have no IP address. This draft describes a no DHCP response will have no IP address. This draft describes a
skipping to change at page 3, line 47 skipping to change at page 3, line 48
possibly leaving it with no IP address. possibly leaving it with no IP address.
2.2. DHCP Client Behavior 2.2. DHCP Client Behavior
Clients that have auto-configuration capabilities MUST add the Clients that have auto-configuration capabilities MUST add the
Auto-Configure option to the list of requested parameters in its Auto-Configure option to the list of requested parameters in its
initial DHCPDISCOVER message. ([DHCP] Section 4.4.1) At this initial DHCPDISCOVER message. ([DHCP] Section 4.4.1) At this
time, the option's value should be set to "AutoConfigure". time, the option's value should be set to "AutoConfigure".
When a DHCPOFFER is received, it is handled as described in [DHCP], When a DHCPOFFER is received, it is handled as described in [DHCP],
section 4.4.1, with one exception. If the 'ciaddr' field is section 4.4.1, with one exception. If the 'yiaddr' field is
0x00000000, the AutoConfigure option must be consulted. If this 0x00000000, the AutoConfigure option must be consulted. If this
option is set to "AutoConfigure", then the DHCPOFFER MUST be option is set to "AutoConfigure", then the DHCPOFFER MUST be
ignored, and the DHCP Client MAY auto-configure. However, if this ignored, and the DHCP client MAY auto-configure. However, if this
option is set to "DoNOTAutoConfigure", then the DHCPOFFER MUST be option is set to "DoNOTAutoConfigure", then the DHCPOFFER MUST be
ignored, and the client MUST not auto-configure. ignored, and the client MUST not auto-configure.
If a DHCP Client receives any DHCPOFFER which contains a 'ciaddr' If a DHCP client receives any DHCPOFFER which contains a 'yiaddr'
of 0x00000000, and the Auto-Configure flag says of 0x00000000, and the Auto-Configure flag says
'DoNOTAutoConfigure', in the absence of a DHCPOFFER with a valid 'DoNOTAutoConfigure', in the absence of a DHCPOFFER with a valid
'ciaddr', the DHCP Client MUST not Auto-Configure. 'yiaddr', the DHCP client MUST not Auto-Configure. The amount of
time a DHCP client waits to collect any other DHCPOFFERs is
implementation dependant.
DHCPOFFERs with a 'ciaddr' of 0x00000000 will only be sent by DHCP DHCPOFFERs with a 'yiaddr' of 0x00000000 will only be sent by DHCP
servers supporting the AutoConfigure option when the DHCPDISCOVER servers supporting the AutoConfigure option when the DHCPDISCOVER
contained the Auto-Configure option. Since the DHCPDISCOVER will contained the Auto-Configure option. Since the DHCPDISCOVER will
only contain the Auto-Configure option when a DHCP Client knows how only contain the Auto-Configure option when a DHCP client knows how
to handle it, there will be no inter-operability problems. to handle it, there will be no inter-operability problems.
If the DHCP server does have an address to offer, the message If the DHCP server does have an address to offer, the message
states are the same as those described in [DHCP], section 3. states are the same as those described in [DHCP], section 3.
The following depicts the difference in responses for non- The following depicts the difference in responses for non-
registered DHCP Clients that support the "Auto-Configure" option on registered DHCP clients that support the "Auto-Configure" option on
networks that have DHCP Servers that support auto-configuration and networks that have DHCP servers that support auto-configuration and
networks with DHCP servers that do not. networks with DHCP servers that do not.
Network Client Network Network Client Network
(no auto-configure) (auto-configure) (no auto-configure) (auto-configure)
v v v v v v
| | | | | |
| Begins initialization | | Begins initialization |
| | | | | |
| _____________/|\____________ | | _____________/|\____________ |
skipping to change at page 5, line 37 skipping to change at page 5, line 37
. . . . . .
. . . . . .
| | | | | |
| Graceful shutdown | | Graceful shutdown |
| | | | | |
| | | | | |
v v v v v v
2.3. DHCP Server Behavior 2.3. DHCP Server Behavior
When a DHCP Server receives a DHCPDISCOVER, it MUST be processed as When a DHCP server receives a DHCPDISCOVER, it MUST be processed as
described in [DHCP], section 4.3.1. However, if no address is described in [DHCP], section 4.3.1. However, if no address is
chosen for the host, a few additional steps MUST be taken. chosen for the host, a few additional steps MUST be taken.
If the DHCPDISCOVER does not contain the AutoConfigure option, it If the DHCPDISCOVER does not contain the AutoConfigure option, it
is not answered. is not answered.
If the DHCPDISCOVER contains the AutoConfigure option, and the site If the DHCPDISCOVER contains the AutoConfigure option, and the site
administrator has specified that Auto-Configuration should be administrator has specified that Auto-Configuration should be
disabled on the subnet the DHCPDISCOVER is originating from, then a disabled on the subnet the DHCPDISCOVER is originating from, then a
DHCPOFFER MUST be sent to the DHCP Client. This offer MUST be for DHCPOFFER MUST be sent to the DHCP client. This offer MUST be for
the address 0x00000000, and the AutoConfigure option MUST be set to the address 0x00000000, and the AutoConfigure option MUST be set to
"DoNOTAutoConfigure". "DoNOTAutoConfigure".
If the site administrator allows auto-configuration on the If the site administrator allows auto-configuration on the
originating subnet, the DHCPDISCOVER is not answered as before. originating subnet, the DHCPDISCOVER is not answered as before.
2.4. Mixed Environments 2.4. Mixed Environments
Environments containing a mixture of clients and servers that do Environments containing a mixture of clients and servers that do
and do not support the Auto-Configure option will not be a problem. and do not support the Auto-Configure option will not be a problem.
Every DHCP transaction is between a Server and a Client, and the Every DHCP transaction is between a Server and a Client, and the
possible mixed scenarios between these two are listed below. possible mixed scenarios between these two are listed below.
2.4.1 Client Supports, Server Does Not 2.4.1 Client Supports, Server Does Not
If a DHCP Client sends a request that contains the Auto-Configure If a DHCP client sends a request that contains the Auto-Configure
tag, a DHCP server that does not know what this tag is will respond tag, a DHCP server that does not know what this tag is will respond
normally. According to [DHCP] Section 4.3.1, the server MUST not normally. According to [DHCP] Section 4.3.1, the server MUST not
return a value for that parameter. return a value for that parameter.
In this case, the server will either respond with a valid In this case, the server will either respond with a valid
DHCPOFFER, or it will not respond at all. In both cases, a DHCP DHCPOFFER, or it will not respond at all. In both cases, a DHCP
client that supports this option will never care what the state of client that supports this option will never care what the state of
the option is. the option is, and may auto-configure.
2.4.2 Servers Supports, Client Does Not 2.4.2 Servers Supports, Client Does Not
If the AutoConfigure option is not present in the DHCPDISCOVER, the If the AutoConfigure option is not present in the DHCPDISCOVER, the
server will do nothing about it. The client will auto-configure if server will do nothing about it. The client will auto-configure if
it doesn't receive a response and believes that's what it should it doesn't receive a response and believes that's what it should
do. do.
This scenario SHOULD not occur, as any stacks that implement an This scenario SHOULD not occur, as any stacks that implement an
auto-configuration mechanism MUST implement this option as well. auto-configuration mechanism MUST implement this option as well.
2.5. Interaction With Other DHCP Messages 2.5. Interaction With Other DHCP Messages
As this option only affects the initial IP address selection, it As this option only affects the initial IP address selection, it
does not apply to subsequent DHCP messages. If the DHCP client does not apply to subsequent DHCP messages. If the DHCP client
received a lease from a DHCP Server, future DHCP messages (RENEW, received a lease from a DHCP server, future DHCP messages (RENEW,
INFORM, ACK, etc.) have no need to fall over into an auto- INFORM, ACK, etc.) have no need to fall over into an auto-
configuration state. configuration state.
If the DHCP Client's lease expires, the client falls back into the If the DHCP client's lease expires, the client falls back into the
INIT state, and the initial DHCPDISCOVER is sent as before. INIT state, and the initial DHCPDISCOVER is sent as before.
2.5.1 DHCPRELEASE Messages 2.5.1 DHCPRELEASE Messages
DHCPRELEASEs occur exactly as described in [DHCP], section 4.4.6. DHCPRELEASEs occur exactly as described in [DHCP], section 4.4.6.
When a DHCP Client is done with a lease, it MAY notify the server When a DHCP client is done with a lease, it MAY notify the server
that it is finished. For this to occur, the DHCP Client already that it is finished. For this to occur, the DHCP client already
received a DHCP lease, and the state of Auto-Configuration on the received a DHCP lease, and the state of Auto-Configuration on the
local wire does not matter. local wire does not matter.
2.5.2 DHCPDECLINE Messages 2.5.2 DHCPDECLINE Messages
A DHCPDECLINE is sent by the DHCP Client when it determines the A DHCPDECLINE is sent by the DHCP client when it determines the
network address it is attempting to use is already in use. As a network address it is attempting to use is already in use. As a
network address has been tested, it must have been offered by the network address has been tested, it must have been offered by the
DHCP Server, and the state of Auto-Configuration on the local wire DHCP Server, and the state of Auto-Configuration on the local wire
does not matter. does not matter.
2.5.3 DHCPINFORM Messages 2.5.3 DHCPINFORM Messages
DHCPINFORMs should be handled as described in [DHCP], section DHCPINFORMs should be handled as described in [DHCP], section
4.4.3. No changes are necessary. 4.4.3. No changes are necessary.
2.6 Message Option
If the DHCP server would like to tell a client why it is not
allowed to auto-configure, it MAY add the Message option to the
response. This option is defined in [DHCPOPT], Section 9.9.
If the DHCP client receives a response with the Message option set,
it MUST provide this information to the administrator of the DHCP
client. How this information is provided is implementation
dependant.
3. Security Considerations 3. Security Considerations
DHCP per se currently provides no authentication or security DHCP per se currently provides no authentication or security
mechanisms. Potential exposures to attack are discussed in section mechanisms. Potential exposures to attack are discussed in section
7 of the DHCP protocol specification [DHCP]. 7 of the DHCP protocol specification [DHCP].
This mechanism does add one other potential attack. Malicious This mechanism does add one other potential attack. Malicious
users on a subnet may respond to all DHCP requests with responses users on a subnet may respond to all DHCP requests with responses
telling DHCP Clients that they should NOT autoconfigure on the telling DHCP clients that they should NOT autoconfigure on the
local wire. On a network that Auto-Configuration is required, this local wire. On a network that Auto-Configuration is required, this
will cause all DHCP Clients to not choose an address. will cause all DHCP clients to not choose an address.
4. Acknowledgments 4. Acknowledgments
This idea started at a joint Common Solutions Group / Microsoft This idea started at a joint Common Solutions Group / Microsoft
meeting at Microsoft in May, 1998. The IP stacks in Win98 and NT5 meeting at Microsoft in May, 1998. The IP stacks in Win98 and NT5
assign themselves an IP address (in a specific subnet) in the assign themselves an IP address (in a specific subnet) in the
absence of a responding DHCP server, and this is causing headaches absence of a responding DHCP server, and this is causing headaches
for many sites that actually rely on machines not getting IP for many sites that actually rely on machines not getting IP
addresses when the DHCP servers do not know them. addresses when the DHCP servers do not know them.
skipping to change at page 9, line 4 skipping to change at page 9, line 15
Requirement Levels", RFC 2119, Harvard University, March 1997. Requirement Levels", RFC 2119, Harvard University, March 1997.
<ftp://ds.internic.net/rfc/rfc2119.txt> <ftp://ds.internic.net/rfc/rfc2119.txt>
[IPv6SAC] Thomson, S. and Narten, T. "IPv6 Stateless Address [IPv6SAC] Thomson, S. and Narten, T. "IPv6 Stateless Address
Autoconfiguration", RFC 1971, August 1996 Autoconfiguration", RFC 1971, August 1996
<ftp://ds.internic.net/rfc/rfc1971.txt> <ftp://ds.internic.net/rfc/rfc1971.txt>
7. Author's Address 7. Author's Address
Ryan Troll Ryan Troll
Network Development Network Development
Carnegie Mellon Carnegie Mellon
5000 Forbes Avenue 5000 Forbes Avenue
Pittsburgh, PA 15213 Pittsburgh, PA 15213
Phone: (412) 268-8691 Phone: (412) 268-8691
EMail: ryan@andrew.cmu.edu EMail: ryan@andrew.cmu.edu
This document will expire February 1999 This document will expire March 1999
 End of changes. 

This html diff was produced by rfcdiff 1.23, available from http://www.levkowetz.com/ietf/tools/rfcdiff/