NetBoot server principle
To setup a PXE NetBoot infrastructure you MUST have:
Overview of a NetBoot sequence
1. Client broadcasts a DHCPDISCOVER message.
2. The DHCP server responds with:
- the computer IP address,
- TFTP server address (called "next-server"),
- PXE boot filename to load,
- NetBoot root-path values.
3. The client sends a TFTP request to "next-server", asking to retrieve the PXE filename.
4. The TFTP server responds and sends filename to client.
5. Many things here:
- The client executes filename, which is in PXE format.
- The PXE menu will be display so the user can choose which kernel to load
- Then PXE loads the kernel.
- When the kernel executes, the root file system specified by root-path is mounted. If it's a diskless workstation then the client distribution will be mounted in NFS mode.
The following picture describes the same thing as before in the sequential order:
Note that you have to prepare the image before being able to boot on it. ^^
1. First you need to setup a DHCP and DNS server.
2. Then you'll need to setup a TFTP server and setup some kernels for NetBoot
3. Setup a NFS server
4. Create a NFS image
5. Reference the NFS image into the TFTP server
6. Run the image ! ;)
The 1st overview picture comes from the FreeBSD forum: http://www.nl.freebsd.org/doc/handbook/network-diskless.html