Freebsd – Boot .iso from PXE server via HTTP

apache-2.4freebsdhttppxe-bootsyslinux

I have set up on my FreeBSD 10.3 PXE Boot server, using Syslinux. Boot via TFTP works fine, but via HTTP returns to PXE menu. Getting all files from browser works fine.

# cat /usr/tftpdata/pxelinux.cfg/default

label mfsbsd
  menu label ^MfsBSD 10.3 (TFTP)
  kernel memdisk raw
  initrd images/mfsbsd/mfsbsd-se-10.3-RELEASE-amd64.iso
  append iso raw

label mfsbsd_http
  menu label ^MfsBSD 10.3 (HTTP)
  kernel memdisk raw
  initrd http://172.16.3.5/pxe/images/mfsbsd/mfsbsd-se-10.3-RELEASE-amd64.iso
  append iso raw

tftp folder:

# ls -l /usr/tftpdata
total 560
-r--r--r--  1 root  wheel   24560 Jul 20 00:38 chain.c32
-rw-r--r--  1 root  wheel  111334 Jul 20 00:31 gpxelinux.0
drwxr-xr-x  3 root  wheel     512 Jul 21 19:30 images
-rwxr-xr-x  1 root  wheel  122308 Jul 20 00:39 ldlinux.c32
-r--r--r--  1 root  wheel  186500 Jul 20 00:48 libcom32.c32
-r--r--r--  1 root  wheel   24148 Jul 20 00:45 libutil.c32
-rw-r--r--  1 root  wheel   26140 Jul 20 00:39 memdisk
-rwxr-xr-x  1 root  wheel   26596 Jul 20 00:39 menu.c32
drwxr-xr-x  2 root  wheel     512 Jul 19 14:11 pxelinux.cfg
-rwxr-xr-x  1 root  wheel    1376 Jul 20 00:39 reboot.c32
-rwxr-xr-x  1 root  wheel   27104 Jul 20 00:39 vesamenu.c32

What's wrong?
Thanks to all in advance.

Best Answer

Let's consider that you are trying to boot BIOS clients

if your NBP is pxelinux.0 then you won't be able to use the HTTP capabilities. For HTTP and FTP transfers you must use lpxelinux.0 instead. The prepending "l" stands for the use of the lwIP (lightweight IP) library.