Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages


home | help
PXEBOOT(8)		FreeBSD	System Manager's Manual		    PXEBOOT(8)

     pxeboot --	Preboot	Execution Environment (PXE) bootloader

     The pxeboot bootloader is a modified version of the system	third-stage
     bootstrap loader(8) configured to run under Intel's Preboot Execution En-
     vironment (PXE) system.  PXE is a form of smart boot ROM, built into In-
     tel EtherExpress Pro/100 and 3Com 3c905c Ethernet cards, and Ethernet-
     equipped Intel motherboards.  PXE supports	DHCP configuration and pro-
     vides low-level NIC access	services.

     The DHCP client will set a	DHCP user class	named FreeBSD to allow flexi-
     ble configuration of the DHCP server.

     The pxeboot bootloader retrieves the kernel, modules, and other files ei-
     ther via NFS over UDP or by TFTP, selectable through compile-time op-
     tions.  In	combination with a memory file system image or NFS-mounted
     root file system, pxeboot allows for easy,	EEPROM-burner free construc-
     tion of diskless machines.

     The pxeboot binary	is loaded just like any	other boot file, by specifying
     it	in the DHCP server's configuration file.  Below	is a sample configura-
     tion for the ISC DHCP v3 server:

	   option domain-name "";
	   option routers;
	   option subnet-mask;
	   option broadcast-address;
	   option domain-name-servers;
	   server-name "DHCPserver";

	   default-lease-time 120;
	   max-lease-time 120;

	   subnet netmask {
		  filename "pxeboot";
		  if exists user-class and option user-class = "FreeBSD" {
		       option root-path	"tftp://";

     next-server is the	IP address of the next server in the bootstrap
     process, i.e.  your TFTP server or	NFS server.  pxeboot recognizes	option
     root-path directives as the server	and path to NFS	mount for file re-
     quests, respectively, or the server to make TFTP requests to.  Note that
     pxeboot expects to	fetch /boot/loader.rc from the specified server	before
     loading any other files.

     Valid option root-path syntax is the following

     /path		 path to the root filesystem on	the NFS	server

     ip://path		 path to the root filesystem on	the NFS	server ip

     nfs://path		 path to the root filesystem on	the NFS	server

     nfs://ip/path	 path to the root filesystem on	the NFS	server ip

     tftp://path	 path to the root filesystem on	the TFTP server

     tftp://ip/path	 path to the root filesystem on	the TFTP server	ip

     pxeboot defaults to a conservative	1024 byte NFS data packet size.	 This
     may be changed by setting the nfs.read_size variable in
     /boot/loader.conf.	 Valid values range from 1024 to 16384 bytes.

     In	all other respects, pxeboot acts just like loader(8).

     For further information on	Intel's	PXE specifications and Wired for Man-
     agement (WfM) systems, see


     The pxeboot bootloader first appeared in FreeBSD 4.1.

     The pxeboot bootloader was	written	by John	Baldwin	<> and
     Paul Saab <>.  This manual page was written by Doug White

FreeBSD	13.0		       February	15, 2021		  FreeBSD 13.0


Want to link to this manual page? Use this URL:

home | help