DHCPBOOTP

DHCP/BOOTP

Bootstrap Protocol (BOOTP) and Dynamic Host Configuration Protocol (DHCP) are IP protocols that run when a network starts. DHCP is a modernization of BOOTP. These protocols allow a target to start up somewhat unaware of itself. The idea is that after the target has booted itself, it will talk to a BOOTP or DHCP server to retrieve configuration information about itself. Following is the format for a BOOTP header; DHCP is similar.

Op

1 byte

Htype

1 byte

Hlen

1 byte

Hops

1 byte

Transaction ID

4 bytes

Seconds

2 bytes

Unused

2 bytes

Client IP

4 bytes

Your IP

4 bytes

Server IP

4 bytes

Router IP

4 bytes

Client MAC Address

16 bytes

Server Host Name

64 bytes

Boot File Name

128 bytes

Vendor Specific Area

64 bytes

To retrieve its configuration data, the target device must issue a BOOTP broadcast request. Like Ethernet, IP also has an address that is dedicated to broadcast: 255.255.255.255 . If there is a BOOTP server on the network, the BOOTP server might respond. The response includes information such as the servers IP address, the IP address that the target is to use, the IP address of the gateway on this subnet, the subnet mask, a boot file name, and an IP address from which to get this boot file. DHCP expands this capability to allow the target and server to establish a dynamic IP address. When the target boots up, it talks to a DHCP server to retrieve information similar to the BOOTP information but with the option that the IP address assigned to the device can be temporary, which is called DHCP IP address leasing . Typically, the server and client establish some time-out period after which the client must request an extension on the lease of the IP address. The client may or may not be granted the extension, depending on how the DHCP server is configured.



Embedded Systems Firmware Demystified
Embedded Systems Firmware Demystified (With CD-ROM)
ISBN: 1578200997
EAN: 2147483647
Year: 2002
Pages: 118
Authors: Ed Sutter

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net