[Dnsmasq-discuss] specifying dhcp options in proxy mode

Simon Kelley simon at thekelleys.org.uk
Mon May 22 23:14:34 BST 2017

On 12/05/17 15:35, Andriy Gapon wrote:
> On 11/05/2017 14:36, Simon Kelley wrote:
>> The design is that dnsmasq sends the options expected by a PXE client if
>> it's acting as a proxy (because the whole proxy thing is part of the PXE
>> spec: a normal DHCP client doesn't know how to deal with it.) The
>> replies to the PXE client are constructed using the information given in
>> the pxe-service and pxe-prompt options. The inclusion of arbitrary
>> vendor-specific options is an oversight, I think.
>> As the PXE-spec doesn't AFAIK, include root-path as an expected option,
>> I'm not sure that sending it will have any effect.
>> As stated in the thread you link to, if you're netbooting an OS via PXE
>> then one the OS starts, it will do DHCP again, and that's the time to
>> send arbitrary options.
>> TL;DR I don't think implementing what you're asking for will achieve
>> what you want, but if you can demonstrate that it will, then I'll
>> certainly looking at adding the extra function.
> Simon,
> thank you very much for reply.
> My reason for wanting that feature is to support a scenario where is a main DHCP
> server that is tasked only with giving out network information and which I can
> not modify at all.  In my opinion options like root-path, swap-server and
> similar belong to the same league as, say, bootfile-name rather than, say,
> dns-server or router.  In either case, my main DHCP server is not configured to
> advertise root-path.
> Also, in my case it is the OS that wants to get root-path not the first stage
> PXE loader.
> So, without dnsmasq allowing me to send root-path option there is no way I can
> give it to the OS.
> I thought that the purpose of the proxy mode was exactly to help with PXE / OS
> booting in situations where the main DHCP server can not be altered to do that job.
> Having said all of the above, I should admit that the OS in question could be
> non-compliant with the PXE specification.  Maybe it should use a different
> mechanism like vendor options or a configuration file (advertised via
> bootfile-name) to get the information it needs.

To the best of my knowledge it's _only_ PXE clients which can accept
extra options from a proxy. PXE is a superset of DHCP, which includes
that functionality. The DHCP clients run by the OS are just that - DHCP
clients, they don't know how to do the PXE proxy-server tricks.



More information about the Dnsmasq-discuss mailing list