dhclient renewing ip address lesser then 50% of configured lease period

Patrick Trapp ptrapp at nex-tech.com
Fri Nov 27 14:04:32 UTC 2015


I suspect it is a holiday week for a lot of the folks you want to speak to. At least some of them monitor this thread, but I suspect it's not foremost on their mind at the moment. I would suggest waiting until next week and seeing if you get a reply from them then.

I, unfortunately, am simply a user and cannot shed any light on it for you.

________________________________
From: dhcp-users-bounces at lists.isc.org [dhcp-users-bounces at lists.isc.org] on behalf of srinirao [iamspl_xxx at yahoo.com]
Sent: Friday, November 27, 2015 6:37 AM
To: Bob Harold
Cc: Users of ISC DHCP
Subject: Re: dhclient renewing ip address lesser then 50% of configured lease period

Thanks Bob,
Inside code i found there are instances to introduce some kind of randomness while calculating renewal time, rebind time and expire time. I want to understand how this randomness works for a particular lease period. Is it triggered always ?

Could anyone throw some light into this or forward (or suggest) me appropriate forum.
Could you point me to the developer thread/documentation/bug log on this ?


Thanks,
Srini rao





On Thursday, November 26, 2015 12:42 AM, Bob Harold <rharolde at umich.edu> wrote:



On Wed, Nov 25, 2015 at 1:10 PM, srinirao <iamspl_xxx at yahoo.com<mailto:iamspl_xxx at yahoo.com>> wrote:
Hi Bob,

Many thanks for your reply. If it is expected behavior do you have piece of documents supporting this ?
All i could find till now was 'half way through the lease period DHCP client requests for renewing leases'. For my configuration half way is 60 minutes. Why is it doing 10 minutes before that ?


regards,
srini rao



On Wednesday, November 25, 2015 7:36 PM, Bob Harold <rharolde at umich.edu<mailto:rharolde at umich.edu>> wrote:



On Tue, Nov 24, 2015 at 11:42 PM, srinirao <iamspl_xxx at yahoo.com<mailto:iamspl_xxx at yahoo.com>> wrote:

Hello, I have my embedded device running dhclient 3.2.18 release. I have configured the dhcp server lease time as:

max-lease-time    28800;
default-lease-time 7200;

Inspite of configuring default lease time to 2 hours, i get frequent dhcp request going out of my device. The requests go out at a freqnency of 50 minutes every time. I have read in the online documents that DHCP renew request (unicast) can happen after the completion of 50% of lease time configured. But however I find it hard to understand why this (magic number) 50 minutes here.

I am getting very frequent DHCP updates of approximately 50 minutes in /var/log/messages

Nov 10 10:34:05 XXX-XXXX dhclient4: DHCPREQUEST on eth0 to 10.14.176.70 port 67
Nov 10 10:34:05 XXX-XXXX dhclient4: DHCPACK from 10.14.176.70
Nov 10 10:34:06 XXX-XXXX dhclient4: bound to 10.14.180.135 -- renewal in 3240 seconds.
Nov 10 11:28:06 XXX-XXXX dhclient4: DHCPREQUEST on eth0 to 10.14.176.70 port 67
Nov 10 11:28:06 XXX-XXXX dhclient4: DHCPACK from 10.14.176.70
Nov 10 11:28:06 XXX-XXXX dhclient4: bound to 10.14.180.135 -- renewal in 3364 seconds.
Nov 10 12:24:11 XXX-XXXX dhclient4: DHCPREQUEST on eth0 to 10.14.176.70 port 67
Nov 10 12:24:11 XXX-XXXX dhclient4: DHCPACK from 10.14.176.70
Nov 10 12:24:11 XXX-XXXX dhclient4: bound to 10.14.180.135 -- renewal in 3117 seconds.
Nov 10 13:16:08 XXX-XXXX dhclient4: DHCPREQUEST on eth0 to 10.14.176.70 port 67
Nov 10 13:16:08 XXX-XXXX dhclient4: DHCPACK from 10.14.176.70
Nov 10 13:16:09 XXX-XXXX dhclient4: bound to 10.14.180.135 -- renewal in 3127 seconds.
Nov 10 14:08:16 XXX-XXXX dhclient4: DHCPREQUEST on eth0 to 10.14.176.70 port 67
Nov 10 14:08:16 XXX-XXXX dhclient4: DHCPACK from 10.14.176.70
Nov 10 14:08:16 XXX-XXXX dhclient4: bound to 10.14.180.135 -- renewal in 3578 seconds.
Nov 10 15:07:54 XXX-XXXX dhclient4: DHCPREQUEST on eth0 to 10.14.176.70 port 67
Nov 10 15:07:54 XXX-XXXX dhclient4: DHCPACK from 10.14.176.70
Nov 10 15:07:55 XXX-XXXX dhclient4: bound to 10.14.180.135 -- renewal in 2843 seconds.
Nov 10 15:55:19 XXX-XXXX dhclient4: DHCPREQUEST on eth0 to 10.14.176.70 port 67
Nov 10 15:55:19 XXX-XXXX dhclient4: DHCPACK from 10.14.176.70
Nov 10 15:55:19 XXX-XXXX dhclient4: bound to 10.14.180.135 -- renewal in 3206 seconds.
Nov 10 16:48:45 XXX-XXXX dhclient4: DHCPREQUEST on eth0 to 10.14.176.70 port 67
Nov 10 16:48:45 XXX-XXXX dhclient4: DHCPACK from 10.14.176.70
Nov 10 16:48:45 XXX-XXXX dhclient4: bound to 10.14.180.135 -- renewal in 3001 seconds.
Nov 10 17:38:46 XXX-XXXX dhclient4: DHCPREQUEST on eth0 to 10.14.176.70 port 67
Nov 10 17:38:46 XXX-XXXX dhclient4: DHCPACK from 10.14.176.70
Nov 10 17:38:46 XXX-XXXX dhclient4: bound to 10.14.180.135 -- renewal in 3227 seconds.
Nov 10 18:32:33 XXX-XXXX dhclient4: DHCPREQUEST on eth0 to 10.14.176.70 port 67
Nov 10 18:32:33 XXX-XXXX dhclient4: DHCPACK from 10.14.176.70
Nov 10 18:32:33 XXX-XXXX dhclient4: bound to 10.14.180.135 -- renewal in 3247 seconds.
Nov 10 19:26:41 XXX-XXXX dhclient4: DHCPREQUEST on eth0 to 10.14.176.70 port 67
Nov 10 19:26:41 XXX-XXXX dhclient4: DHCPACK from 10.14.176.70
Nov 10 19:26:41 XXX-XXXX dhclient4: bound to 10.14.180.135 -- renewal in 3512 seconds.
Nov 10 20:25:13 XXX-XXXX dhclient4: DHCPREQUEST on eth0 to 10.14.176.70 port 67
Nov 10 20:25:13 XXX-XXXX dhclient4: DHCPACK from 10.14.176.70
Nov 10 20:25:14 XXX-XXXX dhclient4: bound to 10.14.180.135 -- renewal in 2853 seconds.
Nov 10 21:12:47 XXX-XXXX dhclient4: DHCPREQUEST on eth0 to 10.14.176.70 port 67
Nov 10 21:12:47 XXX-XXXX dhclient4: DHCPACK from 10.14.176.70
Nov 10 21:12:47 XXX-XXXX dhclient4: bound to 10.14.180.135 -- renewal in 3146 seconds.
Nov 10 22:05:13 XXX-XXXX dhclient4: DHCPREQUEST on eth0 to 10.14.176.70 port 67
Nov 10 22:05:13 XXX-XXXX dhclient4: DHCPACK from 10.14.176.70
Nov 10 22:05:13 XXX-XXXX dhclient4: bound to 10.14.180.135 -- renewal in 2776 seconds.
Nov 10 22:51:29 XXX-XXXX dhclient4: DHCPREQUEST on eth0 to 10.14.176.70 port 67
Nov 10 22:51:29 XXX-XXXX dhclient4: DHCPACK from 10.14.176.70
Nov 10 22:51:30 XXX-XXXX dhclient4: bound to 10.14.180.135 -- renewal in 3359 seconds.
Nov 10 23:47:29 XXX-XXXX dhclient4: DHCPREQUEST on eth0 to 10.14.176.70 port 67
Nov 10 23:47:29 XXX-XXXX dhclient4: DHCPACK from 10.14.176.70
Nov 10 23:47:29 XXX-XXXX dhclient4: bound to 10.14.180.135 -- renewal in 3039 seconds.
Nov 11 00:38:08 XXX-XXXX dhclient4: DHCPREQUEST on eth0 to 10.14.176.70 port 67
Nov 11 00:38:08 XXX-XXXX dhclient4: DHCPACK from 10.14.176.70
Nov 11 00:38:08 XXX-XXXX dhclient4: bound to 10.14.180.135 -- renewal in 2998 seconds.
Nov 11 01:28:07 XXX-XXXX dhclient4: DHCPREQUEST on eth0 to 10.14.176.70 port 67
Nov 11 01:28:07 XXX-XXXX dhclient4: DHCPACK from 10.14.176.70
Nov 11 01:28:07 XXX-XXXX dhclient4: bound to 10.14.180.135 -- renewal in 3200 seconds.
Nov 11 02:21:28 XXX-XXXX dhclient4: DHCPREQUEST on eth0 to 10.14.176.70 port 67
Nov 11 02:21:28 XXX-XXXX dhclient4: DHCPACK from 10.14.176.70
Nov 11 02:21:28 XXX-XXXX dhclient4: bound to 10.14.180.135 -- renewal in 2866 seconds.
Nov 11 03:09:15 XXX-XXXX dhclient4: DHCPREQUEST on eth0 to 10.14.176.70 port 67
Nov 11 03:09:15 XXX-XXXX dhclient4: DHCPACK from 10.14.176.70
Nov 11 03:09:15 XXX-XXXX dhclient4: bound to 10.14.180.135 -- renewal in 3378 seconds.
Nov 11 04:05:33 XXX-XXXX dhclient4: DHCPREQUEST on eth0 to 10.14.176.70 port 67
Nov 11 04:05:33 XXX-XXXX dhclient4: DHCPACK from 10.14.176.70
Nov 11 04:05:33 XXX-XXXX dhclient4: bound to 10.14.180.135 -- renewal in 3580 seconds.
Nov 11 05:05:13 XXX-XXXX dhclient4: DHCPREQUEST on eth0 to 10.14.176.70 port 67
Nov 11 05:05:14 XXX-XXXX dhclient4: DHCPACK from 10.14.176.70
Nov 11 05:05:14 XXX-XXXX dhclient4: bound to 10.14.180.135 -- renewal in 3539 seconds.
Nov 11 06:04:13 XXX-XXXX dhclient4: DHCPREQUEST on eth0 to 10.14.176.70 port 67
Nov 11 06:04:13 XXX-XXXX dhclient4: DHCPACK from 10.14.176.70
Nov 11 06:04:13 XXX-XXXX dhclient4: bound to 10.14.180.135 -- renewal in 2772 seconds.
Nov 11 06:50:25 XXX-XXXX dhclient4: DHCPREQUEST on eth0 to 10.14.176.70 port 67
Nov 11 06:50:25 XXX-XXXX dhclient4: DHCPACK from 10.14.176.70
Nov 11 06:50:26 XXX-XXXX dhclient4: bound to 10.14.180.135 -- renewal in 3126 seconds.
Nov 11 07:42:32 XXX-XXXX dhclient4: DHCPREQUEST on eth0 to 10.14.176.70 port 67
Nov 11 07:42:32 XXX-XXXX dhclient4: DHCPACK from 10.14.176.70
Nov 11 07:42:32 XXX-XXXX dhclient4: bound to 10.14.180.135 -- renewal in 3087 seconds.
Nov 11 08:33:59 XXX-XXXX dhclient4: DHCPREQUEST on eth0 to 10.14.176.70 port 67
Nov 11 08:33:59 XXX-XXXX dhclient4: DHCPACK from 10.14.176.70
Nov 11 08:33:59 XXX-XXXX dhclient4: bound to 10.14.180.135 -- renewal in 2779 seconds.

and so on.
My DHCP client configuration file only has following options enabled:

request subnet-mask, broadcast-address, time-offset, routers,
domain-name, domain-name-servers, host-name,
netbios-name-servers, netbios-scope;

And my lease file logs these responses (approximately every 50 minutes) as :
lease {
  interface "eth0";
  fixed-address 10.14.180.135;
  option subnet-mask 255.255.255.128;
  option routers 10.14.180.129;
  option dhcp-lease-time 7200;
  option dhcp-message-type 5;
  option domain-name-servers 10.14.176.70,10.14.176.2;
  option dhcp-server-identifier 10.14.176.70;
  option domain-name "b08.okc.mydomain.com<http://b08.okc.mydomain.com/>.";
  renew 3 2015/11/18 05:37:22;
  rebind 3 2015/11/18 06:26:23;
  expire 3 2015/11/18 06:41:23;
}
lease {
  interface "eth0";
  fixed-address 10.14.180.135;
  option subnet-mask 255.255.255.128;
  option routers 10.14.180.129;
  option dhcp-lease-time 7200;
  option dhcp-message-type 5;
  option domain-name-servers 10.14.176.70,10.14.176.2;
  option dhcp-server-identifier 10.14.176.70;
  option domain-name "b08.okc.mydomain.com<http://b08.okc.mydomain.com/>.";
  renew 3 2015/11/18 06:28:43;
  rebind 3 2015/11/18 07:22:22;
  expire 3 2015/11/18 07:37:22;
}
lease {
  interface "eth0";
  fixed-address 10.14.180.135;
  option subnet-mask 255.255.255.128;
  option routers 10.14.180.129;
  option dhcp-lease-time 7200;
  option dhcp-message-type 5;
  option domain-name-servers 10.14.176.70,10.14.176.2;
  option dhcp-server-identifier 10.14.176.70;
  option domain-name "b08.okc.mydomain.com<http://b08.okc.mydomain.com/>.";
  renew 3 2015/11/18 07:14:31;
  rebind 3 2015/11/18 08:13:43;
  expire 3 2015/11/18 08:28:43;
}
lease {
  interface "eth0";
  fixed-address 10.14.180.135;
  option subnet-mask 255.255.255.128;
  option routers 10.14.180.129;
  option dhcp-lease-time 7200;
  option dhcp-message-type 5;
  option domain-name-servers 10.14.176.70,10.14.176.2;
  option dhcp-server-identifier 10.14.176.70;
  option domain-name "b08.okc.mydomain.com<http://b08.okc.mydomain.com/>.";
  renew 3 2015/11/18 08:01:46;
  rebind 3 2015/11/18 08:59:31;
  expire 3 2015/11/18 09:14:31;
}
lease {
  interface "eth0";
  fixed-address 10.14.180.135;
  option subnet-mask 255.255.255.128;
  option routers 10.14.180.129;
  option dhcp-lease-time 7200;
  option dhcp-message-type 5;
  option domain-name-servers 10.14.176.70,10.14.176.2;
  option dhcp-server-identifier 10.14.176.70;
  option domain-name "b08.okc.mydomain.com<http://b08.okc.mydomain.com/>.";
  renew 3 2015/11/18 08:57:34;
  rebind 3 2015/11/18 09:46:46;
  expire 3 2015/11/18 10:01:46;
}
lease {
  interface "eth0";
  fixed-address 10.14.180.135;
  option subnet-mask 255.255.255.128;
  option routers 10.14.180.129;
  option dhcp-lease-time 7200;
  option dhcp-message-type 5;
  option domain-name-servers 10.14.176.70,10.14.176.2;
  option dhcp-server-identifier 10.14.176.70;
  option domain-name "b08.okc.mydomain.com<http://b08.okc.mydomain.com/>.";
  renew 3 2015/11/18 09:51:31;
  rebind 3 2015/11/18 10:42:34;
  expire 3 2015/11/18 10:57:34;
}
and so on.

What could I be doing wrong? According to me, the ip address should not need to change that often.

Please help
srini rao

After a outage, or when everyone arrives at the office at the same time, many clients will get leases at the same time.  To avoid the renewals all happening at the same time, the DHCP varies the renewal time a little.  Notice the "renewal in 3539 seconds." in your log.  I see it varying from 46 to 60 minutes in your log.  This is exactly what you should expect.  If you want less frequent renewals, you could change to 8 hour leases.  I use:

min-lease-time 28800;
default-lease-time 28800;
max-lease-time 28800;

--
Bob Harold>

I cannot find it in the release notes or man pages, so it is a guess on my part.  Perhaps the source code has some comments ...


--
Bob Harold




-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.isc.org/pipermail/dhcp-users/attachments/20151127/82389705/attachment-0001.html>


More information about the dhcp-users mailing list