Configure isc-dhcpd for static guests (PXE on FreeBSD)


After basic configuration of "Diskless Operation with PXE" on FreeBSD (, I wanted to build config, so that specific machines get specific IPv4 address, and specific rootfs location on tftp server, so that I can have multiple root's on one hard-drive. After a couple of hours (two days really) reading manpage, searching internet and testing random configuration methods, I finally got it. Here's how to.


My configuration file

option domain-name "";
option domain-name-servers,;

default-lease-time 600;
max-lease-time 7200;
log-facility local7;

subnet netmask {
	option subnet-mask;
	option routers;
	option broadcast-address;
	option domain-name-servers;
	option domain-name "";
	host server01 {
		hardware ethernet 08:00:27:13:6B:19;
		filename "FreeBSD/server01/boot/pxeboot";
		option root-path "";
	host server02 {
		hardware ethernet 08:00:27:13:6B:1A;
		filename "FreeBSD/server02/boot/pxeboot";
		option root-path "";

Things to look out for

Quick tutorial on how to make rootfs from CD

# mount cdrom
mount_cd9660 /dev/cd0 /mnt

# copy needed sets
cp /mnt/usr/freebsd-dist/{base,kernel,lib32}.txz /b

# create root directory
mkdir /b/tftpboot/FreeBSD/install
cd /b/tftpboot/FreeBSD/install

# untar them
tar xvf /b/base.txz
tar xvf /b/kernel.txz
tar xvf /b/lib32.txz

# unmount cd
umount /mnt