David Hankins [Tue, 20 Nov 2007 18:34:37 +0000 (18:34 +0000)]
- The server now limits clients that request multiple addresses to one
address per IA by default, which can be adjusted through the
"limit-addrs-per-ia" configuration option. [ISC-Bugs #17271]
David Hankins [Tue, 20 Nov 2007 18:33:07 +0000 (18:33 +0000)]
- If the client had multiple addresses, and one expired (was not renewed
by the server), the client would continue to attempt to renew the same
old address over and over. Now, the client will omit any expired
addresses from future Confirm, Renew, or Rebind messages. [ISC-Bugs #17266]
- dhclient -6 will now select renew/rebind timers based upon the longest
address expiration time rather than the shortest expiration time, in
order to avoid cascading renewals in the event a server elects not to
extend one of multiple IAADDR leases. [ISC-Bugs #17266]
David Hankins [Wed, 14 Nov 2007 23:44:46 +0000 (23:44 +0000)]
- The server will now include multiple IA_NA's and multiple IAADDRs within
them, if advertised by the client. It still only seeks to allocate one
new address. [ISC-Bugs #17254]
David Hankins [Wed, 31 Oct 2007 19:13:33 +0000 (19:13 +0000)]
- Relative time may now be used as a qualifier for 'allow' and 'deny' access
control lists. These directives may be used to assist in re-addressing
address pools without having to constantly reconfigure the server. Please
see 'man dhcpd.conf' for more information on allow/deny 'after time' syntax.
Thanks to a patch from Christof Chen. [ISC-Bugs #17110]
Evan Hunt [Sat, 27 Oct 2007 19:15:37 +0000 (19:15 +0000)]
Use different paths for PID and lease files when running in DHCPv4 or
DHCPv6 mode, so that servers for both protcols can be run simultaneously on
a single interface. [rt17227]
Evan Hunt [Fri, 26 Oct 2007 22:46:50 +0000 (22:46 +0000)]
- Reworked cons_options() and store_options() to fix a buffer
overflow that could result in a DoS (CVS 2007-0062). Also general
code tidying. [rt17090]
- Also fixed a spurious error message on the client. [rt17250]
David Hankins [Wed, 24 Oct 2007 00:54:12 +0000 (00:54 +0000)]
- The client leasing subsystem was streamlined and corrected to account
more closely for changes in client link attachment selection.
[ISC-Bugs #17198]
David Hankins [Tue, 23 Oct 2007 21:39:56 +0000 (21:39 +0000)]
- sendmsg()/recvmsg() control buffers are now declared in such a way to
ensure they are correctly aligned on all (esp. 64-bit) architectures.
[ISC-Bugs #17087b]
David Hankins [Tue, 9 Oct 2007 22:32:49 +0000 (22:32 +0000)]
- The peer_wants_leases() changes pulled up from 3.1.0 were corrected,
'never used' leases will no longer consistently shift between servers
on every pool rebalance run. [ISC-Bugs #17211]
David Hankins [Fri, 5 Oct 2007 22:29:51 +0000 (22:29 +0000)]
- DDNS updates state information are now stored in 'binding scopes' that
follow the leases through their lifecycles. This enables DDNS teardowns
on leases that are assigned and expired inbetween a server restart (the
state is recovered from dhcpd.leases). Arbitrary user-specified binding
scopes ('set var = "value";') are not yet supported.
David Hankins [Fri, 5 Oct 2007 15:57:48 +0000 (15:57 +0000)]
- DHCPv6 server Confirm message processing has been enhanced - it no
longer replies only to clients with host {} records, it now replies
as directed in RFC3315 section 18.2.2 - that is, to all clients
regardless of the existence of bindings. [ISC-Bugs #17183]
David Hankins [Wed, 3 Oct 2007 20:24:27 +0000 (20:24 +0000)]
- Fixed a ./configure bug where compile tests were failing due to
"-Werror" (unused variable) rather than the actual test failure. Lead
to inconsistent and unworkable auto-configurations. [ISC-Bugs #17177]
Shane Kerr [Wed, 3 Oct 2007 10:20:25 +0000 (10:20 +0000)]
Make sure we return the IPv6 address we suggested in response to a
SOLICIT. Also do not put the address in the "used" pool list when
loading from file.
David Hankins [Mon, 1 Oct 2007 16:24:44 +0000 (16:24 +0000)]
- The subnet-mask option inclusion now conforms with RFC2132 section 3.3;
it will only appear prior to the routers option if it is present on the
Parameter-Request-List. The subnet-mask option will also only be
included by default (if it is not on the PRL) in response to DISCOVER
or REQUEST messages.
[ISC-Bugs #17117]
- The FQDN option is only supplied if the client supplied an FQDN option or
if the FQDN option was explicitly requested on the PRL.
[ISC-Bugs #17117]
David Hankins [Thu, 27 Sep 2007 15:28:05 +0000 (15:28 +0000)]
- A bug was repaired where MAC Address Affinity for virgin leases always
mapped to the primary. Virgin leases now have an interleaved preference
between primary and secondary. [ISC-Bugs #17174]
- A bug was repaired where MAC Address Affinity for clients with no client
identifier was sometimes mishashed to the peer. Load balancing during
runtime and pool rebalancing were opposing. [ISC-Bugs #17174]
David Hankins [Thu, 23 Aug 2007 16:06:09 +0000 (16:06 +0000)]
- 'request' and 'also request' syntaxes have been added to accomodate
the DHCPv6 client configuration. 'send dhcp6.oro' is no longer
necessary. [ISC-Bugs #17023]