[Dnsmasq-discuss] RFE: improve dnsmasq survivability and resilience

Gene Czarcinski gene at czarc.net
Sun Nov 4 15:33:19 GMT 2012


On 11/04/2012 08:29 AM, simon at thekelleys.org.uk wrote:
>> These days many/some systems have made quick bootup speed an important
>> objective.  Thus, on Fedora 17 with performance hardware, NetworkManager
>> and dnsmasq are in a race for initializing interfaces and dnsmasq is
>> losing.
>>
>> By losing I mean that dnsmasq fails startup because one or more of its
>> interfaces are not completely initialized.  The chrond date/time
>> client/server (in place of ntpd) does not have that problem and
>> completes initialization when interface initialization is complete.
>>
>> Once dnsmasq is running, and interface can be taken down (disconnect)
>> and later re-enabled/connectioned and dnsmasq handles that situation fine.
>>
>> It sure would be better if dnsmasq always handled this situation.
>>
>
> Does the dnsmasq configuration include --bind-interfaces? If so I think
> the solution is already present in 2.63 and above. Replace bind-interfaces
> with --bind-dynamic.
Yes, this might be the answer.

First of all, this has nothing to do with libvirt but, instead, runs on 
real hardware.  I am not sure I need bind-anything because to chance of 
needing to run more than on instance is between zero and none.

I was using interface= and no listen-address= when I first noticed the 
failure at boot time.  I tried changing to using listen-address= and no 
interface= definitions but it made no difference.  I do want to limit 
things so that only networks on specific interfaces or only specific 
networks will be handled.

One advantage I see of specifying interface= is that if a new network 
appears on an interface (lets say that an interface with only an IPv4 
definition had an IPv6 definition added) that no change would be necessary.

With respect to bind-interfaces and bind-dynamic, which type (interface= 
or listen-address=) is better?

Given what I stated above, should I remove the bind-interface? Would 
that make dnsmasq be able to cope with an non-initialized interface?

Gene



More information about the Dnsmasq-discuss mailing list