iPXE discussion forum

Full Version: ipxe network unreachable error
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
Hi,

I want to use ipxe to boot acronis from the network.
So I configured dnsmasq to supply undiony.kbxe to a legacy bios pxe client.

This is working, however when iPXE is booted it gives me a error :
[TXE: 1 x "Network unreachable (http://ipxe.org/28086011)"]

(I tried to compile ipxe from sources but this gives the same error)

[Image: open?id=0B0Bq-5YzpcgzVXhKVklBREQ0RGM]

I'm able to hit Ctrl-B and exectute a script from a webserver server using:
dhcp
chain http://192.168.0.200/default.ipxe

This default.ipxe than loads acronis
The relevant error you get are "Nothing to boot: No such file or directory (http://ipxe.org/2d03e13b)"

Most likely your dhcp gives out an invalid filename
(2017-10-21 18:16)NiKiZe Wrote: [ -> ]The relevant error you get are "Nothing to boot: No such file or directory (http://ipxe.org/2d03e13b)"

Most likely your dhcp gives out an invalid filename

You're right!
The first error was not the problem.
So I checked ${filename} and echo ${root-path}, which were both empty.

Then I figured out that because I use dnsmasq as a dhcp / pxe service in parallel to my routers dhcp server, I could only use pxe-service and not dhcp-boot!

Using a dhcp-match I check if it's the first or second dhcp request and supply the right file accordingly!

My working dnsmasq.config file:
Code:
# A configuration for dnsmasq to function as a proxyDHCP server,
# enabling LTSP clients to boot when an external, unmodifiable DHCP
# server is present.

# Don't function as a DNS server:
port=0

# Log lots of extra information about DHCP transactions.
log-dhcp

# Disable re-use of the DHCP servername and filename fields as extra
# option space. That's to avoid confusing some old or broken DHCP clients.
dhcp-no-override

dhcp-match=set:ipxe,175 # iPXE sends a 175 option.

#note: filename should be without the .0 extension, the pxe-service will always add the extension
pxe-service=tag:!ipxe,X86PC,"Boot from Network for x86 legacy BIOS",undionly.kpxe
pxe-service=tag:!ipxe,BC_EFI,"Boot from Network for x86-64 UEFI",ipxe.efi

# the second DHCP request: serve default.ipxe over tftp
pxe-service=tag:ipxe,X86PC,"Supply ipxe script",default.ipxe
pxe-service=tag:ipxe,BC_EFI,"Supply ipxe script",default.ipxe

# This range(s) is for the public interface, where dnsmasq functions
# as a proxy DHCP server providing boot information but no IP leases.
# Any ip in the subnet will do, so you may just put your server NIC ip here.
dhcp-range=172.20.2.0,proxy

#Enable tftp
enable-tftp
tftp-root=/var/lib/tftpboot

Note that for the files that are loaded from tftp the .0 extension needs to be added.

The default.ipxe loads acronis from http.
Reference URL's