Network Working Group
`Request for Comments: 2131
`Obsoletes: 1541
`
`Category: Standards Track
`
`R. Droms
`
`Bucknell University
`March 1997
`
`Dynamic Host Configuration Protocol
`
`Status of this memo
`
`This document specifies an Internet standards track protocol for the
`Internet community, and requests discussion and suggestions for
`improvements. Please refer to the current edition of the "Internet
`Official Protocol Standards" (STD 1)
`for the standardization state
`and status of this protocol. Distribution of this memo is unlimited.
`
`Abstract
`
`(DHCP) provides a framework
`The Dynamic Host Configuration Protocol
`for passing configuration information to hosts on a TCPIP network.
`DHCP is based on the Bootstrap Protocol
`(BOOTP)
`[7], adding the
`capability of automatic allocation of reusable network addresses and
`additional configuration options [19].
`DHCP captures the behavior of
`BOOTP relay agents [7, 21], and DHCP participants can interoperate
`with BOOTP participants [9].
`
`Table of Contents
`
`NosWNE
`
`hb
`
`IooO
`
`GWWw
`
`mWWWw
`
`2
`3
`4
`4
`5
`6
`6
`8
`11
`12
`13
`13
`
`17
`20
`
`20
`21
`22
`22
`22
`
` ÿ
`ÿ
`Request for Comments: 2131
`Obsoletes: 1541
`
`Category: Standards Track
`
`R. Droms
`
`Bucknell University
`March 1997
`
`Dynamic Host Configuration Protocol
`
`Status of this memo
`
`This document specifies an Internet standards track protocol for the
`Internet community, and requests discussion and suggestions for
`improvements. Please refer to the current edition of the "Internet
`Official Protocol Standards" (STD 1)
`for the standardization state
`and status of this protocol. Distribution of this memo is unlimited.
`
`Abstract
`
`(DHCP) provides a framework
`The Dynamic Host Configuration Protocol
`for passing configuration information to hosts on a TCPIP network.
`DHCP is based on the Bootstrap Protocol
`(BOOTP)
`[7], adding the
`capability of automatic allocation of reusable network addresses and
`additional configuration options [19].
`DHCP captures the behavior of
`BOOTP relay agents [7, 21], and DHCP participants can interoperate
`with BOOTP participants [9].
`
`Table of Contents
`
`NosWNE
`
`hb
`
`IooO
`
`GWWw
`
`mWWWw
`
`2
`3
`4
`4
`5
`6
`6
`8
`11
`12
`13
`13
`
`17
`20
`
`20
`21
`22
`22
`22
`
` ÿ
`ÿ
ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
` ÿÿ
`ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
` ÿ
`
`!" ÿ#$ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ%&'ÿ(()
`& ÿ*&
`+&+ÿ,&
`ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
`& ÿ-ÿ
` &
`ÿ.
`*& ÿÿ' ÿ
`ÿÿÿ,' ÿ+
`ÿ ÿ&
`ÿ/
`
` ÿ&
`+&+ÿ&ÿÿÿ'
`ÿÿÿ/
`
` ÿ
` 0ÿ&
`+ÿ ÿ+
`ÿ&
`+ÿ
`ÿ
`ÿÿÿ
`ÿÿ. & ÿ ÿÿ' ÿ
`ÿ +
`ÿÿ' ÿ1/
`
`
`ÿÿÿ! &ÿ.ÿ*&
`+&+1ÿ2*,ÿ3ÿÿ' ÿ&
`+&+ 4&
`ÿ&
`ÿÿÿ&
`+ÿ& ÿÿ' ÿÿÿ "
`ÿÿ' ÿ ÿ ÿ
` +
`5"&
`ÿÿÿ,' ÿ
`& ÿ-ÿ
` &
`ÿ.ÿ2-.3ÿ + ÿ&ÿ&
`ÿÿÿÿ&
`ÿ
` &
`ÿ
`&
`ÿÿ'ÿ
`ÿ&ÿ,./.ÿ
`
`ÿÿÿ-.ÿ ÿ"& +ÿ
`ÿ' ÿ&ÿ.ÿ2!!,.3ÿ6)70ÿ&++
`ÿ'
`ÿÿÿ&&" ÿÿ& & ÿ&&
`ÿÿ &" ÿ
` ÿ&++ ÿ&
`+
`ÿÿÿ&++
`&ÿ
` &
`ÿ
`ÿ6(7ÿÿ-.ÿ& ÿ' ÿ" '& ÿ
`ÿÿÿ!!,.ÿ & ÿ&
`ÿ6)0ÿ70ÿ&
`+ÿ-.ÿ& &
`ÿ&
`ÿ
` &
`ÿÿÿ 'ÿ!!,.ÿ& &
`ÿ6(7
`,&" ÿÿ
`
`
`ÿÿÿÿÿ/
`+
`ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
`ÿÿÿÿ'&
` ÿÿ8#$ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
`ÿÿÿÿ & +ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ$
`ÿÿÿÿ." ÿ+
`
`ÿ&
`+ÿ ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ$
`ÿÿÿ$ÿ
`ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ#
`ÿÿÿ#ÿ,
` ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ9
`ÿÿÿ9ÿ
`ÿ&ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ9
`ÿÿÿÿÿ.ÿ* & ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ:
`
`WWWNHNNPPPREEE
`ÿÿÿÿ
` &
`ÿ&& ÿ ÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
`ÿÿÿÿ
`& ÿ&&
`ÿÿ
` ÿ&++ ÿÿÿÿÿÿÿÿÿÿÿÿ
`ÿÿÿÿÿ,' ÿ
`;* ÿ.ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
`ÿÿÿÿ
`; ÿ
` &
`ÿ;ÿ&&
`ÿ&ÿ
` ÿ&++ ÿÿÿ
`ÿÿÿÿ
`; ÿ
` &
`ÿ;ÿ
`ÿ&ÿÿ ÿ&& +
`ÿÿÿÿÿÿÿ
` ÿ&++ ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ)
`ÿÿÿÿ/
` &
`ÿ&
`+ÿ
`&
`ÿÿ ÿ& ÿÿÿÿÿÿÿ<
`ÿÿÿ$ÿ!"&
`
`ÿ&& ÿ 'ÿ =
`& ÿ
` +ÿ
`
`ÿÿÿÿÿÿÿ&++ ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ<
`ÿÿÿ#ÿ
`ÿ&& ÿ
`ÿ-.ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
`ÿÿÿ9ÿ ÿÿ-.ÿ
`ÿ
`ÿ 'ÿ ÿ
` & ÿÿÿÿÿÿÿÿ
`ÿÿÿ)ÿ'
`ÿ
`ÿ' +ÿ ÿ-.ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
`ÿÿÿ$ÿÿ* &
`ÿÿ' ÿ-.ÿ
`; ÿÿÿÿÿÿÿÿ
`ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ*&
`+&+ÿ,&ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ6.& ÿ7
`
`Introduction.
`Changes to RFC1541.
`Related Work.
`.
`Problem definition and issues
`Requirements.
`Terminology
`Design goals.
`Protocol Summary.
`Configuration parameters “repository
`Dynamic allocation of network addresses
`The Client-Server Protocol.
`.
`.
`Client-server interaction - allocating a “network: address.
`Client-server interaction - reusing a previously allocated
`network address
`.
`.
`Interpretation and representation of. time values.
`Obtaining parameters with externally configured network
`address
`.
`Client parameters in “DHCP
`.
`Use of DHCP in clients with multiple interfaces
`When clients should use DHCP.
`Specification of the DHCP client-serverYr protocol.
`
`Droms
`
`Standards Track
`
`[Page 1]
`
`Page 1 of 45
`
`Exhibit 1012
`IPR2023-00581
`U.S. Patent 8,886,772
`
`Exhibit 1012
`IPR2023-00581
`U.S. Patent 8,886,772
`
`Page 1 of 45
`
`
` ÿÿ
`ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
` ÿ
`
`!" ÿ#$ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ%&'ÿ(()
`& ÿ*&
`+&+ÿ,&
`ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
`& ÿ-ÿ
` &
`ÿ.
`*& ÿÿ' ÿ
`ÿÿÿ,' ÿ+
`ÿ ÿ&
`ÿ/
`
` ÿ&
`+&+ÿ&ÿÿÿ'
`ÿÿÿ/
`
` ÿ
` 0ÿ&
`+ÿ ÿ+
`ÿ&
`+ÿ
`ÿ
`ÿÿÿ
`ÿÿ. & ÿ ÿÿ' ÿ
`ÿ +
`ÿÿ' ÿ1/
`
`
`ÿÿÿ! &ÿ.ÿ*&
`+&+1ÿ2*,ÿ3ÿÿ' ÿ&
`+&+ 4&
`ÿ&
`ÿÿÿ&
`+ÿ& ÿÿ' ÿÿÿ "
`ÿÿ' ÿ ÿ ÿ
` +
`5"&
`ÿÿÿ,' ÿ
`& ÿ-ÿ
` &
`ÿ.ÿ2-.3ÿ + ÿ&ÿ&
`ÿÿÿÿ&
`ÿ
` &
`ÿ
`&
`ÿÿ'ÿ
`ÿ&ÿ,./.ÿ
`
`ÿÿÿ-.ÿ ÿ"& +ÿ
`ÿ' ÿ&ÿ.ÿ2!!,.3ÿ6)70ÿ&++
`ÿ'
`ÿÿÿ&&" ÿÿ& & ÿ&&
`ÿÿ &" ÿ
` ÿ&++ ÿ&
`+
`ÿÿÿ&++
`&ÿ
` &
`ÿ
`ÿ6(7ÿÿ-.ÿ& ÿ' ÿ" '& ÿ
`ÿÿÿ!!,.ÿ & ÿ&
`ÿ6)0ÿ70ÿ&
`+ÿ-.ÿ& &
`ÿ&
`ÿ
` &
`ÿÿÿ 'ÿ!!,.ÿ& &
`ÿ6(7
`,&" ÿÿ
`
`
`ÿÿÿÿÿ/
`+
`ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
`ÿÿÿÿ'&
` ÿÿ8#$ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
`ÿÿÿÿ & +ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ$
`ÿÿÿÿ." ÿ+
`
`ÿ&
`+ÿ ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ$
`ÿÿÿ$ÿ
`ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ#
`ÿÿÿ#ÿ,
` ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ9
`ÿÿÿ9ÿ
`ÿ&ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ9
`ÿÿÿÿÿ.ÿ* & ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ:
`
`WWWNHNNPPPREEE
`ÿÿÿÿ
` &
`ÿ&& ÿ ÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
`ÿÿÿÿ
`& ÿ&&
`ÿÿ
` ÿ&++ ÿÿÿÿÿÿÿÿÿÿÿÿ
`ÿÿÿÿÿ,' ÿ
`;* ÿ.ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
`ÿÿÿÿ
`; ÿ
` &
`ÿ;ÿ&&
`ÿ&ÿ
` ÿ&++ ÿÿÿ
`ÿÿÿÿ
`; ÿ
` &
`ÿ;ÿ
`ÿ&ÿÿ ÿ&& +
`ÿÿÿÿÿÿÿ
` ÿ&++ ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ)
`ÿÿÿÿ/
` &
`ÿ&
`+ÿ
`&
`ÿÿ ÿ& ÿÿÿÿÿÿÿ<
`ÿÿÿ$ÿ!"&
`
`ÿ&& ÿ 'ÿ =
`& ÿ
` +ÿ
`
`ÿÿÿÿÿÿÿ&++ ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ<
`ÿÿÿ#ÿ
`ÿ&& ÿ
`ÿ-.ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
`ÿÿÿ9ÿ ÿÿ-.ÿ
`ÿ
`ÿ 'ÿ ÿ
` & ÿÿÿÿÿÿÿÿ
`ÿÿÿ)ÿ'
`ÿ
`ÿ' +ÿ ÿ-.ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
`ÿÿÿ$ÿÿ* &
`ÿÿ' ÿ-.ÿ
`; ÿÿÿÿÿÿÿÿ
`ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ*&
`+&+ÿ,&ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ6.& ÿ7
`
`Introduction.
`Changes to RFC1541.
`Related Work.
`.
`Problem definition and issues
`Requirements.
`Terminology
`Design goals.
`Protocol Summary.
`Configuration parameters “repository
`Dynamic allocation of network addresses
`The Client-Server Protocol.
`.
`.
`Client-server interaction - allocating a “network: address.
`Client-server interaction - reusing a previously allocated
`network address
`.
`.
`Interpretation and representation of. time values.
`Obtaining parameters with externally configured network
`address
`.
`Client parameters in “DHCP
`.
`Use of DHCP in clients with multiple interfaces
`When clients should use DHCP.
`Specification of the DHCP client-serverYr protocol.
`
`Droms
`
`Standards Track
`
`[Page 1]
`
`Page 1 of 45
`
`Exhibit 1012
`IPR2023-00581
`U.S. Patent 8,886,772
`
`Exhibit 1012
`IPR2023-00581
`U.S. Patent 8,886,772
`
`Page 1 of 45
`
`
`
`RFC 2131
`
`Dynamic Host Configuration Protocol
`
`March 1997
`
`4.1 Constructing and sending DHCP messages. .......... . 22
`4.2 DHCP server administrative controls ........ .. .. . 25
`4.3 DHCP server behavior.
`.
`.
`2.
`2.
`2 ee ee ee ee ee ee eee 26
`4.4 DHCP client behavior.
`.
`.
`. 2...
`1 ee ee ee we ee ee ee 84
`5. Acknowledgments.
`. ..... 2. ee ee ee ee ee ee ew ee 042
`6. References ...
`ee ee ee ee eee AD
`7. Security Considerations. wee ee eee ee ee ee ee ee 2 AB
`8. Author’s Address...
`wee ee ee eee ee ee LAA
`A. Host Configuration Parameters ee ee ee ee ee ee ee 48
`t of Figures
`1. Format of a DHCP message .........-. 2.245454 548488+8
`2. Format of the ’flags’ field. ....
`3. Timeline diagram of messages exchanged between DHCP client and
`servers when allocating a new network address. ..
`4. Timeline diagram of messages exchanged between DHCP client and
`servers when reusing a previously allocated network address.
`. 18
`5. State-transition diagram for DHCP clients. .......... 34
`List of Tables
`1. Description of fields in a DHCP message. ........... 10
`2. DHCP messages. ..
`woe ee ee we ee wl ee 14
`3. Fields and options used. by DHCP servers.
`.
`.
`. 2...
`2 es es 28
`4. Client messages from various states. ............ . 33
`5. Fields and options used by DHCP clients. ...........37
`
`9
`11
`
`15
`
` ÿÿÿÿÿÿÿÿÿÿÿ
`
ÿÿ
`
ÿ
ÿÿÿÿÿÿÿÿÿ
` ÿ
`ÿÿÿÿ
` ÿ
`ÿÿÿÿ
ÿ
` ÿ
` ÿ
ÿÿ
`ÿÿÿÿÿÿÿÿÿÿÿÿ
`ÿÿÿÿÿ ÿ
`
`ÿÿÿÿÿÿÿÿÿÿÿÿ
`ÿÿÿÿÿ ÿ
`
`
ÿ
ÿÿÿÿÿÿÿÿÿÿÿÿÿÿ!
`ÿÿÿÿÿ ÿ"
`
`ÿÿÿÿÿ ÿ"
`
ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ#
`ÿÿÿÿÿ
`ÿÿÿÿÿ
ÿ"
`
`
ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
`ÿÿÿ!ÿÿ$ % & ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
`ÿÿÿ#ÿÿ ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
`ÿÿÿÿÿ'
`ÿÿÿ!ÿÿ$ % & ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
`ÿÿÿ#ÿÿ ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
`ÿÿÿÿÿ'
ÿ
`
ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
`ÿÿÿ(ÿÿ$)ÿ$ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
`ÿÿÿ$ÿÿÿ
`ÿÿÿ(ÿÿ$)ÿ$ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
`ÿÿÿ$ÿÿÿ
`
ÿ
`
`ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ!
`*
`
`ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ!
`*
ÿÿ
`ÿÿÿÿ
`ÿÿ
`ÿÿ
`ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
`ÿÿÿÿ
`ÿÿÿ)
`)ÿ
ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
`ÿÿÿÿ+
`ÿÿÿÿ+
ÿ
`
`ÿÿ
`ÿ,
` ÿ"& ÿÿ
ÿ
`
`ÿÿÿÿÿÿ ÿ& ÿ
`
`
`
`ÿÿÿÿÿÿ ÿ& ÿ
`
`
ÿ
`ÿ &ÿ &%ÿ
`ÿÿÿÿÿÿÿÿÿ!
`ÿÿÿÿ+
`ÿ &ÿ &%ÿ
`ÿÿÿÿÿÿÿÿÿ!
`ÿÿÿÿ+
ÿ
`
`ÿÿ
`ÿ,
` ÿ"& ÿÿ
ÿ
`
`ÿÿÿÿÿÿ ÿ& ÿ
`
`ÿÿÿÿÿÿ ÿ& ÿ
ÿ
`ÿ-
`ÿ-
ÿ
`
`ÿ &%ÿ
`ÿÿ(
`ÿÿÿ!ÿ'
`.
`
`
`ÿ &%ÿ
`ÿÿ(
`ÿÿÿ!ÿ'
`.
`
ÿ
`
`ÿÿÿ
ÿÿÿÿÿÿÿÿÿÿÿ
`*
`*
ÿÿ+
`"
`ÿÿÿÿ
`"
`ÿÿÿÿ
-
ÿÿ
ÿ
ÿ
`ÿÿ
`ÿÿÿÿÿÿÿÿÿÿÿÿ/
`ÿÿÿÿÿ
`ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
`ÿÿÿÿ
`ÿÿ
`ÿÿÿÿÿÿÿÿÿÿÿÿ/
`ÿÿÿÿÿ
`ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
`ÿÿÿÿ
ÿ
` ÿ-
` ÿ-
ÿÿ"ÿÿ ÿÿÿÿÿÿÿÿÿÿÿÿ(
`ÿÿÿÿ
`ÿÿÿÿ
ÿ
`ÿÿ
`
`ÿÿ
`
ÿ
`ÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
`ÿÿÿ!ÿ
`ÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
`ÿÿÿ!ÿ
ÿ
` ÿ-
` ÿ-
ÿÿ"ÿÿ
ÿÿÿÿÿÿÿÿÿÿÿÿ
`ÿ0
`ÿ0
`ÿÿÿ+ÿ
`
ÿÿ
`
ÿ
ÿ12ÿ-
ÿ
`
`ÿÿÿ-
`
`ÿÿ0 ÿÿÿÿ
ÿÿ&ÿ
- 3ÿ
`
`ÿÿÿ- ÿÿ
`
`ÿÿÿ- ÿÿ
ÿ.-
ÿ
`
ÿ-
`
`ÿÿ
`
`ÿÿÿÿ ÿÿ
`ÿÿ
` ÿ
`ÿ
`
`
`ÿÿ
`
`ÿÿÿÿ ÿÿ
`ÿÿ
` ÿ
`ÿ
`
ÿÿ
`
`
`
`
ÿÿ &%
`ÿÿÿ
`ÿÿ
`ÿÿÿÿ
`ÿÿÿ
`ÿÿ
`ÿÿÿÿ
ÿ"
ÿ ÿ
`ÿ
`ÿ
. ÿ4ÿ&ÿ
`ÿÿ
`ÿÿÿÿ
`
`ÿ &%ÿ
`ÿ
` ÿ
ÿ
`
ÿ-
`
`
`ÿÿÿÿ
`
`
`
`ÿÿÿÿ
`
`ÿ
ÿÿÿ+ÿÿ
`
`
ÿÿ
`ÿÿÿ 4ÿÿÿ5 5ÿÿÿ
`ÿÿ-
ÿ
`
6
`
`
`ÿÿÿ-
`
`ÿÿ4ÿ
` ÿÿÿ5
5ÿÿÿ
`ÿ
`ÿÿÿ7
`ÿ
`ÿÿÿ7
ÿ
`
6
`
`
ÿ-
`
`ÿÿ
`ÿÿ
`ÿÿÿ$ÿÿÿ ÿ
` ÿ
`ÿ
`ÿÿ ÿ ÿ,-
`
`ÿÿ
`ÿÿ
`ÿÿÿ$ÿÿÿ ÿ
` ÿ
`ÿ
`ÿÿ ÿ ÿ,-
ÿ
`ÿÿÿÿÿÿ"ÿ
`ÿÿ
`
`ÿÿ+ÿ
ÿÿ
`&
`ÿ
`
`ÿÿÿ- ÿ
`&
`ÿ
`
`ÿÿÿ- ÿ
-
`
`
ÿ
ÿÿ0 ÿ&ÿ-
ÿ
`"
`ÿÿÿ-
`
ÿ
ÿ
` ÿÿ&ÿ
`&ÿÿ- ÿÿÿ7
`ÿÿÿ ÿ,
`-4ÿ0ÿ7
` ÿÿ&ÿ
`&ÿÿ- ÿÿÿ7
`ÿÿÿ ÿ,
`-4ÿ0ÿ7
ÿÿ
ÿÿ
` ÿ-
`
`ÿ&
` ÿ-
`
`ÿ&
ÿ
`ÿÿÿ- ÿ
`ÿÿÿ- ÿ
-
`
`
ÿ&
`ÿÿ8
`ÿ0ÿ
` ÿ"ÿÿ ÿ
`
`ÿÿÿ
`ÿÿ8
`ÿ0ÿ
` ÿ"ÿÿ ÿ
`
`ÿÿÿ
`ÿ%
ÿÿ &%ÿ
`&
`4ÿ
`ÿÿÿ-
`
`
`ÿÿÿ
` ÿ"ÿÿÿ
`ÿÿ
` ÿ ÿ
`ÿÿ$4
`ÿÿÿ
`&
`4ÿ
`ÿÿÿ-
`
`
`ÿÿÿ
` ÿ"ÿÿÿ
`ÿÿ
` ÿ ÿ
`ÿÿ$4
`ÿÿÿ
"ÿ
`ÿ
`
`
`ÿ
`
`
ÿ
ÿ- ÿ ÿ
`ÿ-
`ÿ-
9
`ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ'
`
`ÿ+
` %ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ:
`ÿ;
`
`A host should not act as a DHCP server unless explicitly configured
`to do so by a system administrator.
`The diversity of hardware and
`protocol implementations in the Internet would preclude reliable
`operation if random hosts were allowed to respond to DHCP requests.
`For example,
`IP requires the setting of many parameters within the
`protocol implementation software. Because IP can be used on many
`dissimilar kinds of network hardware, values for those parameters
`cannot be guessed or assumed to have correct defaults. Also,
`distributed address allocation schemes depend on a polling/defense
`
`Introduction
`
`(DHCP) provides configuration
`The Dynamic Host Configuration Protocol
`parameters to Internet hosts.
`DHCP consists of two components: a
`protocol for delivering host-specific configuration parameters from a
`DHCP server to a host and a mechanism for allocation of network
`addresses to hosts.
`
`DHCP is built on a client-server model, where designated DHCP server
`hosts allocate network addresses and deliver configuration parameters
`to dynamically configured hosts. Throughout the remainder of this
`document,
`the term "server" refers to a host providing initialization
`parameters through DHCP, and the term "client" refers to a host
`requesting initialization parameters from a DHCP server.
`
`Droms
`
`Standards Track
`
`[Page 2]
`
`Page 2 of 45
`
`Page 2 of 45
`
`
`ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ'
`
`ÿ+
` %ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ:
`ÿ;
`
`A host should not act as a DHCP server unless explicitly configured
`to do so by a system administrator.
`The diversity of hardware and
`protocol implementations in the Internet would preclude reliable
`operation if random hosts were allowed to respond to DHCP requests.
`For example,
`IP requires the setting of many parameters within the
`protocol implementation software. Because IP can be used on many
`dissimilar kinds of network hardware, values for those parameters
`cannot be guessed or assumed to have correct defaults. Also,
`distributed address allocation schemes depend on a polling/defense
`
`Introduction
`
`(DHCP) provides configuration
`The Dynamic Host Configuration Protocol
`parameters to Internet hosts.
`DHCP consists of two components: a
`protocol for delivering host-specific configuration parameters from a
`DHCP server to a host and a mechanism for allocation of network
`addresses to hosts.
`
`DHCP is built on a client-server model, where designated DHCP server
`hosts allocate network addresses and deliver configuration parameters
`to dynamically configured hosts. Throughout the remainder of this
`document,
`the term "server" refers to a host providing initialization
`parameters through DHCP, and the term "client" refers to a host
`requesting initialization parameters from a DHCP server.
`
`Droms
`
`Standards Track
`
`[Page 2]
`
`Page 2 of 45
`
`Page 2 of 45
`
`
`
`RFC 2131
`
`Dynamic Host Configuration Protocol
`
`March 1997
`
`mechanism for discovery of addresses that are already in use.
`hosts may not always be able to defend their network addresses,
`that such a distributed address allocation scheme cannot be
`guaranteed to avoid allocation of duplicate network addresses.
`
`IP
`so
`
`[In
`DHCP supports three mechanisms for IP address allocation.
`“automatic allocation", DHCP assigns a permanent IP address to a
`client.
`In "dynamic allocation", DHCP assigns an IP address to a
`client for a limited period of time (or until the client explicitly
`relinquishes the address).
`In "manual allocation", a client’s IP
`address is assigned by the network administrator, and DHCP is used
`simply to convey the assigned address to the client.
`A particular
`network will use one or more of these mechanisms, depending on the
`policies of the network administrator.
`
`The format of DHCP messages is based on the format of BOOTP messages,
`to capture the BOOTP relay agent behavior described as part of the
`BOOTP specification [7, 21] and to allow interoperability of existing
`BOOTP clients with DHCP servers. Using BOOTP relay agents eliminates
`the necessity of having a DHCP server on each physical network
`segment.
`
`1.1 Changes to RFC 1541
`
`This document updates the DHCP protocol specification that appears in
`RFC1541.
`A new DHCP message type, DHCPINFORM, has been added; see
`section 3.4, 4.3 and 4.4 for details.
`The classing mechanism for
`identifying DHCP clients to DHCP servers has been extended to include
`"vendor" classes as defined in sections 4.2 and 4.3.
`The minimum
`lease time restriction has been removed. Finally, many editorial
`changes have been made to clarify the text as a result of experience
`gained in DHCP interoperability tests.
`
`Dynamic allocation is the only one of the three mechanisms that
`allows automatic reuse of an address that is no longer needed by the
`client to which it was assigned. Thus, dynamic allocation is
`particularly useful for assigning an address to a client that will be
`connected to the network only temporarily or for sharing a limited
`pool of IP addresses among a group of clients that do not need
`permanent IP addresses. Dynamic allocation may also be a good choice
`for assigning an IP address to a new client being permanently
`connected to a network where IP addresses are sufficiently scarce
`that it is important to reclaim them when old clients are retired.
`Manual allocation allows DHCP to be used to eliminate the error-prone
`process of manually configuring hosts with IP addresses in
`environments where (for whatever reasons) it is desirable to manage
`IP address assignment outside of the DHCP mechanisms.
`
` ÿÿÿÿÿÿÿÿÿÿÿ
`
ÿÿ
`
ÿ
ÿÿÿÿÿÿÿÿÿ
` ÿ
`ÿÿÿ
`
` ÿ
`ÿÿÿ
`
ÿÿ
ÿÿ
`ÿ
`ÿ
`ÿ
`
`ÿ
`ÿ
`ÿ
`ÿ
`
`ÿ
ÿÿÿ
`ÿÿÿÿ
`ÿ ÿ
`!
`ÿ"ÿ
`"ÿÿ ÿ
`ÿÿÿÿ
`ÿ ÿ
`!
`ÿ"ÿ
`"ÿÿ ÿ
ÿ !#ÿ
`$ÿ
`ÿÿÿ
`ÿ ÿ
`ÿ
`$ÿ
`ÿÿÿ
`ÿ ÿ
`ÿ
"ÿ
`ÿ
`
`
`ÿ
`
`
ÿ
ÿ
` ÿ"
`ÿÿÿ
`
` ÿÿ
`
` ÿ"
`ÿÿÿ
`
` ÿÿ
`
ÿ
`
`
`
`
ÿÿ%
`ÿ !#ÿ
`
`ÿÿÿÿ%%ÿÿ
`
ÿÿ ÿ
`ÿ
`
`
`ÿ
`
`
ÿÿ
`ÿÿÿ&
`
`
`ÿÿÿ&
`
`
ÿ
`
`
`
`
&$ÿÿ
`
`
ÿ
`ÿ%
` ÿ ÿ
`ÿÿ
`
`ÿÿÿ
`ÿ%
` ÿ ÿ
`ÿÿ
`
`ÿÿÿ
ÿÿ ÿ&
`
`
ÿ
`
`
`
`
&$ÿÿ
`
`
ÿ
` ÿ ÿ
`ÿÿ
`
`ÿÿÿ
` ÿ ÿ
`ÿÿ
`
`ÿÿÿ
ÿÿ
`ÿ
`ÿ
ÿ%
ÿÿ
ÿ'ÿ
ÿÿ
ÿ(%
`ÿÿÿ
)
ÿÿ
`*ÿÿ ÿ&
`
`ÿ
`
`
`*ÿÿ ÿ&
`
`ÿ
`
`
&$ÿ
`ÿ
`ÿ
+ÿ
`ÿÿÿ
`ÿ
`ÿÿÿ
`ÿ
ÿ
`
`
ÿ"ÿÿ !#ÿ
`
`
`$ÿ
` ÿÿ
ÿ
`ÿÿÿ
`ÿÿÿ
%ÿÿ
ÿÿ
`
`
ÿ
`ÿÿÿ
`ÿÿÿ
ÿÿ,ÿ%
`
`
`
`ÿÿÿ !#ÿ!
ÿÿ ÿÿÿÿÿ
`
`
$ÿ%
ÿ ÿ
`ÿÿÿ%
`ÿÿÿ%
ÿÿÿ !#ÿ
`
`
`
`ÿÿÿ
`
ÿ
`
`
`
`
ÿ
ÿÿ ÿ ÿÿÿÿ
`
`
ÿ
`
`ÿÿÿ
`!ÿ
`
`
`
`ÿÿÿ
`!ÿ
`
`
ÿÿÿ
` ÿ
`ÿ
`ÿ
` ÿ
`ÿ
`ÿ
ÿ ÿ ÿ ÿ"ÿ
`ÿÿÿ
`ÿÿÿ
ÿÿ!
ÿ
ÿ!
`ÿ
`
`ÿ
`
ÿÿ-$ÿ
`
`
ÿ
`
`
`
`
ÿ
`ÿÿÿ%
`
`ÿÿÿ
`
ÿ
` ÿ
`ÿÿ
`ÿ
` ÿ
`ÿÿ
`ÿ
ÿ
`ÿ!
`ÿ!
ÿ"
`ÿÿÿ ÿÿÿ !#ÿ ÿ%
`
`ÿÿÿ ÿÿÿ !#ÿ ÿ%
`
ÿÿÿ
`
`
ÿ
`ÿ
`ÿ
`ÿÿÿ%ÿÿ ÿ
`ÿ
` ÿ
`ÿ%ÿÿ
ÿ
`ÿÿ ÿ
`ÿÿÿ%
` ÿ ÿ
`ÿÿ
`
`ÿÿ ÿ
`ÿÿÿ%
` ÿ ÿ
`ÿÿ
`
ÿ
`
`
`
`
ÿ
`ÿ
`ÿ"ÿ
`ÿÿ
`ÿ
`ÿ"ÿ
`ÿÿ
`ÿÿÿÿ
`
ÿ
` ÿ ÿ
`ÿÿ
`ÿ !ÿ
` ÿ ÿ
`ÿÿ
`ÿ !ÿ
ÿ"
ÿ%
`
`ÿÿÿ ÿÿ
`ÿ !#ÿ!ÿ ÿ
`ÿ
`ÿ
`
`ÿÿÿ ÿÿ
`ÿ !#ÿ!ÿ ÿ
`ÿ
`ÿ
ÿ
`
`ÿÿÿ
`ÿ
`
`ÿÿÿ
`ÿ
ÿ
ÿ
%
` ÿÿ
`
` ÿÿ
`
ÿÿ! ÿÿ
ÿ
`ÿ
`ÿ
`ÿÿÿ
`
`ÿ
`
`
ÿ
`!ÿÿÿ"ÿÿÿ
`!ÿÿÿ"ÿÿÿ
`ÿÿ.%
`ÿÿÿ% ÿÿ
`
`ÿ
ÿÿ!
ÿ ÿ
`ÿ
`ÿ
`ÿÿÿ
ÿ!ÿ'ÿ!
`ÿ
` *ÿ
`ÿ
` *ÿ
ÿ
ÿ
`"ÿÿ
`
`
`ÿÿÿ ÿ
`ÿ
`
ÿ
ÿÿÿÿ
`
`
`ÿÿÿ-ÿ
`ÿÿÿ
`ÿ
ÿ"
`ÿ ÿÿ
`ÿÿ/00-ÿ
`$
`ÿÿÿÿ
`%ÿÿ/00-ÿ
`ÿ
` ÿ"
`
`ÿ ÿÿ
`ÿÿ/00-ÿ
`$
`ÿÿÿÿ
`%ÿÿ/00-ÿ
`ÿ
` ÿ"
`
ÿ
"ÿ
`ÿ%
`ÿÿ
`ÿÿÿ/00-ÿ%
`ÿ%
`ÿÿ
`ÿÿÿ/00-ÿ%
`
ÿ1$ÿ2ÿ
` ÿÿ
`!ÿ
` ÿÿ
`!ÿ
%
`"
`"
ÿÿ(
`ÿÿÿ/00-ÿ
ÿ!
ÿÿÿÿ3
ÿ/00-ÿ
`ÿ
` ÿ
`ÿ
` ÿ
`
`ÿÿÿÿ
ÿÿ
`
`
ÿ
`ÿÿÿ ÿ
` ÿ%
`ÿÿÿ ÿ
` ÿ%
`ÿ !#
`ÿÿÿ
`ÿ
` ÿÿ ÿ45
`ÿÿÿ-
ÿ
ÿ%
`ÿÿÿ% ÿ%
`ÿÿÿ% ÿ%
`
ÿ
`ÿ
`%%
`ÿ
`ÿ
`%%
`ÿ
`ÿÿÿ 45ÿÿ,ÿ !ÿÿ
`ÿ%$ÿ 6 0 $ÿ
`ÿ" ÿ
`7ÿ
`ÿÿÿ
ÿ5$ÿ5ÿ
` ÿ55ÿÿ
`
` ÿ55ÿÿ
`
ÿÿ-ÿ
`
`
ÿ
`
`
ÿ
`ÿÿÿ
`ÿÿÿ
ÿÿ
ÿÿÿÿ
`ÿ" ÿ( ÿÿ
`ÿ" ÿ( ÿÿ
`ÿÿÿ& &ÿ
`ÿ
`ÿ
ÿ
ÿ
ÿ5ÿ
` ÿ5ÿÿ-ÿ
` ÿ5ÿÿ-ÿ
`ÿÿÿ
`ÿ
ÿ
ÿ
`ÿ" ÿÿÿ
`ÿ" ÿÿÿ
`$ÿ
` ÿ
`
`ÿÿÿ
` ÿ
`ÿ" ÿ
`ÿÿ
`
ÿÿ(ÿ
`ÿ
`ÿÿÿ(%
`ÿ
`ÿÿÿ(%
`ÿÿÿ
`
ÿ
ÿÿ
%
`"
`"
ÿ
`ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ8
`
`ÿ-
` #ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ1
`ÿ2
`
`Droms
`
`Standards Track
`
`[Page 3]
`
`Page 3 of 45
`
`Page 3 of 45
`
`
`ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ8
`
`ÿ-
` #ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ1
`ÿ2
`
`Droms
`
`Standards Track
`
`[Page 3]
`
`Page 3 of 45
`
`Page 3 of 45
`
`
`
`RFC 2131
`
`Dynamic Host Configuration Protocol
`
`March 1997
`
`1.2 Related Work
`
`There are several Internet protocols and related mechanisms that
`address some parts of the dynamic host configuration problem.
`The
`Reverse Address Resolution Protocol
`(RARP)
`[10]
`(through the
`extensions defined in the Dynamic RARP (DRARP)
`[5]) explicitly
`addresses the problem of network address discovery, and includes an
`automatic IP address assignment mechanism.
`The Trivial File Transfer
`Protocol
`(TFTP)
`[20] provides for transport of a boot image from a
`boot server.
`The Internet Control Message Protocol
`(ICMP)
`[16]
`provides for informing hosts of additional routers via "ICMP
`redirect" messages.
`ICMP also can provide subnet mask information
`through the "ICMP mask request" message and other information through
`the (obsolete)
`"ICMP information request" message. Hosts can locate
`routers through the ICMP router discovery mechanism [8].
`
`BOOTP is a transport mechanism for a collection of configuration
`information.
`BOOTP is also extensible, and official extensions [17]
`have been defined for several configuration parameters. Morgan has
`proposed extensions to BOOTP for dynamic IP address assignment
`[15].
`The Network Information Protocol
`(NIP), used by the Athena project at
`MIT,
`is a distributed mechanism for dynamic IP address assignment
`[19].
`The Resource Location Protocol RLP [1] provides for location
`of higher level services.
`Sun Microsystems diskless workstations use
`a boot procedure that employs RARP, TFTP and an RPC mechanism called
`“bootparams" to deliver configuration information and operating
`system code to diskless hosts.
`(Sun Microsystems, Sun Workstation
`and SunOS are trademarks of Sun Microsystems, Inc.)
`Some Sun
`networks also use DRARP and an auto-installation mechanism to
`automate the configuration of new hosts in an existing network.
`
` ÿÿÿÿÿÿÿÿÿÿÿ
`
ÿÿ
`
ÿ
ÿÿÿÿÿÿÿÿÿ
` ÿ
`ÿ
`ÿ
`ÿÿÿ!ÿ
`ÿ"
`ÿ# ÿ$ ÿ
` ÿ
`ÿ
`
` ÿ
`ÿ
`ÿ
`ÿÿÿ!ÿ
`ÿ"
`ÿ# ÿ$ ÿ
` ÿ
`ÿ
`
ÿ
`
`ÿÿÿ
`ÿÿ$
`ÿÿÿ
`
`
`ÿÿÿ
`ÿÿ$
`ÿÿÿ
`
ÿÿ
`
ÿ$%ÿÿ!
`ÿÿÿ "ÿ&ÿ
`ÿÿÿ "ÿ&ÿ
ÿ
ÿ' &