determined from payload, because some NIC drivers return more data than
they actually recived; IP and UDP packets now stored in aligned data
structures; outgoing packet TTL increased from 16 to 128. [rt15583]
should send out option 81 (FQDN). Defaults to "on". If set to "off",
the FQDN option is not sent, even if the client requested it. This is
needed because some clients misbehave otherwise. [rt16624]
which is used to retain relay agent option contents from when the
client was in INIT or REBIND states. This should solve problems where
relay agent options were not echoed from the server, even when giaddr
was set. [ISC-Bugs #16787]
3.1.0a1's tables resulted in a reduction in default server memory use.
The new selected values provide more of a zero sum (increasing the size
of tables likely to be populated, decreasing the size of tables unlikely).
- Lease structures appear in three spearate hashes: by IP address, by UID,
and by hardware address. One type of table was used for all three, and
improvements to IP address hashing were applied to all three (so UID and
hardware addresses were treated like 4-byte integers). There are now two
types of tables, and the uid/hw hashes use functions more appropriate
to their needs.
- The max-lease-misbalance percentage no longer causes scheduled rebalance
runs to be skipped: it still governs the schedule, but every scheduled
run will attempt balance.
[ISC-Bugs #16396]
which causes the server to substantially reduce lease-times if there are
few (configured percentage) remaining leases. Thanks to a patch submitted
from Christof Chen. [ISC-Bugs #15409]
added. This permits dhcpd or dhclient to execute a named external
program with command line arguments specified from other configuration
language. Thanks to a patch written by Mattias Ronnblom, gotten to us
via Robin Breathe. [ISC-Bugs #13728]
added. If this option is enabled, dhcpd will perform normal DHCID
conflict resolution (the default). If this option is disabled, it will
instead trust the assigned name implicitly (removing any other bindings
on that name). This option has not been made available in dhclient.
[ISC-Bugs #16165]
active to free states. Leases that belonged to the failover secondary
are moved to BACKUP state rather than FREE upon exiting EXPIRED state.
If lease rebalancing must move leases, it tries first to move leases
that belong to the peer in need.
- The server no longer sends POOLREQ messages unless the pool is severely
misbalanced in the peer's favor (see 'man dhcpd.conf' for more details).
- Pool rebalance events no longer happen upon successfully allocating a
lease. Instead, they happen on a schedule. See 'man dhcpd.conf' for the
min-balance and max-balance statements for more information.
[ISC-Bugs #13308]
misapplied to server values rather than client values. The server no longer
advertises 8-byte lease-time options when on 64-bit platforms.
[ISC-Bugs #16036]
applications (particularly the dhcrelay) can discern between what frames
were tranmsitted to it, and what frames are being carried through it which
it should not intercept. [ISC-Bugs #15573]
best interpretation of it. The only thing confusing me is that I thought
he'd fixed all the byte order dependencies in an elegant way, but I
still see some rather ugly #ifdefs in this code. Oh well. At least it
works on minbar.
immediately responded to, but are placed on a queue (attached to
the dhcp_failover_state_t structure). Updated leases are committed
only when the queue is drained, giving a significant performance
increase.
The toack queue is drained:
a) when the queue size exceeds half the partner's max-unacked-updates
setting, or
b) two seconds after the last update message is received.
Added 'refcnt' and 'next' fields to the failover_message_t structure,
to allow messages to be placed on the toack queue.
On the sending side, leases are no longer committed immediately after
being acked. Rather, the commit is deferred until no further acks are
pending. This also gives a major gain in performance.