<html><head><title>Re: Troubleshooting: no free leases</title>
</head>
<body>
<br><br>
<br>
<table>
<tr>
<td width=2 bgcolor= #0000ff><br>
</td>
<td><span style=" font-family:'courier new'; font-size: 9pt;">Hi,<br>
fwiw, I just upgraded isc-dhcp-server, I'm now running: 4.3.1-6+deb8u2 (things were working fine before that point, I'm not sure offhand what version I was running previously,  unfortunately). And I got the problem below. I've since upgraded to 4.3.5-3 (Debian stretch) without any improvement.<br>
<br>
And I hit "no free leases".<br>
I'm hoping someone could help me figure out what's going wrong / how to fix it.<br>
<br>
This is most of my dhcpd.conf [1] file. <br>
<br>
The client I'm trying to get a lease for is a </span><a style=" font-family:'courier new'; font-size: 9pt;" href="http://modern.ie">modern.ie</a><span style=" font-family:'courier new'; font-size: 9pt;"> Windows10 VM [2] running in VirtualBox 5.1.24 on macOS Sierra w/ guest additions Bridging an Thunderbolt Ethernet Adapter [MAC address: 08:00:27:d0:ad:b7]<br>
WireShark shows the windows 10 system sends:<br>
  MSEDGEWIN10<.MSFT 5.07<br>
WireShark reports it as:<br>
  Client FQDN: MSEDGEWIN10<br>
  vendor-class-data: MSFT 5.0<br>
... which should match my "win" class. <br>
<br>
None of my pool ranges appear "full" [3]. <br>
<br>
The class match is not logged.<br>
<br>
For comparison, here's background logging [4], and what I get when I troubleshoot the Windows 10 network [5].<br>
<br>
pool 10.4.6.1 .. 10.4.6.254 has allow unknown-clients, which is where it would go if it wasn't matched.<br>
<br>
One basic question I have is: How do i tell if a pool is "full"?<br>
<br>
It would be very helpful to me for debugging if I could get isc-dhcp-server to "explain" how it decided that it had no more space.<br>
<br>
From my naive perspective none of my pools are full, but I'd rather be able to ask isc-dhcp-server its opinion.<br>
<br>
I also tried stopping isc-dhcp-server<br>
<br>
<br>
There's no configuration for a failover pair, and the word "failover" isn't present in my config file.<br>
<br>
I read: release notes [6] -- which shows that the logging was introduced in 3.0rc12<br>
<br>
I skimmed through: KB looking for "no free leases" [7] and the kb articles all seem to be about performance or failover.<br>
<br>
Thanks<br>
</span><a style=" font-family:'courier new'; font-size: 9pt;" href="https://kb.isc.org/index.php?/searchResults/0/10/fU_NCoMwDH4V6RPYOeYWbxMEz-4uVSMK1Y42jg3x3ZeqA0-75fuSfD8KpITZgQxBOFS27h74JpEwcwYxmqC1iIFG5dB59vo7y0cPIxBKaz9deJqoM9YDFtu5WlHe8KcCtukhZPYEIpIiWdgi5qfmVeyCxVSlavXmE7Pq-1iNIsx6TWj3AOxYUj-gh7dtX7bWDAfneKfJHEjJsvXkyAxZj3pLFcLMQbgq_a3tc5gnjvdPaho2rrjJ8gU~"></a></td>
</tr>
</table>
<br><br>
<span style=" font-family:'Courier New'; font-size: 9pt;">A few quick thoughts, and perhaps some additional data from you.<br>
IIRC no free leases can and will occur if there's a host statement [that has an assigned ip] that matches your client which isn't getting a lease, but it's coming from a network that doesn't match the ip in the host statement. <br>
[ie: the host statement assigns 10.0.0.1, but the request is coming from a 10.0.1.0/24 network.]<br>
I suspect matches that don't work out like you thought they would could produce similar "odd" results.<br>
<br>
But [I think] this should show in the dhcpd logs. [again, IIRC] (Increasing debug/verbosity might help too.)<br>
Are there any relevant logs, and if so, what are they. [I actually suspect you'll see the problem if you find the logs that apply to these transactions.]<br>
To tell if a pool is full, I believe you have to look at dhcpd.leases and see what's leased. There are some perl [and other] scripts that will do that for you, but I don't recall a way to do that automagically with the standard dhcpd tools.<br>
<br>
HTH<br>
-Greg<br>
<br>
</body></html>