BOOTP and DHCP
This article is translated from official Microsoft documents. If you have any reprinted documents, please indicate the source.
BOOTP is short for the Bootstrap Protocol, and DHCP is short for the Dynamic Host Configuration Protocol. As the same as the Host Configuration Protocol, BOOTP first appeared, and DHCP was improved based on it, and fixed some special restrictions. Rfc951 defines BOOTP in detail.
Similarities
BOOTP and DHCP are closely related, so they share some common features. These commonalities include:
• |
Format Structure of interaction between server and client information BOOTP and DHCP use almost identical request messages (sent by the client) and reply messages (sent by the server ). Messages are encapsulated using UDP datagram of 576 bytes. The message header is basically the same, except that the last field in the message header is used to load the option data. For BOOTP, this optional field is called the "vendor-specific" area and is limited to 64 bytes. DHCP calls this field the "option" area and can hold up to 312 bytes. |
• |
Client/Server Communications use the same well-known port BOOTP and DHCP servers and clients use the same reserved protocol port to send and receive information. Their server listens to UDP port 67 and receives messages from the client. All their clients use the reserved UDP port number 68 to receive replies from the server. Because the boot and DHCP messages use almost identical format and packet structure, the same well-known service port number is used, therefore, boot or DHCP relay servers often regard BOOTP or DHCP packets as essentially the same packet type without distinction. |
• |
Address Allocation is an essential part of the Configuration Service. Although BOOTP and DHCP are assigned IP addresses when the client is started, they use different allocation methods. BOOTP provides a way to assign a fixed IP address to each client and reserve this address in the database forever. DHCP provides a dynamic lease to allocate available IP addresses and reserve IP addresses for each client for a period of time. |
BOOTP/DHCP differences
BOOTP and DHCP have significant differences in host configuration. The following table compares the different features of the two Protocols.
BOOTP |
DHCP |
Appear first than DHCP |
Appears after BOOTP |
Diskless workstation used to configure limited startup capabilities |
It is mainly used to configure a frequently-moving networked computer with a hard drive and all startup capabilities. |
The default IP address lease time for dynamic BOOTP is 30 days. |
DHCP default IP address lease expiration time is 8 days |
Support for a limited number of client vendor extension configuration parameters |
Supports a set of client configuration parameters that are larger and more scalable, called options |
The configuration is divided into two phases: 1. The client contacts the server to obtain the IP address and Startup File. 2. The client transfers the startup image file through the TFTP server. |
In a single-phase STARTUP configuration, the client negotiates with the server to obtain the detailed initial configuration required for IP addresses and other network operations. |
The BOOTP client does not rebind or refresh the configuration from the server unless the system restarts. |
You can re-bind or refresh the configuration from the server without restarting the system. Correspondingly, the client automatically enters the rebinding status after the specified time to refresh the lease Address allocation. This process is performed on the backend and transparent to users. |