spawning classes bug?

Troy Ayers troya at wcta.net
Fri Oct 30 14:32:46 UTC 2020


We limit each customer, which is uniquely identified with a combination of circuit ID, and remote id, to two IP addresses.  Like so:

class "customer" {spawn with concat(option agent.remote-id," interface ",binary-to-ascii(10,8,".",substring(option agent.circuit-id,0,2)));
lease limit 2;}


This is reproducible with dhcp 442.  There are no other spawn classes.  Lease times are 24 hours.


Customer has router A, using one IP with mac 11:11:11:11:11:11

Router A gets disconnected and replaced with Router B.

Router B gets an IP.  This is the 2nd IP with mac 22:22:22:22:22:22

Router B updates firmware, and reboots.

Then we get this over and over...?
DHCPDISCOVER from 22:22:22:22:22:22 via 10.x.x.x: no available billing: lease limit reached in all matching classes (last: 'customer')

?

The clients MAC did not change.

The clients billing sub-class (concatenated remote id, circuit id) did not change.


I've examined the leases file while this is occurring.  There is:

billing subclass "customer" "ShelfXYZ interface 0.0";

One for Router A's MAC and one for Router B's MAC address.


When we run into this, we have to allow their billing subclass to have a lease limit of 3, temporarily.


Re-examining the leases file after allowing a "3rd IP", shows that the client gets the same 2nd IP on the Router B,  and the leases file shows the same two billing sub-classes & same MAC addresses.


I've tried ignore-client-uids, to no effect.


What can I do to allow this Router B, without temporarily allowing a lease limit of "3" ?


Also, this behavior is not always reproducible, this is what is especially baffling to me.


-Troy
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.isc.org/pipermail/dhcp-users/attachments/20201030/5f103029/attachment.htm>


More information about the dhcp-users mailing list