April 2009
    gPXE is a PXE boot loader that supports HTTP.
    This makes it possible for a client to be booted with what the server thinks is appropriate, based on whatever information we like to make it depend on.
    gPXE is actually meant to be put in a BOOT ROM, but a gPXE bootstrap can be chainloaded onto a standard NIC with onboard PXE support using a DHCP and a TFTP server.
    The basic setup also describes other DHCP servers, but the Linux case in short is:
    
group gpxe
  {
  if substring (option vendor-class-identifier, 0, 9) = "PXEClient"
    {
      allow booting;
      next-server 129.125.36.36;
      filename "undionly.kpxe"; # This file compiled from the newest PXELinux source
    }
  if exists user-class and option user-class = "gPXE"
    {
      filename "http://my.domain.com/pub/boot/boot.php";
    }
  
  host sandbox  { hardware ethernet 00:11:22:33:44:55 ; fixed-address 192.168.65.43 ; }
  
  } # end group gpxe