[Dnsmasq-discuss] mixup of tftp-root and boot filename

Simon Kelley simon at thekelleys.org.uk
Sun Aug 3 21:02:58 BST 2008


Carlos Carvalho wrote:
> I have
> 
> tftp-root=/var/remoteboot 
> 
> in dnsmasq.conf. For a machine I have in dhcp-options:
> 
> ometepe,vl5,67,"/tftpboot/pxelinux.0"
> 
> In the log there is
> 
> dnsmasq[16090]: sent size: 21 option: 67:bootfile-name  2f:74:66:74:70:62:6f:6f:74:2f:70:78:65...
> 
> Checking with the ascii table this looks correct. However, the client
> says it cannot find /var/remoteboot/tftpboot/pxelinux.0. Removing the
> tftp-root= setting in dnsmasq.conf makes the client get the correct
> /tftpboot/pxelinux.0 so the problem seems to be in dnsmasq.

It's behaving as designed: You've set the TFTP root to be 
/var/remoteboot, so filenames are relative to that root. The client asks 
for /tftpboot/pxelinux.0 so dnsmasq tries to send 
/var/remoteboot/tftpboot/pxelinux.0 which doesn't exist, so it returns 
an error, which inlcudes a message giving the complete pathname. That's 
what the client it displaying.

Note that if the filename includes a leading /, dnsmasq  will also try 
assuming it's an absolute pathname, but only if the first part of the 
filename matches the tftp-root.
> 
> In a first look I didn't find any places where this concatenation
> could happen. Note that the tftp server is not the machine running
> dnsmasq in this case.
Now I'm confused. What is the TFTP server?

> The dnsmasq log shows no TFTP request but I
> vaguely remember Simon saying that these are not logged.
>
File-not-found is not logged, since it clutters up the log with lots of 
failed attempts by PXELinux to read possible config files.


Cheers,

Simon.





> _______________________________________________
> Dnsmasq-discuss mailing list
> Dnsmasq-discuss at lists.thekelleys.org.uk
> http://lists.thekelleys.org.uk/mailman/listinfo/dnsmasq-discuss
> 




More information about the Dnsmasq-discuss mailing list