David W. Hankins David_Hankins at
Fri Jan 26 17:51:24 UTC 2007

On Fri, Jan 26, 2007 at 04:46:57PM +0900, Michael Kwok wrote:
> If the statement "infinite-is-reserved" on IP Pools and DHCP failover is 
> used..   what happens ?? or what should happen ?

The question isn't very specific.  Selected quotes from
'man dhcpd.conf':

       The infinite‐is‐reserved statement

	  infinite‐is‐reserved flag;

	  ISC  DHCP  now  supports  ’reserved’  leases.   See  the  section on
	  RESERVED LEASES below.  If this flag is on, the server will automat‐
	  ically  reserve leases allocated to clients which requested an infi‐
	  nite (0xffffffff) lease‐time.

	  The default is off.

       It’s  often  useful to allocate a single address to a single client, in
       approximate perpetuity.  Host  statements  with  fixed‐address  clauses
       exist  to  a  certain  extent  to  serve this purpose, but because host
       statements are intended to  approximate  ’static  configuration’,  they
       suffer from not being referenced in a littany of other Server Services,
       such as dynamic DNS, failover, ’on events’ and so forth.

       If a standard dynamic lease, as from any  range  statement,  is  marked
       ’reserved’, then the server will only allocate this lease to the client
       it is identified by (be that by client identifier or hardware address).

       In practice, this means that the lease follows the normal state engine,
       enters ACTIVE state when the client is bound  to  it,  expires,  or  is
       released,  and  any  events or services that would normally be supplied
       during these events are processed normally, as with any  other  dynamic
       lease.   The  only  difference  is that failover servers treat reserved
       leases as special when they enter the FREE  or  BACKUP  states  ‐  each
       server  applies the lease into the state it may allocate from ‐ and the
       leases are not placed on the queue for  allocation  to  other  clients.
       Instead  they  may  only  be ’found’ by client identity.  The result is
       that the lease is only offered to the returning client.

       Care should probably be taken to ensure that the client  only  has  one
       lease within a given subnet that it is identified by.

       Leases  may  be  set  ’reserved’  either  through OMAPI, or through the
       ´infinite‐is‐reserved’ configuration option (if this is  applicable  to
       your environment and mixture of clients).

       It  should  also be noted that leases marked ’reserved’ are effectively
       treated the same as leases marked ’bootp’.

I should probably note a few things.

1) Failover on 3.1.0a3 is known to have at least one lease database
   synchronization bug.  Yay!  Anyway, it's not ready for any kind of
   production use.

2) A 'real' way to set leases reserved would be to have some extra channel
   (like OMAPI) to change dynamic server state during runtime.  A way to
   just tick off a dynamic lease and flag it reserved.  OMAPI is there,
   and it might even work, but that's a pretty heavy's clunky
   and hard to get going with.  Editing dhcpd.leases means a lot of server
   restarts.  So this option was a last ditch idea at making a way folks
   could at least test this feature in labs, and toy around with the idea
   'reserved dynamic leases' present.

   It's probably not actually useful in a production environment, unless
   you have a very contrived production environment.  But it seemed wierd
   to put a feature out there without at least one easy way to set the
   reserved status bit.

David W. Hankins	"If you don't do it right the first time,
Software Engineer		you'll just have to do it again."
Internet Systems Consortium, Inc.	-- Jack T. Hankins

More information about the dhcp-users mailing list