Thursday, 4 September 2014

Tiny PXE Server tryout

I had seen Erwans Tiny PXE Server app but tonight I decided to try it out.

I wanted to just boot a WinPE ISO file via PXE as I thought this would be the easiest to get going.

Documentation for getting started is not that well organised on or in his Blog.
I eventually found a Blog post here for booting PE.

Here are step-by-step instructions for how I did it:

1. On My Windows 8.1 x64 PC, I downloaded Tiny PXE Server from (check the download link in this post)

2. I extracted the files to C:\temp\pxesrv on my Windows system

3. I copied a WinPE_x86.ISO file that I had lying around to the C:\temp\pxesrv\files folder.

4. I used NotePad to create a winpe.ipxe text file in the C:\temp\pxesrv\files folder as below:

dhcp net0
set boot-url http://${dhcp-server}
initrd ${boot-url}/images/WinPE_x86.ISO
kernel ${boot-url}/memdisk iso raw

5. Next I ran the C:\temp\pxesrv\pxesrv.exe file and changed a few settings as show in the red boxes below:

Note that I needed to choose a DHCP server address of 192.168.1.xx to match the subnet address of the router.
The Extra Option also needed to be set to  -> vendor option is (etherboot length 6 code 1 length 1 value 1 code 8 length 1 value 1). More details here

When you are happy with the settings - click the Online button.

6. Finally, I connected an Ethernet cable from my router to my EeePC 904HA netbook, switched it on and selected 'Network Boot' from the BIOS Boot menu.. VIOLA! - it started to load the ISO into memory and then booted to it! The EeePC now runs WinFE via PXE boot.

I have not yet experimented any further with Tiny PXE Server, but so far it looks encouraging!

Erwan has more examples on his Blog here and some quick HowTo's are here for different payloads.

Tip: If you are having problems PXE booting from a real system, it may be due to your router or client system. A good test is to run a Virtual Box virtual machine. Just set the Network adapter to 'Bridged' - start the VM - press F12 and then L for Lan. It should then PXE boot. This tends to bypass your router + cable + client and often works when a real system does not!