[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