Booting a machine with no disk
How a computer with nothing but a hardware address learns who it is on the network, from ARP and RARP through BOOTP and DHCP to DHCPv6.
- 01
Find your neighbours ARP
Before any host can send an IP packet on Ethernet it has to turn the destination IP address into a hardware address. ARP does that by asking the whole segment, and RARP reuses its packet format.
- 02
Ask for your own address RARP
A machine that knows only its hardware address broadcasts a request and a server that holds a hardware-to-IP table answers. It works on one network segment and returns only an address.
- 03
Make it routable BOOTP
BOOTP carries the same idea over UDP and IP so requests can be relayed across routers, and the reply can also name a server and a boot file. RFC 1542 clarified how BOOTP behaves across relays.
- 04
Fetch the boot image TFTP
With an address and a boot file name in hand, a diskless machine typically downloads its operating system image over TFTP, a deliberately tiny file-transfer protocol that fits in a boot ROM.
- 05
Leases and options DHCP
DHCP grew out of BOOTP. It hands out addresses for a limited time, so they can be reclaimed, and carries a long list of options such as gateway, DNS servers and domain name.
- 06
The IPv6 successor DHCPv6
IPv6 hosts can configure themselves, but DHCPv6 still hands out addresses and options where administrators want control. DHCPv6 was revised as RFC 8415 and then again as RFC 9915.
RFC 9915 DHCPv6 (current)RFC 8415 DHCPv6 (previous revision)