Remote Network Boot via PXE

Let's say you're responsible for a network of 100 computers shared by students. What do you do if one of those computers starts acting funny? If you're like me, you'll just do a clean install of the operating system. But that's a lot of work, especially if you have to do it several times a week. Fortunately, most PCs sold since 2001 follow the PC99 guidelines from Intel and Microsoft, which among other things says that new computers with Ethernet interfaces must implement two useful features: wake-on-LAN and network boot.

Wake-on-LAN

If your BIOS is set to enable Wake-On-LAN, and is off, it will turn itself on when it receives a packet containing 6 bytes of FFh followed by 16 copies of its Ethernet address. (See the Wake-On-Lan mini-HOWTO for more details.) This can be used to help force reinstalls of the operating system in the middle of the night, when nobody's there.

Network Boot

There are several ways computers can boot over a network, but the one mandated by PC99 is called PXE. PXE is a kind of DHCP extension, so all you need is an up-to-date DHCP server and a TFTP server.

Back when PC99 and PXE were new, the normal DHCP server hadn't yet been updated to handle PXE, so Red Hat created a package called 'pxe', and has shipped it with all versions of their Linux since 6.2. You probably don't want to use it, though, now that the normal ISC DHCP software shipped with Linux can handle PXE.

Together, a DHCP server and a TFTP server can be set up to handle PXE boot requests. It's up to you what to give the PCs when they boot; several possibilities include

Security

It should be mentioned that booting from a bad server is a big potential security hole, so one should avoid booting over network connections or from servers that are not physically secure.

Examples / Recipes / Articles

Distributions of Linux designed to run as thin clients or diskless workstations

Tools for Remote Booting and Installing

Using PXE to install Linux

Using PXE to boot diskless Linux

Using PXE to boot thin client Linux

Related whitepapers and magazine articles

Schools Using Network Booting for Administration

Old Recipes

Here are a few somewhat out-of-date recipes/howtos that might still be of some interest.

 


Last update: 27 Oct 2002
Copyright 2002, Dan Kegel
[Back to www.kegel.com]