[Dnsmasq-discuss] default lease time for dhcp-host entries ?
Maule Mark
mark_maule at yahoo.com
Mon Dec 16 21:37:48 GMT 2013
okay, thank you for checking.
On Monday, December 16, 2013 3:27 PM, Simon Kelley <simon at thekelleys.org.uk> wrote:
On 16/12/13 21:00, Maule Mark wrote:
>> As an alternative to a fake tag to remove the empty field, would it work
>> to declare a static dhcp-range in my configuration file to cover the
>> addresses that are managed by the hostsfile?
>>
>
>No. As you'd expect, lease times configured for individual hosts
>override those in dhcp-ranges.
>
>I looked at the code, and it looks like the problem is indeed the double
>comma.
>
>,,
>
>gets treated that same as
>
>,0,
>
>ie a lease time of zero.
>
>That's a bug, but the easiest way for you to work around it is to avoid
>the double comma.
>
>Cheers,
>
>Simon.
>
>>
>> On Monday, December 16, 2013 2:47 PM, Maule Mark <mark_maule at yahoo.com>
>> wrote:
>>
>> I don't think our client is asking for a lease time. Or if it was,
>> I would also expect it to make the request on the very first
>> DHCPREQUEST, which gets the correct 1h lease.
>>
>> The double comma is to establish a placeholder field where we can
>> plug in an optional tag: field, which we do in certain situations to
>> influence the next dhcp exchange for this id. The program we use to
>> manage this file rigidly expects each line to have the same number
>> of fields if this optional tag exists or not.. I'll try putting a
>> fake tag in that field and see if it solves the 2m lease time issue.
>>
>>
>>
>>
>> On Monday, December 16, 2013 2:28 PM, Simon Kelley
>> <simon at thekelleys.org.uk> wrote:
>>
>> On 16/12/13 19:36, Maule Mark wrote:
>> > I'm seeing an unexptected (to me) behavior when using a dnsmasq
>> > hostsfile and dhcp. To start, my interface (pmi_if) is
>> configured with
>> > a lease time of 1h (the default), and I have a blank hostsfile.
>> >
>> > dhcp-leasefile=/var/lib/axiom/dnsmasq_pmi.leases
>> > dhcp-hostsfile=/var/lib/axiom/dnsmasq_pmi_hostsfile
>> > dhcp-range=172.30.80.0,static,255.255.255.0
>> > dhcp-range=172.30.80.200,172.30.80.240,255.255.255.0
>> > dhcp-lease-max=255
>> > dhcp-option=option:dns-server,172.30.80.1
>> > dhcp-option=option:router,172.30.80.1
>> > dhcp-option=option:ntp-server,172.30.80.1,172.30.80.2,172.30.80.3
>> > dhcp-option=option:default-ttl,50
>> > dhcp-option=option:all-subnets-local,1
>> > dhcp-script=/var/lib/axiom/dhcp-script-pmi.sh
>> > dhcp-boot=/pds/pxe/pxelinux.0,172.30.80.1
>> >
>> > Clients boot and are assigned dhcp addresses as expected. We
>> have a
>> > program in our software stack that looks for heartbeat
>> messages on this
>> > pmi_if, and when detected, constructs a hostsfile entry for
>> the client
>> > that looks like this:
>> >
>> > [root at pilot2 <mailto:root at pilot2> axiom]# cat
>> dnsmasq_pmi_hostsfile
>> >
>> 00:21:28:A1:F3:F2,00:21:28:A1:F3:F3,,WN5080020001592690,172.30.80.128
>> >
>> 00:21:28:A1:CA:3A,00:21:28:A1:CA:3B,,WN5080020001592691,172.30.80.129
>> >
>> > The clients are running udhcpc from busybox.
>> >
>> > Everything works as expected until the clients get toward the
>> end of
>> > their 1h lease period at which point the clients start sending
>> > DHCPREQUEST requests. It seems at this point, that the
>> leases granted
>> > are now 120s. Here's some syslog output showing the first
>> DHCPREQUEST
>> > being sent about 55 minutes into the 1h initial lease. Why
>> did dnsmasq
>> > return a lease time of 12s in this case?
>> >
>> > 2013-12-16 19:33:42.253+00:00 pilot2 dnsmasq-dhcp[23916]:
>> 208328817
>> > DHCPREQUEST(pmi_if) 172.30.80.129 00:21:28:a1:ca:3a
>> > 2013-12-16 19:33:42.253+00:00 pilot2 dnsmasq-dhcp[23916]:
>> 208328817
>> > tags: known, pmi_if
>> > 2013-12-16 19:33:42.253+00:00 pilot2 dnsmasq-dhcp[23916]:
>> 208328817
>> > DHCPACK(pmi_if) 172.30.80.129 00:21:28:a1:ca:3a
>> WN5080020001592691
>> > 2013-12-16 19:33:42.253+00:00 pilot2 dnsmasq-dhcp[23916]:
>> 208328817
>> > requested options: 1:netmask, 3:router, 6:dns-server,
>> 12:hostname,
>> > 2013-12-16 19:33:42.253+00:00 pilot2 dnsmasq-dhcp[23916]:
>> 208328817
>> > requested options: 15:domain-name, 28:broadcast, 42:ntp-server
>> > 2013-12-16 19:33:42.253+00:00 pilot2 dnsmasq-dhcp[23916]:
>> 208328817
>> > bootfile name: /pds/pxe/pxelinux.0
>> > 2013-12-16 19:33:42.253+00:00 pilot2 dnsmasq-dhcp[23916]:
>> 208328817
>> > server name: 172.30.80.1
>> > 2013-12-16 19:33:42.253+00:00 pilot2 dnsmasq-dhcp[23916]:
>> 208328817 next
>> > server: 172.30.80.3
>> > 2013-12-16 19:33:42.253+00:00 pilot2 dnsmasq-dhcp[23916]:
>> 208328817 sent
>> > size: 1 option: 53 message-type 5
>> > 2013-12-16 19:33:42.253+00:00 pilot2 dnsmasq-dhcp[23916]:
>> 208328817 sent
>> > size: 4 option: 54 server-identifier 172.30.80.3
>> > 2013-12-16 19:33:42.253+00:00 pilot2 dnsmasq-dhcp[23916]:
>> 208328817 sent
>> > size: 4 option: 51 lease-time 2m
>> > 2013-12-16 19:33:42.253+00:00 pilot2 dnsmasq-dhcp[23916]:
>> 208328817 sent
>> > size: 4 option: 58 T1 56s
>> > 2013-12-16 19:33:42.253+00:00 pilot2 dnsmasq-dhcp[23916]:
>> 208328817 sent
>> > size: 4 option: 59 T2 1m41s
>> > 2013-12-16 19:33:42.253+00:00 pilot2 dnsmasq-dhcp[23916]:
>> 208328817 sent
>> > size: 4 option: 1 netmask 255.255.255.0
>> > 2013-12-16 19:33:42.253+00:00 pilot2 dnsmasq-dhcp[23916]:
>> 208328817 sent
>> > size: 4 option: 28 broadcast 172.30.80.255
>> > 2013-12-16 19:33:42.253+00:00 pilot2 dnsmasq-dhcp[23916]:
>> 208328817 sent
>> > size: 5 option: 15 domain-name axiom
>> > 2013-12-16 19:33:42.253+00:00 pilot2 dnsmasq-dhcp[23916]:
>> 208328817 sent
>> > size: 18 option: 12 hostname WN5080020001592691
>> > 2013-12-16 19:33:42.253+00:00 pilot2 dnsmasq-dhcp[23916]:
>> 208328817 sent
>> > size: 20 option:209 70:78:65:6c:69:6e:75:78:2e:63:66:67:2f:64...
>> > 2013-12-16 19:33:42.253+00:00 pilot2 dnsmasq-dhcp[23916]:
>> 208328817 sent
>> > size: 4 option:208 f1:00:74:7e
>> > 2013-12-16 19:33:42.253+00:00 pilot2 dnsmasq-dhcp[23916]:
>> 208328817 sent
>> > size: 12 option: 42 ntp-server 172.30.80.1, 172.30.80.2,
>> 172.30.80.3
>> > 2013-12-16 19:33:42.253+00:00 pilot2 dnsmasq-dhcp[23916]:
>> 208328817 sent
>> > size: 4 option: 3 router 172.30.80.1
>> > 2013-12-16 19:33:42.253+00:00 pilot2 dnsmasq-dhcp[23916]:
>> 208328817 sent
>> > size: 4 option: 6 dns-server 172.30.80.1
>> >
>> >
>> > Is there a default lease time of 120s for client requests whose
>> > addresses which match a hoststfile entry?.
>>
>> No, there's no 120s default, but there is a 120s floor (ie no
>> lease less
>> the 120s will be issued).
>>
>> Note that the DHCP _client_ can ask for a particular lease time, it
>> would be interesting to see if it's sending a lease-time option
>> for 120s
>> or less in the DHCPREQUEST packet.
>>
>> Another potential issue is your hostfile:
>>
>> 00:21:28:A1:CA:3A,00:21:28:A1:CA:3B,,WN5080020001592691,172.30.80.129
>>
>> I've not looked, but the double comma may concievably confuse
>> the parser
>> such that it looks like a zero, which then gets interpreted as a
>> lease
>> time, and transformed to 120s by the floor.
>>
>> I think that is the most likely explanation.
>>
>> Cheers,
>>
>> Simon.
>>
>>
>> >
>> > thanks
>> > Mark
>>
>> >
>> >
>> >
>> > _______________________________________________
>> > Dnsmasq-discuss mailing list
>> > Dnsmasq-discuss at lists.thekelleys.org.uk
>> <mailto:Dnsmasq-discuss at lists.thekelleys.org.uk>
>> > http://lists.thekelleys.org.uk/mailman/listinfo/dnsmasq-discuss
>> >
>>
>>
>> _______________________________________________
>> Dnsmasq-discuss mailing list
>> Dnsmasq-discuss at lists.thekelleys.org.uk
>> <mailto:Dnsmasq-discuss at lists.thekelleys.org.uk>
>> http://lists.thekelleys.org.uk/mailman/listinfo/dnsmasq-discuss
>>
>>
>>
>>
>> _______________________________________________
>> Dnsmasq-discuss mailing list
>> Dnsmasq-discuss at lists.thekelleys.org.uk
>> <mailto:Dnsmasq-discuss at lists.thekelleys.org.uk>
>
>> http://lists.thekelleys.org.uk/mailman/listinfo/dnsmasq-discuss
>>
>>
>
>
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.thekelleys.org.uk/pipermail/dnsmasq-discuss/attachments/20131216/af76c9d8/attachment-0001.html>
More information about the Dnsmasq-discuss
mailing list