Setting up pfSense as PXE server
I have been using a PXE server for quite some time now, using pfSense for DHCP and FreeNAS for the rest. Now that I have tftpd on pfSense I thought I would give it a try….
tftpd is enable and I’ve copied gpxelinux.0 and pxelinux.cfg/default to the tftpboot directory. These are copies of the files which work on FreeNAS.
I have enabled network booting under Services -> DHCP Server
set TFTP Server and Next Server to 192.168.1.1 (pfSense)
set Default BIOS name and Root path correctly…
But, when the PXE client boots I get this msg:
PXE-T01: File not found
PXE-E3B: TFTP Error - File Not found
Any ideas on what may have been overlooked? Permissions… Is there a tftpd log file…
Can help wondering if TFTPD needs to be configured in some way…
I can connect to it but am unable to send or receive files. On FreeNAS there is an optional parameters like ‘-u root’. Do I need something like that with pfSense?
The only thing I did is to set the max block size to 1468 and enable the tftp server. I had trouble uploading some files through the interface and had to use winscp to copy the files to /tftpboot.
The file pxelinux.0 is not sufficient for pxe booting. You also need (vesa)menu.c32 and a few other files from the syslinux distribution. I initially had menu.c32 installed but was missing the other. If I remember correctly though, the error messages were clear about which dependencies were missing.
I am not familiar with the gpxelinux.0 file you are using what the difference to pxelinux.0 is. So the above may not apply to your situation.
Issues with pxelinux.0 and menu.c32 are problems further down the road… At the moment nothing is being retrieved from the tftp server… I can’t even use the command line to do a ‘get’
Some simple examples are here:-
In contrast everything works as it should when using FreeNAS, so I’m wondering which version of Tftp Server is installed on pfSense and configuration options there are…
Which version of pfSense are you running? Also which version of Syslinux do you use? I’m just trying to get 6.03 working after installing 4.04 a year ago. Some things don’t seem to work on the newer release.
I am running pfSense 2.3.3_1 but first installed tftpd under 2.3.3. I use syslinux 6.03. If you cannot get a basic connection to work, something seems indeed wrong. Have you checked with “ps -aux” from the shell whether the demon is started at all? Have you tried uninstalling and reinstalling the package?
I have reinstalled the pkg, but it still doesn’t work.
You did not say, but I assume you also checked that the tftpd demon is actually running, correct? If so, I would suggest trying a fresh install on a VirtualBox VM with only the tftp package. If that works you have some interference to work out.
I managed to get it working today by using a different pxelinux.0 program…. Don’t know how I used the wrong one, but I’m glad it’s sorted.