* Use dynamically sized buffers for reading kernel link events
* Use the active link address
* Added option to dump a lease to stdout
* TEST mode now works correctly if an old lease is NAKed
* routes with the gateway = leased ip are now treated as host routes
* Fix crash when using clientid and the interface re-configures
* log the pid of dhcpcd
* Indicate server IP received message from even if server ID not
present
* Fix crashes on IPv4LL failure and add more logging
* VendorID is now dhcpcd-$version:$OS-$version:$machine:$platform
* IPv4LL address range can now be used in DHCP requests
* sysctl net.ipv4.conf.$iface.promote_secondaries enabled on Linux
This resolves a long standing issue of changing ip on the same subnet.
* IPv4LL correctly resets the DHCP timer.
* -H, --xidhwaddr uses the last 4 bytes of the hardware address as
the DHCP xid
* -J, --broadcast tells the DHCP server to broadcast replies
* no longer warn about InfiniBand being an unsupported family
* infinite lease times are valid when reading old leases
* discard address correctly if lease is invalid
Changes from dhcpcd-5.1.3 include:
* dhcpcd logs even in quiet mode.
* Sleep for 1/100th of a second to give time for kernel to send RELEASE.
* -S option now works.
* Only warn about using CSR on bind.
* waitip is enabled when running on a single interface.
* Classless Static Routes are now enabled by default in dhcpcd.conf
instead of being always being requested.
* ClientID is now reported when interface starts.
* -w, --wait forces dhcpcd to wait until an interface gets a lease or
times out.
* Ensure DHCP socket is open when sending a DECLINE.
* Uses new hwaddr if existing interface is downed and then changed.
* No longer works on firewire interfaces by default.
dhcpcd-5.1.2 has a new behaviour change - when starting up and at least 1
interface has a carrier then it tries to get a lease or times out.
It still daemonises regardless. This, along with the -b and -w flags
allows total control over the desired behaviour of dhcpcd.
Changes from dhcpcd-5.0.7 include
* Only allow hardware families we know by default (over-ridable)
* Fix persistent and timeout 0 options
* Fix parsing of escape code sequencies
* Don't bring up interfaces brought down when handling new interfaces
* Allow un-encapsulated vendor option
* Don't null terminate gratuitously when handling quotes
* Fix various typos and grammatical errors
* dhcpcd.conf simplified a little
Changes from dhcpcd-5.0.6 include:
* Fix -f path/to/config
* -e, --env var=value for profile specific env vars
* Many issues resolved when running in test mode
* Don't print a (null) string when there is no NAK message
* read ssize_t instead of size_t when checking signals
Changes from dhcpcd-5.0.5 include
* Fix crash on MIPS, fixes PR bin/41682
Thanks to Tim McIntosh <tmcintos@eskimo.com> for the patch
* Save and restore interface MTU when changing
* IP whitelist
* Ensure that the lease and pidfile directories exist at startup
Changes from dhcpcd-5.0.3 include
* ServerID requirement in DHCP messages can be toggled in dhcpcd.conf
* If MTU is requested, don't apply if less than 576
* Enforce a minimum lease time of 20 seconds
Changes from 5.0.1 include
* -n option now starts dhcpcd if not already started
* 29-lookup-hostname hook installed by default, but skipped in dhcpcd.conf
* Fix warning about missing dirs if we don't have any existing state
* Fix compile on some Linux distros re linux/wireless.h
Major changes from dhcpcd-4 include
* Single daemon can now run DHCP on multiple interfaces at the same time
* Configuration profiles per interface, ssid, arping and fallback
* Listens to 3rd party programs changing routing information
* Supports DHCP INFORM over PPP
* Can configure static options for destination address
* Control socket so 3rd party program can control or listen directly
to dhcpcd events
* Is also a BOOTP client
Fixed since dhcpcd-4.0.12 include
* Every DHCP message now requires a ServerID as some rogue DHCP servers
NAK without one.
* Extra UDP validation is now done for testing dhcpcd over a loopback
Fixes since dhcpcd-4.0.11 include:
* Logging to LOG_DAEMON instead of LOG_LOCAL0
* Checking for POLLERR and POLLNVAL
* Only opening raw sockets when we have a working link
Changes since dhcpcd-4.0.7:
* broadcast address correctly set for hooks
* respect renewal time if given but rebind time is not
* nohook 20-resolv.conf works as well as nohook resolv.conf
* short hostnames are now sent
DHCP_DECLINE now includes the IP and Server in the message.
Trailing NULLs are stripped from string options.
ntpd is only restarted if it is already running.
ClientID is no longer sent by default.
CSR comes before routers and static routes as per RFC 3442.
Host routes are now added correctly.
If a the interface link flaps but status does not change, do not reset the timer.
- basic resolvconf like functionality to combine the resolv.conf entries
from running instances
- improve timer handling to not break with early wake ups and other edge
cases related to the kernel time granularity
- improve handling of dhcpcd -n and rebinding after carrier loss to
better deal with changing networks
- add option to black list servers based on server id
- don't check for ARP conflict if the interface already has the address
- improve signal handling during vfork/exec
- support for link state notification (e.g. renew lease after carrier
returned)
- support to start go into background immediately
- don't cleanup interface state. dhcpcd will leave the interface in the
same state as before if the lease uses separate addresses. -p still
stops it from removing the configured address on exit
- various smaller bugfixes, optimisations and cleanups