Supporting BOOTP Clients

The Bootstrap Protocol (BOOTP) is a computer configuration protocol developed before DHCP. DHCP improves on BOOTP and resolves specific limitations BOOTP had as a computer configuration service. RFC 951 defines BOOTP.

BOOTP was intended to configure diskless workstations with limited boot capabilities, while DHCP was intended to configure frequently relocated networked computers (such as portables) that have local hard drives and full boot capabilities.

Because of the relationship between BOOTP and DHCP, both protocols share some defining characteristics. The common elements include:

  • The format structure used to exchange client/server messages.
    BOOTP and DHCP use nearly identical request messages (sent by clients) and reply messages (sent by servers). Messages in either of these protocols use a single User Datagram Protocol (UDP) datagram of 576 bytes to enclose each protocol message. Message headers are the same for both BOOTP and DHCP with one exception: The final message header field used to carry optional data. For BOOTP, this optional field is called the vendor-specific area and is limited to 64 octets. For DHCP, this area is called the options field and can carry up to 312 octets of DHCP options information.
    Because DHCP and BOOTP messages use nearly identical format types and packet structures, and typically use the same well-known service ports, BOOTP or DHCP relay agent programs usually treat BOOTP and DHCP messages as essentially the same message type, without differentiating between them.

  • Use of well-known UDP ports for client/server communication.
    Both BOOTP and DHCP use the same reserved protocol ports for sending and receiving messages between servers and clients. Both BOOTP and DHCP servers use UDP port 67 to listen for and receive client request messages. BOOTP and DHCP clients typically reserve UDP port 68 for accepting message replies from either a BOOTP server or DHCP server.

  • IP address distribution as an integral part of configuration service.
    Although both BOOTP and DHCP allocate IP addresses to clients during startup, they use different methods of allocation. BOOTP typically provides fixed allocation of a single IP address for each client, permanently reserving this address in the BOOTP server database. DHCP typically provides dynamic, leased allocation of available IP addresses, reserving each DHCP client address temporarily in the DHCP service database.

  • The downloading of the image file by the BOOTP client is performed using the Trivial File Transfer Protocol (TFTP).
    Clients contact TFTP servers to perform file transfer of their boot image. Because Windows 2000 does not provide a TFTP file service, you need a third-party TFTP server to support BOOTP clients that must boot from an image file (usually diskless workstations). You also need to configure your DHCP server to provide supported BOOTP/DHCP options.

The implementation of BOOTP support described in this section assumes that the DHCP service is already installed and correctly configured for DHCP clients.

For more information about BOOTP, see RFCs 1532, 2131, and 2132. Support for BOOTP is also available with Windows NT Server 4.0 with Service Pack 2 and later.