[Dnsmasq-discuss] Dnsmasq-2.77 pxelinux.0 question

Chris Novakovic chris at chrisn.me.uk
Mon Jun 5 22:30:13 BST 2017


On 05/06/17 12:38, Steven Shiau wrote:
> I have a question about using dnsmasq 2.77 as the PXE booting service.
> This is running on Debian Sid amd64 version, the package is from Debian
> repository:
> 
> root at debian:~# dpkg -l dnsmasq
> Desired=Unknown/Install/Remove/Purge/Hold
> |
> Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend
> |/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad)
> ||/ Name                   Version          Architecture     Description
> +++-======================-================-================-=================================================
> ii  dnsmasq                2.77-1           all              Small
> caching DNS proxy and DHCP/TFTP server
> 
> root at debian:~# dpkg -l dnsmasq-base
> Desired=Unknown/Install/Remove/Purge/Hold
> |
> Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend
> |/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad)
> ||/ Name                   Version          Architecture     Description
> +++-======================-================-================-=================================================
> ii  dnsmasq-base           2.77-1           amd64            Small
> caching DNS proxy and DHCP/TFTP server
> 
> I have configured dnsmasq.conf as:
> root at debian:~# cat /etc/dnsmasq.conf
> log-dhcp
> dhcp-no-override
> enable-tftp
> tftp-root=/tftpboot/nbi_img
> dhcp-range=192.168.120.3,proxy
> 
> ## PXEClient:Arch:00000
> pxe-service=X86PC, "Boot BIOS PXE", pxelinux.0
> 
> ## PXEClient:Arch:00007
> pxe-service=BC_EFI, "Boot UEFI BC", bootx64.efi
> 
> ## PXEClient:Arch:00009
> pxe-service=X86-64_EFI, "Boot UEFI X86-64", bootx64.efi
> 
> pxe-prompt="Booting PXE Client", 1
> 
> However, when I boot the PXE client, it fails and the error messages is
> "PXE-T01: file /tftpboot/nbi_img/pxelinux/pxelinux.0.0" not found"
> as attached.
> 
> I remember in dnsmasq <= 2.75, it used to append ".0" to the PXE
> basename file. However, for dnsmasq 2.76, the PXE basename is not
> appended with ".0" if I use basename as "pxelinux.0".
> 
> I did not see any related description about this change in the changelog
> for dnsmasq-2.77:
> http://lists.thekelleys.org.uk/pipermail/dnsmasq-discuss/2017q2/011542.html
> 
> Is this just a regression, or is it meant to revert to the old way? Or
> where am I wrong?

This appears to be a regression that was introduced in commit f77700aa,
right before the release of 2.77. The logic of appending ".<layer>" was
inverted by that commit. I'm just testing a quick patch I wrote that
restores the expected behaviour, then I'll post it to the list...



More information about the Dnsmasq-discuss mailing list