Thank you for the response.
The subnet in question is a user wireless subnet, I suppose it's
possible somebody has cloned vm's on it, but that wouldn't really be a
common use case. The logs don't seem to have the DUID, so you can't
really tell if that's happening:
Aug 21 22:44:13 altair dhcpd: Relay-forward message from 2620:df:8000:1::14:2 port 547, link address 2620:df:8000:4701::2, peer address fe80::1c3a:33b8:2028:e74a
Aug 21 22:44:13 altair dhcpd: Unable to pick client address: noaddresses available - shared network 2620:df:8000:4701::/64: 4294967296 total, 5486 active, 0 abandoned
We can try to get a packet capture, but we get a *lot* of dhcp traffic
8-/. Unless I'm missing something in the logs, it would probably be a
better first step for us to update the logging code to include the DUID
so we'd be able to tell if we're just hitting the scenario you mention
and the failed DUID already has an active lease.
Thanks...
On Wed, Aug 23, 2017 at 02:08:52PM +0000, Thomas Markwalder via RT wrote:
> What you are most likely seeing is the result of one or more devices
> that appear to be the same client because they have the same DUID.
> This often opens when client VMs are cloned from a template. They
> alternate with one client getting the address while the other issues a
> decline because the DAD test fails. The 100 tries is essentially per
> DUID. In a given subnet if the algorithm cannot find an available
> address after 100 attempts of hashing into the pool for a given DUID,
> you'll see that error.
>
> Clients that do not have duplicates should be getting addresses
> without issue.
>
> You'd need to examine the server logs. If you need further help we
> would we need to see at least the server log and pcaps.
>
> Regards,
>
> Thomas Markwalder
> ISC Software Engieering
>
> On Tue Aug 22 19:57:26 2017, henson@cpp.edu wrote:
> > Bug Report from www.isc.org:
> >
> > Name: Paul B. Henson
> > Email: henson@cpp.edu
> > Software Version: 4.3.3P1
> > OS: Gentoo Linux
> > Subject:V6 - dhcpd: Unable to pick client address: no addresses
> > available
> >
> >
> > Bug Detail
> > ===========
> > In a /64 pool with only 5577 addresses allocated, the server says no
> > addresses are available:
> >
> > dhcpd: Unable to pick client address: no addresses available - shared
> > network 2620:df:8000:4701::/64: 4294967296 total, 5577 active, 0
> > abandoned
> >
> > It seems with over 4 *billion* to choose from one could be found 8-/.
> > It looks like this issue comes from:
> >
> >
https://github.com/mpalmer/isc-
> > dhcp/blob/6a90108410e9dcf22e458ca950b055e1ece3761
> > 8/server/mdb6.c#L931-
> > L1080
> >
> > where it arbitrarily hashes the DUID only 100 times looking for an
> > address to give out before giving up. The comment at the top says
> > "Realistically this will only happen in very full pools", I hereby
> > introduce the author to the difference between statistics and real
> > life ;).
> >
> > It seems when there are 4 billion free addresses this function should
> > not throw up its hands and give a "no addresses available" error :(.
> >
> > Thanks...
> >
> > ---
> > This email was received through isc.org Bug Submission Form
>
--
Paul B. Henson | (909) 979-6361 |
http://www.cpp.edu/~henson/
Operating Systems and Network Analyst | henson@cpp.edu
California State Polytechnic University | Pomona CA 91768