[Dnsmasq-discuss] dnsmasq dhcpProxy and PXE next-server not working

Simon Kelley simon at thekelleys.org.uk
Wed Aug 27 21:56:24 BST 2014


On 26/08/14 08:48, Jorge Schrauwen wrote:
> Hey All,
> 
> I'm trying to setup a pxe server using dnsmasq and grub2 pxe
> (some minor testing with iPXE too).
> 
> The initial PXE binary gets send and downloaded over tftp fine,
> however the next-server is set to my main dhcp server and not the
> dnsmasq server acting as a proxy.
> 
> So grub2 is useless because it cannot load anything from the tftp root.
> I also verified it with iPXE's config that next-server is set to my
> main dhcp server's IP and not the proxy.
> 
> Is this a bug or am I doing something wrong? Config below.\
> 
> Would configuring a normal dhcp server instead that only reponds
> to PXE clients be a better solution than a dhcp proxy? That would
> mean I need to change my existing dhcp server to ignore pxe clients.
> I would rather not do this.
> 
> 
> 
> (I cannot compile a newer dnsmasq on solaris it fails to compile)
> root at aurora# dnsmasq -v
> Dnsmasq version 2.68  Copyright (c) 2000-2013 Simon Kelley
> Compile time options: IPv6 GNU-getopt no-DBus no-i18n no-IDN
> DHCP DHCPv6 no-Lua TFTP no-conntrack no-ipset auth
> 
> This software comes with ABSOLUTELY NO WARRANTY.
> Dnsmasq is free software, and you are welcome to redistribute it
> under the terms of the GNU General Public License, version 2 or 3.
> 
> root at aurora# cat /opt/obd/etc/dnsmasq.conf
> ##### dnsmasq configuration
> ### set user/group
> user=dnsmasq
> group=dnsmasq
> 
> ### logging
> ## specify syslog facility (- to disable)
> log-facility=-
> log-dhcp
> log-queries
> 
> ### interfaces
> interface=zaurora0
> bind-interfaces
> 
> ### dns server
> port=0
> 
> ### tftp server
> enable-tftp
> tftp-root=/srv/pxe
> 
> ### dhcp server
> dhcp-leasefile=/opt/obd/var/dnsmasq/dnsmasq.leases
> dhcp-range=172.16.15.254,proxy
> ## iPXE debug
> ##  this works, because iPXE will fetch
> http://aurora.acheron.be/boot.ipxe initially
> ##  config shows next-server of 10.1.0.1 and not 10.1.0.254
> #dhcp-userclass=set:ipxe-boot,iPXE
> #dhcp-boot=tag:!ipxe-boot,boot.kpxe,10.1.0.254
> #dhcp-boot=tag:ipxe-boot,http://aurora.acheron.be/boot.ipxe,10.1.0.254
> #pxe-prompt=tag:!ipxe-boot,"Press F8 for boot menu", 5
> ## grub2 pxe
> ##  this fails, sets root to (pxe:10.1.0.1) and not to (pxe:10.1.0.254)
> ##  due to wrong next-server. Initial tftp payload of grub.0 makes it
> dhcp-vendorclass=set:pxe,PXECLient
> dhcp-boot=tag:!pxe,boot/grub/i386-pc/grub.0,10.1.0.254
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

> pxe-prompt=tag:!pxe,"Press F8 for boot menu", 5
> 


Try using  pxe-service instead of dhcp-boot in the config I've underlined.

Something like

pxe-service=x86PC,"Boot via PXE", grub, 10.1.0.254

I'm not sure you can use a path as  the basename, so I've left the path
out, you'll have to adjust the TFTP tree to compensate.

Simon.





More information about the Dnsmasq-discuss mailing list