I cleared some more queries regarding leasesfile-ro option. Once can
read the conversation at
http://lists.thekelleys.org.uk/pipermail/dnsmasq-discuss/2014q2/008656.html.
TL;DR:
(i) We have to change the leasehelper program to honor the event
'init' and print leases info in dnsmasq leases format (so that dnsmasq
knows about previous leases if it is restarted for some reason).
Bummer. When 'init' is sent to the leases helper program, the
interface name is not known :'( so the helper program doesn't know
which *.status file it has to read and print to stdout.
Simon came up with the following hack:
""
The most obvious nasty hack to make this work would be to have a set of
filesystem links to the real lease-change script, each with a different
name, and configure each dnsmasq to call a unique link. The script then
checks argv[0] to find the name it was called by and then transforms
that into the name of the corresponding database file.
So we have something like
scripts/interface1 is a link to /lib/libvirt/lease-change-
script
scripts/interface2 is a link to /lib/libvirt/lease-change-script
and start dnsmasq with
dnsmasq --interface=interface1 --dhcp-script=scripts/interface1
and the script finds the basename of argv[0[:
scripts/interface1 -> interface1
and prepends the directory where the lease files are
interface1 ->leasefiles/interface1
That works in the absence on the DNSMASQ_INTERFACE variable.
""
Is this hack acceptable?
--
Nehal J Wani