Simon Kelley
4890bcdea2
Workaround for reported recvmsg() ignoring MSG_PEEK.
2020-04-28 14:02:53 +01:00
Vladislav Grishenko
dded78b233
Add DHCPv6 ntp-server (56) option handling.
...
There was discussion in the past regarding DHCPv6 NTP server option
which needs special subclassing per RFC5908.
Patch adds support for unicast, multicast IPv6 address and for FQDN string,
preserving possibly used (as suggested earlier) hex value.
Unfortunately it's still not fully free from limitations - only address list or
only fqdn value list is possible, not mixed due current
state option parsing & flagging.
2020-03-08 15:34:34 +00:00
Simon Kelley
52ec783613
Add tag filtering of dhcp-host directives.
2020-02-07 21:05:54 +00:00
Simon Kelley
137286e9ba
Extend 79aba0f10a for multiple IPv6 addresses.
2020-02-06 22:09:30 +00:00
Simon Kelley
79aba0f10a
Support prefixed ranges of ipv6 addresses in dhcp-host.
...
When a request matching the clid or mac address is
recieved the server will iterate over all candidate
addresses until it find's one that is not already
leased to a different clid/iaid and advertise
this address.
Using multiple reservations for a single host makes it
possible to maintain a static leases only configuration
which support network booting systems with UEFI firmware
that request a new address (a new SOLICIT with a new IA_NA
option using a new IAID) for different boot modes, for
instance 'PXE over IPv6', and 'HTTP-Boot over IPv6'. Open
Virtual Machine Firmware (OVMF) and most UEFI firmware
build on the EDK2 code base exhibit this behaviour.
2020-02-03 23:58:45 +00:00
Simon Kelley
2a8710ac2f
Update copyrights to 2020.
2020-01-05 16:40:06 +00:00
Ville Skyttä
0c211c4ec5
Support DHCP option 150 (TFTP server address, RFC 5859).
2019-12-05 17:11:09 +00:00
Steven Siloti
d2d4990743
Fix missing braces in 8eac67c0a15b673c8d27002c248651b308093e4
2019-01-17 22:52:13 +00:00
Steven Siloti
18eac67c0a
Fix entries in /etc/hosts disabling static leases.
...
It is possible for a config entry to have one address family specified by a
dhcp-host directive and the other added from /etc/hosts. This is especially
common on OpenWrt because it uses odhcpd for DHCPv6 and IPv6 leases are
imported into dnsmasq via a hosts file.
To handle this case there need to be separate *_HOSTS flags for IPv4 and IPv6.
Otherwise when the hosts file is reloaded it will clear the CONFIG_ADDR(6) flag
which was set by the dhcp-host directive.
2019-01-13 22:56:36 +00:00
Simon Kelley
cc921df9ce
Remove nested struct/union in cache records and all_addr.
2019-01-02 22:48:59 +00:00
Petr Menšík
47b45b2967
Fix lengths of interface names
...
Use helper function similar to copy correctly limited names into
buffers.
2018-09-04 22:47:58 +01:00
Simon Kelley
734d53176f
Add RFC4039 rapid commit support.
2018-03-23 23:09:53 +00:00
Kurt H Maier
486bcd5a7b
Simplify and correct bindtodevice().
2018-01-26 15:10:59 +00:00
Simon Kelley
d1ced3ae38
Update copyrights to 2018.
2018-01-01 22:18:03 +00:00
Simon Kelley
50ca85504c
Bump year in copyrights.
2017-06-24 22:43:18 +01:00
Simon Kelley
bf4e62c19e
Compile-time check on buffer sizes for leasefile parsing code.
2016-07-22 21:37:59 +01:00
Simon Kelley
c49778df4a
Update copyright notices. Happy new year!
2016-01-06 18:52:33 +00:00
Simon Kelley
102208df69
DHCPv6 option 56 does not hold an address list. (RFC 5908).
2015-09-10 21:50:00 +01:00
Simon Kelley
ca85a28241
Allow T1 and T2 DHCPv4 options to be set.
2015-05-13 22:33:04 +01:00
Simon Kelley
aff3396280
Update copyrights for dawn of 2015.
2015-01-31 20:13:40 +00:00
Simon Kelley
c47e3ba446
Update copyright for 2014.
2014-01-08 17:07:54 +00:00
Simon Kelley
00238fb019
indentation fix.
2013-12-18 13:24:12 +00:00
René van Dorst
53c4c5c859
Fix crash at startup when dhcp-host with client-ids is present.
2013-10-18 14:05:32 +01:00
Simon Kelley
3b3f441189
Log SO_BINDTODEVICE use at startup.
2013-10-11 16:33:28 +01:00
Simon Kelley
24b5a5d50b
dhcp-host selection fix for v4/v6
2013-10-11 15:19:28 +01:00
Simon Kelley
8584c502d3
Don't do bindtodevice if --interface option not given.
2013-10-10 21:15:23 +01:00
Simon Kelley
903650af67
Further fixes to DHCP logging.
2013-10-03 11:43:09 +01:00
Simon Kelley
e4e9b342a7
Cosmetic change to start-up logging of DHCPv6 configuration.
2013-10-02 11:03:39 +01:00
Simon Kelley
a810559b24
daemon->icmp6fd is always valid when doing DHCPv6 now.
2013-09-25 15:36:00 +01:00
Vladislav Grishenko
408c368fa5
Remove unused variable warnings when omitting stuff at compile-time.
2013-09-24 16:18:49 +01:00
Simon Kelley
89500e31f1
Support MAC addresses in dhcp-host and dhcp-mac for DHCPv6.
2013-09-20 16:29:20 +01:00
Simon Kelley
ff7eea27e7
Add --dhcp-relay config option.
2013-09-04 18:01:38 +01:00
Simon Kelley
ef1a94abaa
Advertise lost prefixes with pref_time == 0 for 2 hours.
2013-07-26 13:59:03 +01:00
Simon Kelley
e2ba0df2d4
Don't BIND DHCP socket if more interfaces may come along later.
2013-05-31 17:04:25 +01:00
Simon Kelley
bd08ae67f9
Allow option number zero in encapsulated DHCP options.
2013-04-19 10:22:06 +01:00
Simon Kelley
96c727fda6
Cope with duplicate dhcp-options with tags (last one wins).
2013-04-02 21:35:41 +01:00
Simon Kelley
49333cbdbe
Allow trailing '*' wildcard in interface names.
2013-03-15 20:30:51 +00:00
Simon Kelley
c7961075c4
Don't erroneously reject some option names in --dhcp-match
2013-02-28 15:17:58 +00:00
Simon Kelley
61744359de
Change copyright messages to include 2013.
2013-01-31 14:34:40 +00:00
Simon Kelley
b1a1b6def5
Tweak DHCP startup logging.
2013-01-11 16:28:50 +00:00
Simon Kelley
771287be11
Wildcards in dhcp-range constructors
2012-12-30 17:38:09 +00:00
Simon Kelley
c1be917782
DHCP context logging, more tweaks
2012-12-18 18:31:11 +00:00
Simon Kelley
72c9c3b11b
complicated DHCP context logging.
2012-12-18 18:31:11 +00:00
Simon Kelley
1f776932a1
First checkin of interface-address constructor mode for DHCPv6 and RA.
2012-12-18 18:31:11 +00:00
Simon Kelley
4f7b304f53
Initial code to do authoritative DNS.
2012-11-28 21:27:02 +00:00
Simon Kelley
b191a77901
trivial indent fix.
2012-10-24 14:16:00 +01:00
Simon Kelley
35239a302a
Tweak dhcp-config sanity checking.
2012-09-24 15:09:33 +01:00
Simon Kelley
23245c0cb2
RFC 4242 support.
2012-07-18 16:21:11 +01:00
Simon Kelley
c4a7f90ebb
Config parsing error-handling update.
2012-07-12 20:52:12 +01:00
Simon Kelley
8bc4cecee6
Remove libvirt-inspired but never used access control features.
2012-07-03 21:04:11 +01:00