> Hi and thanks for your reply, but this shouldn't cause the problem, or
> maybe I don't understand what you mean. My clients get ips from the
> same pool (which is the pool they should get it from), but they don't
> get ip they previously had leased - and, according to the following,
> dhcp server should grant this address
> (https://www.ietf.org/rfc/rfc2131.txt):
>
> 4.3.1 DHCPDISCOVER message
>
> When a server receives a DHCPDISCOVER message from a client, the
> server chooses a network address for the requesting client. If no
> address is available, the server may choose to report the problem to
> the system administrator. If an address is available, the new address
> SHOULD be chosen as follows:
>
> o The client's current address as recorded in the client's current
> binding, ELSE
>
> o The client's previous address as recorded in the client's (now
> expired or released) binding, if that address is in the server's
> pool of available addresses and not already allocated, ELSE
>
> o The address requested in the 'Requested IP Address' option, if
> that
> address is valid and not already allocated, ELSE
>
> o A new address allocated from the server's pool of available
> addresses; the address is selected based on the subnet from which
> the message was received (if 'giaddr' is 0) or on the address of
> the relay agent that forwarded the message ('giaddr' when not 0).
>
>
> But I don't know how far isc dhcp implementation conforms to this rfc.
>
> Thanks again, Rado.
>
>
> On 06/29/2017 01:49 AM, Bill Shirley wrote:
>> It has been my experience that if a client does a DHCPREQUEST, the
>> server will grant
>> the lease even if the Class and pool 'allow members' do not match.
>> Only if there is an
>> explicit 'deny members' on the pool will it DHCPNAK.
>>
>> However, if a client does a DHCPDISCOVER the server will allocate
>> only from pools that
>> meet the 'allow members' and 'deny members' requirements.
>>
>> Bill
>>
>>
>> On 6/28/2017 5:36 AM, Radoslav Pešek wrote:
>>> Hallo list, I have dhcp servers (Debian 8.5, version 4.3.1, failover
>>> mode, ddns-update-style interim) and (at least) for certain clients
>>> they don't keep ip address between clients' restarts.
>>>
>>> Its maybe related to another issue I posted few days ago -
>>> https://lists.isc.org/pipermail/dhcp-users/2017-June/020652.html -
>>> but the solution only helped for problem with weird hostname value
>>> in dhcp replies, not for this issue as I hoped.
>>>
>>> So, it's in failover mode (interim) with clients getting ip
>>> addresses from range. The pool shouldn't be exhausted as I see this
>>> in logs:
>>>
>>> Jun 27 10:08:39 s3 dhcpd: balancing pool b8107778
>>> poschodia_a_studenti total 21 free 4 backup 5 lts 0 max-own (+/-)1
>>> Jun 27 10:08:39 s3 dhcpd: balanced pool b8107778
>>> poschodia_a_studenti total 21 free 4 backup 5 lts 0 max-misbal 1
>>>
>>> and when I restart test client several times within say few hours it
>>> gets same ip address it had few restarts ago. It is even asking in
>>> DHCP DISCOVER message for its current ip address but the server
>>> decides to lease another one (no DHCP NAK message). The default and
>>> max lease times for these clients are both set to 2592000.
>>>
>>> These are records in dhcpd.leases when I restart test client (those
>>> log lines are perhaps my misconfiguration in dhcpd.conf or what, but
>>> I had this issue even before I added logging so it's not related):
>>>
>>> lease XXX.XXX.XXX.232 {
>>> starts 3 2017/06/28 07:29:45;
>>> ends 3 2017/06/28 08:28:38;
>>> tstp 3 2017/06/28 08:28:38;
>>> tsfp 6 2017/08/12 07:29:45;
>>> cltt 3 2017/06/28 07:29:45;
>>> binding state released;
>>> next binding state free;
>>> hardware ethernet aa:bb:cc:dd:ee:ff;
>>> client-hostname "vm102";
>>> }
>>> lease XXX.XXX.XXX.232 {
>>> starts 3 2017/06/28 07:29:45;
>>> ends 3 2017/06/28 08:28:38;
>>> tstp 3 2017/06/28 08:28:38;
>>> tsfp 3 2017/06/28 08:28:38;
>>> atsfp 3 2017/06/28 08:28:38;
>>> cltt 3 2017/06/28 07:29:45;
>>> binding state free;
>>> hardware ethernet aa:bb:cc:dd:ee:ff;
>>> }
>>> lease XXX.XXX.XXX.231 {
>>> starts 3 2017/06/28 08:29:03;
>>> ends 3 2017/06/28 08:59:03;
>>> tstp 5 2017/07/28 08:44:03;
>>> tsfp 3 2017/06/28 08:08:55;
>>> cltt 3 2017/06/28 08:29:03;
>>> binding state active;
>>> next binding state expired;
>>> hardware ethernet aa:bb:cc:dd:ee:ff;
>>> set mac_6 = "02";
>>> client-hostname "vm102";
>>> on release {
>>> log (error, "=============[ START COMMIT ]================");
>>> log (error, "host-decl-name: ");
>>> log (error, host-decl-name);
>>> log (error, "option host-name: ");
>>> log (error,
>>> option host-name);
>>> log (error, "config-option server.ddns-hostname: ");
>>> log (error,
>>> option host-name);
>>> log (error, "config-option server.ddns-hostname: ");
>>> log (error,
>>> config-option server.ddns-hostname);
>>> log (error, "============[ END COMMIT ]==================");
>>> }
>>> }
>>> lease XXX.XXX.XXX.231 {
>>> starts 3 2017/06/28 08:29:03;
>>> ends 3 2017/06/28 08:59:03;
>>> tstp 5 2017/07/28 08:44:03;
>>> tsfp 3 2017/06/28 08:08:55;
>>> cltt 3 2017/06/28 08:29:03;
>>> binding state active;
>>> next binding state expired;
>>> hardware ethernet aa:bb:cc:dd:ee:ff;
>>> set ddns-txt = "000b7fa68b3f8b2e4967e49ff0faef4cf6";
>>> set ddns-fwd-name = "vm102.some.domain.";
>>> set mac_6 = "02";
>>> client-hostname "vm102";
>>> on release {
>>> log (error, "=============[ START COMMIT ]================");
>>> log (error, "host-decl-name: ");
>>> log (error, host-decl-name);
>>> log (error, "option host-name: ");
>>> log (error,
>>> option host-name);
>>> log (error, "config-option server.ddns-hostname: ");
>>> log (error,
>>> config-option server.ddns-hostname);
>>> log (error, "============[ END COMMIT ]==================");
>>> }
>>> }
>>> lease XXX.XXX.XXX.231 {
>>> starts 3 2017/06/28 08:29:03;
>>> ends 3 2017/06/28 08:59:03;
>>> tstp 5 2017/07/28 08:44:03;
>>> tsfp 3 2017/06/28 08:08:55;
>>> cltt 3 2017/06/28 08:29:03;
>>> binding state active;
>>> next binding state expired;
>>> binding state active;
>>> next binding state expired;
>>> hardware ethernet aa:bb:cc:dd:ee:ff;
>>> set ddns-rev-name = "231.XXX.XXX.XXX.in-addr.arpa.";
>>> set ddns-txt = "000b7fa68b3f8b2e4967e49ff0faef4cf6";
>>> set ddns-fwd-name = "vm102.some.domain.";
>>> set mac_6 = "02";
>>> client-hostname "vm102";
>>> on release {
>>> log (error, "=============[ START COMMIT ]================");
>>> log (error, "host-decl-name: ");
>>> log (error, host-decl-name);
>>> log (error, "option host-name: ");
>>> log (error,
>>> option host-name);
>>> log (error, "config-option server.ddns-hostname: ");
>>> log (error,
>>> config-option server.ddns-hostname);
>>> log (error, "============[ END COMMIT ]==================");
>>> }
>>> }
>>> lease XXX.XXX.XXX.231 {
>>> starts 3 2017/06/28 08:29:03;
>>> ends 3 2017/06/28 08:59:03;
>>> tstp 5 2017/07/28 08:44:03;
>>> tsfp 5 2017/07/28 08:44:03;
>>> atsfp 5 2017/07/28 08:44:03;
>>> cltt 3 2017/06/28 08:29:03;
>>> binding state active;
>>> next binding state expired;
>>> hardware ethernet aa:bb:cc:dd:ee:ff;
>>> set ddns-rev-name = "231.XXX.XXX.XXX.in-addr.arpa.";
>>> set ddns-txt = "000b7fa68b3f8b2e4967e49ff0faef4cf6";
>>> set ddns-fwd-name = "vm102.some.domain.";
>>> set mac_6 = "02";
>>> client-hostname "vm102";
>>> on release {
>>> log (error, "=============[ START COMMIT ]================");
>>> log (error, "host-decl-name: ");
>>> log (error, host-decl-name);
>>> log (error, "option host-name: ");
>>> log (error,
>>> option host-name);
>>> log (error, "config-option server.ddns-hostname: ");
>>> log (error,
>>> config-option server.ddns-hostname);
>>> log (error, "============[ END COMMIT ]==================");
>>> }
>>> }
>>>
>>> Do you see anything wrong there?
>>>
>>> Thanks for any insights, Rado.
>>>
>>>
>>> _______________________________________________
>>> dhcp-users mailing list
>>>
[hidden email]>>> https://lists.isc.org/mailman/listinfo/dhcp-users
>>
>> _______________________________________________
>> dhcp-users mailing list
>>
[hidden email]>> https://lists.isc.org/mailman/listinfo/dhcp-users
>
> _______________________________________________
> dhcp-users mailing list
>
[hidden email]> https://lists.isc.org/mailman/listinfo/dhcp-users