[gPXE] PXE and DANMasq boot - Insight appreciated.

21 views
Skip to first unread message

Lukas Bradley

unread,
Feb 25, 2014, 9:10:02 AM2/25/14
to gP...@etherboot.org
I'm attempting to boot machines from a server (192.168.1.45) over a network using PXE boot and DNSMasq. My network presently utilizes a DHCP server on a VPN/Firewall, so I don't want to run a DHCP server on the server itself.

When I start the client computer, it seems to connect to the server, but doesn't proceed with a boot. The remote computer just hangs showing "Start PXE over IPv4".

The /var/log/messages on the server shows the following.

Code:

Feb 24 15:10:45 localhost dnsmasq[14487]: started, version 2.48 DNS disabled
Feb 24 15:10:45 localhost dnsmasq[14487]: compile time options: IPv6 GNU-getopt DBus no-I18N DHCP TFTP "--bind-interfaces with SO_BIN
DTODEVICE"
Feb 24 15:10:45 localhost dnsmasq-dhcp[14487]: DHCP, proxy on subnet 192.168.1.255
Feb 24 15:11:20 localhost dnsmasq-dhcp[14487]: 3423833039 Available DHCP subnet: 192.168.1.255/255.255.255.0
Feb 24 15:11:20 localhost dnsmasq-dhcp[14487]: 3423833039 Vendor class: PXEClient:Arch:00007:UNDI:003016
Feb 24 15:11:20 localhost dnsmasq-dhcp[14487]: 3423833039 PXE(eth0) bc:5f:f4:97:be:ab proxy
Feb 24 15:11:20 localhost dnsmasq-dhcp[14487]: 3423833039 tags: eth0
Feb 24 15:11:20 localhost dnsmasq-dhcp[14487]: 3423833039 bootfile name: pxelinux.0
Feb 24 15:11:20 localhost dnsmasq-dhcp[14487]: 3423833039 next server: 192.168.1.45
Feb 24 15:11:20 localhost dnsmasq-dhcp[14487]: 3423833039 sent size:  1 option: 53:message-type  02
Feb 24 15:11:20 localhost dnsmasq-dhcp[14487]: 3423833039 sent size:  4 option: 54:server-identifier  192.168.1.45
Feb 24 15:11:20 localhost dnsmasq-dhcp[14487]: 3423833039 sent size:  9 option: 60:vendor-class  50:58:45:43:6c:69:65:6e:74
Feb 24 15:11:20 localhost dnsmasq-dhcp[14487]: 3423833039 sent size: 17 option: 97:client-machine-id  00:00:02:00:03:00:04:00:05:00:0
6:00:07...
Feb 24 15:11:20 localhost dnsmasq-dhcp[14487]: 3423833039 sent size: 10 option: 43:vendor-encap  06:01:08:0a:04:00:50:58:45:ff
Feb 24 15:11:24 localhost dnsmasq-dhcp[14487]: 3423833039 Available DHCP subnet: 192.168.1.255/255.255.255.0
Feb 24 15:11:24 localhost dnsmasq-dhcp[14487]: 3423833039 Vendor class: PXEClient:Arch:00007:UNDI:003016
Feb 24 15:11:24 localhost dnsmasq-dhcp[14487]: 3423833039 PXE(eth0) bc:5f:f4:97:be:ab proxy
Feb 24 15:11:24 localhost dnsmasq-dhcp[14487]: 3423833039 tags: eth0
Feb 24 15:11:24 localhost dnsmasq-dhcp[14487]: 3423833039 bootfile name: pxelinux.0
Feb 24 15:11:24 localhost dnsmasq-dhcp[14487]: 3423833039 next server: 192.168.1.45
Feb 24 15:11:24 localhost dnsmasq-dhcp[14487]: 3423833039 sent size:  1 option: 53:message-type  02
Feb 24 15:11:24 localhost dnsmasq-dhcp[14487]: 3423833039 sent size:  4 option: 54:server-identifier  192.168.1.45
Feb 24 15:11:24 localhost dnsmasq-dhcp[14487]: 3423833039 sent size:  9 option: 60:vendor-class  50:58:45:43:6c:69:65:6e:74
Feb 24 15:11:24 localhost dnsmasq-dhcp[14487]: 3423833039 sent size: 17 option: 97:client-machine-id  00:00:02:00:03:00:04:00:05:00:0
6:00:07...
Feb 24 15:11:24 localhost dnsmasq-dhcp[14487]: 3423833039 sent size: 10 option: 43:vendor-encap  06:01:08:0a:04:00:50:58:45:ff
The DNSMasq config is the following:

Code:

#set port to 0 so that dnsmasq knows its not being used as a dns server
port=0
log-dhcp
dhcp-range=192.168.1.255,proxy
#dhcp-boot=http://192.168.1.45/
enable-tftp
tftp-root=/var/lib/tftpboot
dhcp-boot=pxelinux.0,fileserver,192.168.1.45
The /var/lib/tftpboot directory:

Code:

drwxrwxr-x   3 root root     4096 Feb  4 10:35 .
drwxr-xr-x. 37 root root     4096 Feb 24 11:10 ..
-rw-r--r--   1 root root       97 Feb 24 15:02 boot.txt
drwxrwxr-x   3 root root     4096 Feb  4 10:35 debian-installer
-rw-r--r--   1 root root 24117248 Feb  4 10:35 mini.iso
-rw-r--r--   1 root root 13703974 Feb  4 10:35 netboot.tar.gz
lrwxrwxrwx   1 root root       33 Feb 24 15:07 pxelinux.0 -> debian-installer/amd64/pxelinux.0
lrwxrwxrwx   1 root root       35 Feb 24 15:07 pxelinux.cfg -> debian-installer/amd64/pxelinux.cfg
-rw-rw-r--   1 root root       64 Feb  4 10:35 version.info
My pxelinux.cfg configuration looks as follows:

Code:

# D-I config version 2.0
include debian-installer/amd64/boot-screens/menu.cfg
default debian-installer/amd64/boot-screens/vesamenu.c32
prompt 1
timeout 0
Any comments, suggestions, or insight appreciated.

Oliver Rath

unread,
Feb 25, 2014, 9:26:59 AM2/25/14
to gp...@etherboot.org
Hi Lukas,

It seems you are using generic pxe, not gpxe or similar. I used a comparable configuration (dnsmasq as proxy), but did first overload the pxe with ipxe (www.ipxe.org, gpxe is a zombie). Maybe your generic pxe implementation doesnt support different pxe-boot-server?

Nevertheless, the The IP 192.168.1.45 should be the IP of the machine that runs DNSMASQ.

So, dhcp-range=192.168.1.45,proxy

Hth
Oliver
_______________________________________________
gPXE mailing list
gP...@etherboot.org
http://etherboot.org/mailman/listinfo/gpxe

Reply all
Reply to author
Forward
0 new messages