Changes since 4.3.1rc1
- None
Changes since 4.3.1b1
- Modify the linux and openwrt dhclient scripts to process information
from a stateless request. Thanks to Jiri Popelka at Red Hat for the
bug report and patch.
[ISC-Bugs 36102]
- Remove more unused RCSID tags. These weren't noticed in 4.3 as
the code isn't used anymore but we remove them here to keep the
code consistent across versions.
[ISC-Bugs #36451]
Changes since 4.2.0 (new features)
- If a client renews before 'dhcp-cache-threshold' percent of its lease
has elapsed (default 25%), the server will reuse the allocated lease
(provide a lease within the currently allocated lease-time) rather
than extend or renew the lease. This absolves the server of needing
to perform an fsync() operation on the lease database before reply,
which improves performance. [ISC-Bugs #22228]
Updated this patch to support asynchronous DDNS. If the server is
attempting to do DDNS on a lease it should be udpated and written to
disk even if that wouldn't be necessary due to the thresholding.
[ISC-Bugs #26311]
- The 'no available billing' log line now also logs the name of the last
matching billing class tried before failing to provide a billing.
[ISC-Bugs #21759]
- A problem with missing get_hw_addr function when --enable-use-sockets
was used is now solved on GNU/Linux, BSD and GNU/Hurd systems. Note
that use-sockets feature was not tested on those systems. Client and
server code no longer use MAX_PATH constant that is not defined on
GNU/Hurd systems. [ISC-Bugs #25979]
- Add a perl script in the contrib directory, dhcp-lease-list.pl, which
can parse v4 lease files and output the lease information in a more
human friendly manner. This was written by Christian Hammers with
some updates by vom and ISC. This is contributed code and is not
supported by ISC; however it may be useful to some users.
[ISC-Bugs #20680]
- Add support in v6 for on-commit, on-expire and on-release.
[ISC-Bugs #27912]
- Add support for using classes with v6.
[ISC-Bugs #26510]
- Update the DDNS code to current standards and allow for sharing
of DDNS entries between v4 and v6 clients. The new code is used
if the ddns-update-style is set to "standard", the older code is
still available if ddns-update-style is set to "interim". The
oldest DDNS code "ad-hoc" has been removed. Thanks to Thomas Pegeot
who submitted a patch for this issue. This patch is based on
that work with some modifications.
[ISC-Bugs #21139]
- Add a configuration option to the server to suppress using fsync().
Enabling this option will mean that fsync() is never called. This
may provide better performance but there is also a risk that a lease
will not be properly written to the disk after it has been issued
to a client and before the server stops. Using this option is
not recommended.
[ISC-Bugs #34810]
- Add some logging statements to indicate when the server is ready
to serve. One statement is emitted after the server has finished
reading its files and is about to enter the dispatch loop.
This is "Server starting service.".
The second is emitted when a server determines that both it and
its failover peer are in the normal state.
This is "failover peer <name>: Both servers normal."
[ISC-Bugs #33208]
- Add support for accessing options from v6 relays. The v6relay
statement allows the administrator to choose which relay to
use when searching for an option, see the dhcp-options man page
for a description. The host-identifier option has also been
updated to support the use of relay options, see the dhcpd.conf
man page for a description.
[ISC-Bugs #19598]
- When doing DDNS if there isn't an appropriate zone statement attempt
to find a reasonable nameserver via a DNS resolver. This restores
some functionality that was lost in the transition to asynchronous
DDNS. Due to the lack of security and increase in fragility of the
system when using this feature we strongly recommend the use of
appropriate zone statements rather than using this functionality.
[ISC-Bugs #30461]
- Add support for specifying the address from which to send
DDNS updates on the DHCP server. There are two new options
"ddns-local-address4" and "ddns-local-address6" that each take
one instance of their respective address types.
[ISC-Bugs #34779]
- Add ignore-client-uids option in the server. This option causes
the server to not record a client's uid in its lease. This
violates the specification but may also be useful when a client
can dual boot using different client ids but the same mac address.
Thank you to Brian De Wolf at Cal Poly Pomona for the patch.
[ISC-Bugs #32427]
[ISC-Bugs #35066]
- Extend the DHCPINFORM processing to honor the subnet selection option
and take host declarations into account.
Thanks to Christof Chen for testing and submitting the patch.
[ISC-Bugs #35015]
- Extend the hardware expression to look into the lease structure
for a hardware address if there is no packet. This allows the
server to find the hardware address during on-expiry processing.
[ISC-Bugs #24584]
- Add definitions for some options that have been specified by the IETF.
[ISC-Bugs #29268]
[ISC-Bugs #35198]
Changes since 4.3.0b1
- Tidy up receive packet processing.
Thanks to Brad Plank of GTA for reporting the issue and suggesting
a possible patch.
[ISC-Bugs #34447]
Changes since 4.3.0a1
- Modify the message displayed when a process hits a fatal error.
The new message is much shorter and simply points to the README
and our website for directions on bug submissions.
[ISC-Bugs #24789]
- Handle an absent resolv.conf file better.
[ISC-Bugs #35194]
ISC DHCP 4.1.x will have several new DHCPv6 features that were not in DHCP 4.0.x. These new features include:
* Support for the rapid-commit option on the client side
* Prefix Delegation support
* IA_TA address support
* A basic DHCPv6 relay agent
* basic DHCPv6 Leasequery support
configuration files and binaries in a number of cases. This should hopefully
fix them all. Without this patch they look in /etc only and fail to start
if the file is not present.
freely redistributable reference implementation of all aspects of
DHCP, through a suite of DHCP tools:
* A DHCP server
* A DHCP client
* A DHCP relay agent
These tools all use a modular API which is designed to be sufficiently
general that it can easily be made to work on POSIX-compliant
operating systems and also non-POSIX systems like Windows NT and
MacOS.
The DHCP server, client and relay agent are provided both as
reference implementations of the protocol and as working, fully-featured
sample implementations. Both the client and the server provide
functionality that, while not strictly required by the protocol,
is very useful in practice. The DHCP server also makes allowances
for non-compliant clients which one might still like to support.
This package contains the Relay component.