DHCP, Dynamic Host Configuration Protocol

Description Glossary RFCs Publications Obsolete RFCs

Description:

Protocol suite: TCP/IP.
Protocol type:Application layer configuration protocol.
Related protocols: BOOTP, Bootstrap Protocol.
Ports: 67 (UDP) server.
68 (UDP) host.
MIME subtype:
SNMP MIBs:
Working groups: dhc, Dynamic Host Configuration.
ip1394, IP Over IEEE 1394.
Links: IANA: ARP assigned numbers.
IANA: BOOTP/ DHCP options.
dhcp.org

DHCP servers can interoperate with BOOTP clients.

DHCP options have the same format as BOOTP vendor extensions.

RFC 2131:

There are two primary differences between DHCP and BOOTP. First, DHCP defines mechanisms through which clients can be assigned a network address for a finite lease, allowing for serial reassignment of network addresses to different clients. Second, DHCP provides the mechanism for a client to acquire all of the IP configuration parameters that it needs in order to operate.

DHCP introduces a small change in terminology intended to clarify the meaning of one of the fields. What was the "vendor extensions" field in BOOTP has been re-named the "options" field in DHCP. Similarly, the tagged data items that were used inside the BOOTP "vendor extensions" field, which were formerly referred to as "vendor extensions," are now termed simply "options."


MAC header IP header UDP header DHCP header Data :::

DHCP header:

0001020304050607 0809101112131415 1617181920212223 2425262728293031
Opcode Hardware type Hardware address length Hop count
Transaction ID
Number of seconds Flags
Client IP address
Your IP address
Server IP address
Gateway IP address
Client hardware address :::
Server host name :::
Boot filename :::
Options :::

Opcode. 8 bits.

ValueDescription
1BOOTREQUEST, Boot request.
2BOOTREPLY, Boot reply.

Hardware type. 8 bits.

ValueDescriptionReferences
1Ethernet. 
2Experimental Ethernet. 
3Amateur Radio AX.25. 
4Proteon ProNET Token Ring. 
5Chaos. 
6IEEE 802. 
7ARCNET. 
8Hyperchannel. 
9Lanstar. 
10Autonet Short Address. 
11LocalTalk. 
12LocalNet (IBM PCNet or SYTEK LocalNET). 
13Ultra link. 
14SMDS. 
15 Frame Relay. 
16ATM, Asynchronous Transmission Mode. 
17HDLC. 
18 Fibre Channel.RFC 4338
19ATM, Asynchronous Transmission Mode.RFC 2225
20Serial Line. 
21ATM, Asynchronous Transmission Mode. 
22MIL-STD-188-220. 
23Metricom. 
24IEEE 1394.1995. RFC 2855
25MAPOS. 
26Twinaxial. 
27EUI-64. 
28HIPARP. 
29IP and ARP over ISO 7816-3. 
30ARPSec. 
31IPsec tunnel.RFC 3456
32 Infiniband.RFC 4391
33CAI, TIA-102 Project 25 Common Air Interface. 
34Wiegand Interface. 
35Pure IP. 

Hardware address length. 8 bits.

Hop count. 8 bits.
This field is used by relay agents.

Transaction ID. 32 bits.
A random number chosen by the client, used by the client and server to associate messages and responses between a client and a server.

Number of seconds. 16 bits.
The elapsed time in seconds since the client began an address acquisition or renewal process.

Flags. 16 bits.
Defined in RFC 1542.

0001020304050607 0809101112131415
B 0

B, Broadcast. 1 bit.

Client IP address. 32 bits.

Your IP address. 32 bits.

Server IP address. 32 bits.

Gateway IP address. 32 bits.

Client hardware address. 16 bytes.

Server host name. 64 bytes.

Boot filename. 128 bytes.

BOOTP/DHCP options. Variable length.
The first four bytes contain the (decimal) values 99, 130, 83 and 99. This is the same magic cookie as has been defined for BOOTP. The remainder of the field consists of a list of tagged parameters that are called options. All of the vendor extensions used by BOOTP are also DHCP options.


Glossary:

Automatic allocation.
A host is allocated a permanent IP address.

Binding.
A collection of configuration parameters, including at least an IP address, associated with a DHCP client. Bindings are managed by DHCP servers.

BOOTP relay agent.
A host or router that passes DHCP messages between DHCP clients and DHCP servers. DHCP is designed to use the same relay agent behavior as has been specified for the BOOTP protocol.

DHCP client.
An Internet host using DHCP to obtain configuration parameters.

DHCP host.
A node that uses DHCP to set configuration parameters.

DHCP server.
An Internet host that returns configuration parameters to DHCP clients.

Dynamic allocation.
A host is allocated an IP address for a limited time period or until the host explicitly relinquishes the address.

Manual allocation.
A host is assigned an IP address and DHCP is used to convey the assigned address to the host.


RFCs:

[RFC 1534] Interoperation Between DHCP and BOOTP.

[RFC 2131] Dynamic Host Configuration Protocol.

[RFC 2132] DHCP Options and BOOTP Vendor Extensions.

[RFC 2241] DHCP Options for Novell Directory Services.

[RFC 2242] NetWare/IP Domain Name and Information.

[RFC 2485] DHCP Option for The Open Group's User Authentication Protocol.

[RFC 2563] DHCP Option to Disable Stateless Auto-Configuration in IPv4 Clients.

[RFC 2610] DHCP Options for Service Location Protocol.

[RFC 2855] DHCP for IEEE 1394.

[RFC 2937] The Name Service Search Option for DHCP.

[RFC 2939] Procedures and IANA Guidelines for Definition of New DHCP Options and Message Types.

[RFC 3004] The User Class Option for DHCP.

[RFC 3011] The IPv4 Subnet Selection Option for DHCP.

[RFC 3046] DHCP Relay Agent Information Option.

[RFC 3118] Authentication for DHCP Messages.

[RFC 3203] DHCP reconfigure extension.

[RFC 3256] The DOCSIS (Data-Over-Cable Service Interface Specifications) Device Class DHCP (Dynamic Host Configuration Protocol) Relay Agent Information Sub-option.

[RFC 3361] Dynamic Host Configuration Protocol (DHCP-for-IPv4) Option for Session Initiation Protocol (SIP) Servers.

[RFC 3396] Encoding Long Options in the Dynamic Host Configuration Protocol (DHCPv4).

[RFC 3397] Dynamic Host Configuration Protocol (DHCP) Domain Search Option.

[RFC 3442] The Classless Static Route Option for Dynamic Host Configuration Protocol (DHCP) version 4.

[RFC 3456] Dynamic Host Configuration Protocol (DHCPv4) Configuration of IPsec Tunnel Mode.

[RFC 3495] Dynamic Host Configuration Protocol (DHCP) Option for CableLabs Client Configuration.

[RFC 3527] Link Selection sub-option for the Relay Agent Information Option for DHCPv4.

[RFC 3594] PacketCable Security Ticket Control Sub-Option for the DHCP CableLabs Client Configuration (CCC) Option.

[RFC 3634] Key Distribution Center (KDC) Server Address Sub-option for the Dynamic Host Configuration Protocol (DHCP) CableLabs Client Configuration (CCC) Option.

[RFC 3679] Unused Dynamic Host Configuration Protocol (DHCP) Option Codes.

[RFC 3825] Dynamic Host Configuration Protocol Option for Coordinate-based Location Configuration Information.

[RFC 3925] Vendor-Identifying Vendor Options for Dynamic Host Configuration Protocol version 4 (DHCPv4).

[RFC 3942] Reclassifying Dynamic Host Configuration Protocol version 4 (DHCPv4) Options.

[RFC 3993] Subscriber-ID Suboption for the Dynamic Host Configuration Protocol (DHCP) Relay Agent Option.

[RFC 4014] Remote Authentication Dial-In User Service (RADIUS) Attributes Suboption for the Dynamic Host Configuration Protocol (DHCP) Relay Agent Information Option.

[RFC 4030] The Authentication Suboption for the Dynamic Host Configuration Protocol (DHCP) Relay Agent Option.

[RFC 4039] Rapid Commit Option for the Dynamic Host Configuration Protocol version 4 (DHCPv4).

[RFC 4174] The IPv4 Dynamic Host Configuration Protocol (DHCP) Option for the Internet Storage Name Service.

[RFC 4280] Dynamic Host Configuration Protocol (DHCP) Options for Broadcast and Multicast Control Servers.

[RFC 4361] Node-specific Client Identifiers for Dynamic Host Configuration Protocol Version Four (DHCPv4).

[RFC 4388] Dynamic Host Configuration Protocol (DHCP) Leasequery.

[RFC 4390] Dynamic Host Configuration Protocol (DHCP) over InfiniBand.

[RFC 4477] Dynamic Host Configuration Protocol (DHCP): IPv4 and IPv6 Dual-Stack Issues.

[RFC 4578] Dynamic Host Configuration Protocol (DHCP) Options for the Intel Preboot eXecution Environment (PXE).

[RFC 5192] DHCP Options for Protocol for Carrying Authentication for Network Access (PANA) Authentication Agents.

[RFC 5223] Discovering Location-to-Service Translation (LoST) Servers Using the Dynamic Host Configuration Protocol (DHCP).

[RFC 5417] Control And Provisioning of Wireless Access Points (CAPWAP) Access Controller DHCP Option.


Publications:


Obsolete RFCs:

[RFC 1497] BOOTP Vendor Information Extensions.

[RFC 1531] Dynamic Host Configuration Protocol.

[RFC 1533] DHCP Options and BOOTP Vendor Extensions.

[RFC 1541] Dynamic Host Configuration Protocol.

[RFC 2489] Procedure for Defining New DHCP Options.


Description Glossary RFCs Publications Obsolete RFCs