The bootstrap protocol (BootP) is a client-server protocol that is used to assign IP addresses and is based on the UDP protocol. It can be used wherever addresses have to be assigned via the network, such as with diskless workstations. Such workstations work with a program that requests its own IP address from a server when dialing into the network.
With the BootP protocol, the BootP client and server use the UserDatagramProtocol (UDP) for communication. This essentially involves the exchange of a data packet in which the BootP server transmits essential information to the client. This data packet contains the IP address for the client, furthermore the data packet may contain the IP addresses of the next router and that of a specific server, as well as the name of the boot file
Since the BootP client does not yet have an IP address when it dials into the network, it sends a broadcast into the network, which the IP protocol sends as a datagram. The BootP server that receives the broadcast in turn sends a broadcast that reaches all devices in the network. This broadcast contains the IP address for the BootP client, which the client picks up. The boot file is loaded over the network after the BootP server has been recognized, and the diskless computer can initialize itself as a result.
The data frame of the BootP protocol8-bit Operation data field indicates whether it is a request from the client or a response. The hardware field is used to enter the network structures with their speeds and media, and the transaction field is used to enter an integer value to match requests and responses.
The bootstrap protocol is described in RFCs 951and 1084.