Commit Graph

80 Commits

Author SHA1 Message Date
Roy Marples
413652c1b3 Instead of linking directly to libudev, create a plugin system for /dev
management. This allows dhcpcd to work even if udev removed and adds the
ability to change from udev to something else in the future.
2013-09-12 15:43:20 +00:00
Roy Marples
7cece083bd Fix requesting >1 DHCPv6 address 2013-09-07 23:16:36 +00:00
Roy Marples
8b7499fd9e Clarify waitup arguments. 2013-09-04 16:27:56 +00:00
Roy Marples
7013b07382 Add 4 and 6 arguments to the waitip command so that you can specify
which protocols to wait for.
2013-08-31 16:48:39 +00:00
Roy Marples
a544b76a69 Add the persistent option to the default dhcpcd.conf
Document how this can affect connected clients at shutdown, such as SSH
2013-08-26 12:20:53 +00:00
Roy Marples
15fc1181d5 Fix the persistent option. 2013-08-25 10:22:48 +00:00
Roy Marples
77961e7b99 Add an option to respect whatever the server says for the hostname.
Change the default back to FQDN as per RFC4702 section 3.1.
2013-07-28 10:22:18 +00:00
Roy Marples
d6a1865476 Add the option hostname_short, which will force the sending of the
short hostname so DDNS will always work, even if the hostname domain
is different from the DHCP servers.

Change hostname_fqdn to true/false/unset value.
unset means use what the DHCP server supplies
 (DHCPv4/DHCPv6 maybe inconsistent depending on server setup)
true/false force the hostname to be either a FQDN or a short name.
2013-07-25 15:10:16 +00:00
Roy Marples
2cfe8d0794 Use Mt for email address.
Thanks to Thomas Klausner.
2013-07-23 16:45:46 +00:00
Roy Marples
7e068c85e6 Clarify the duid option due to DHCPv6. 2013-07-19 21:14:28 +00:00
Roy Marples
a521cdce0f Note that ipv6ra_own doesn't work well on any BSD system. 2013-06-19 13:35:28 +00:00
Roy Marples
b8ffa3cd19 Map DHCPv4 options to DHCPv6 where applicable.
This makes for an easier configuration.
Send the FQDN option by default.
2013-06-05 20:13:14 +00:00
Roy Marples
cc3c3560f6 Add DHPCv6 FQDN support (RFC4704)
Improve hostname support in general, so we are aware of hostname changes.
When setting the hostname, prefer the FQDN name or append a domain.
2013-06-05 16:23:24 +00:00
Roy Marples
74ceb961fa Fix ia_pd example 2013-06-04 10:33:25 +00:00
Roy Marples
5985c4e2a6 Allow ia_pd interfaces to be specified without a SLA. 2013-06-03 22:02:51 +00:00
Roy Marples
22ea2b0deb Automate the assignment of SLA ids if not given for Prefix Delegation.
This means you can just request an ia_pd and let dhcpcd do the rest :)
2013-06-02 09:51:30 +00:00
Roy Marples
367f7b11b4 Refactor Prefix Delegation configuration so we use integers instead
of hex based arrays.
The SLA can now be applied to any router given prefix length provided the
SLA can fit into the prefix and desired prefix length.
We now wait for a carrier and LL address before adding the addresses from the
delegated prefix. Before adding this code, I added some code to generate a
LL address from the hardware address. This is now #ifdef'ed out as I don't
want to throw it away in-case dhcpcd ever needs to create LL addresses
itself.

Many thanks to Martin Husemann who developed code for these functions:
	ipv6_userprefix, in6_to_h64 and h64_to_in6
which are used to generate a prefix from the delegated prefix and the SLA
2013-06-01 21:30:18 +00:00
Roy Marples
d93d7adc13 Add timeout desc for 0 2013-05-21 13:47:38 +00:00
Roy Marples
901b42dedb Note that reboot 0 helps for mobile hosts. 2013-04-05 16:40:31 +00:00
Roy Marples
00ababe4a0 Add DHCPv6 Prefix Delegation support, RFC3633.
Add DHCPv6 Temporary Address support, RFC3315.
2013-04-01 12:15:47 +00:00
Roy Marples
7dab081fbe Add the noalias directive to so that when adding an IPv4 addresss
dhcpcd will overwrite a pre-existing address.

NetBSD PR/47699
2013-03-27 16:36:56 +00:00
Roy Marples
4c6a8becec If we have one interface enabled for IPv6 RS, we stupidly process
RAs for all interfaces we control. This patch fixes this and
updates the man page to reflect this better.
2013-02-05 10:15:59 +00:00
Roy Marples
d7555c1259 Add DHCPv6 INFORM support.
This is automatically started when RA flags O is set.
If no DHCPv6 request options are configured in dhcpcd.conf then we
request domain servers and search lists.
2012-10-12 10:31:51 +00:00
Roy Marples
eebe9a1887 Improve IPv6 RA support by allowing dhcpcd to manage the address and routes
instead of the kernel. dhcpcd will only do this if RA is disabled in the kernel
or dhcpcd has been instructed to do this via dhcpcd.conf(5) ipv6ra_own and
ipv6ra_own_default directives.

Send and process IPv6 Neighbor Solicitions and Adverts to prove router
reachability. If a router cannot be reached in this way then it is expired.

When debugging, all ND messages are displayed which will create a lot of log
spam.

To ease packaging, ./configure now accepts LDFLAGS and --enable-static.
2012-07-05 16:37:41 +00:00
Roy Marples
fd73ceb145 Add .Lk macro to URLs 2012-03-19 11:07:56 +00:00
Roy Marples
61dd6cf9ab Add an option to control dhcpcd forking or not if the RA does not contain
a RDNSS option.
This involves changing our options to an unsigned long long so we can use
more than 32 bits.
2012-03-07 10:06:45 +00:00
Roy Marples
91cd732493 Add an implementation of an IPv6 Router Solicitor as specified in
RFC6016 with regards to RDNSS and DNSSL.
2011-12-15 02:35:47 +00:00
Roy Marples
499225e43f Change default reboot timeout to 5 seconds.
When rebooting and we haven't daemonised, reduce the discover timeout
to allow for fallback or IPv4LL addresses.
2011-11-22 23:44:32 +00:00
Roy Marples
443c869540 Man page corrections. 2010-10-17 10:44:54 +00:00
Roy Marples
900b3da40e -J, --broadcast now sets the broadcast flag in DHCP messages. 2010-01-28 20:12:54 +00:00
Roy Marples
87b266d2d4 Spelling corrections.
Thanks to Soren Jacobsen.
2010-01-24 21:01:59 +00:00
Roy Marples
4242c9b3dd -H, --xidhwaddr will use the last four bytes of the hardware address
as the xid instead of generating a random number.
Thanks to Aurelien.
2010-01-14 02:04:41 +00:00
Roy Marples
2a07a2afd8 Add back -w, --waitip so that user has total control over behaviour. 2009-10-16 19:59:30 +00:00
Roy Marples
355889a91c Remove the -w option and make it the default action if at least one
interface reports a carrier.
2009-10-14 15:16:07 +00:00
Roy Marples
cea7dcafce wait -> waitip
It's more descriptive and allows future wait$entity commands.
2009-10-13 06:02:30 +00:00
Roy Marples
21090e3d1d -w, --wait forces dhcpcd to wait for an ip address or timeout when
running on more than one interface.
2009-10-07 21:11:14 +00:00
Roy Marples
9cb58952bc Remove escapes in man pages for vendor ,"hello world" 2009-09-02 18:32:28 +00:00
Roy Marples
95d6dcfab1 Allow an un-encapsulated vendor option. 2009-09-01 20:38:01 +00:00
Roy Marples
6bfd88f171 -e, --env var=value
now pushes var=value to the environment when dhcpcd-run-hooks is run.
This allows the possibility to set env vars that hook scripts can work off.
A good example of this is 30-hostname so that force_hostname=YES can set
the hostname regardless of the current hostname.

--reconfigure now takes the short option -g.
2009-07-25 23:22:10 +00:00
Roy Marples
35d02ae670 Documentation updates.
A few minor corrections, but mainly updates the expected behaviour for the hostname being sent.
2009-07-25 17:57:49 +00:00
Roy Marples
bf80d52682 Add -W, --whitelist addr/cidr
This only allows packets from the addresses listed and overrides
blacklist if set.
2009-07-05 11:33:46 +00:00
Roy Marples
2063c6f9a1 Document nooption 2009-07-04 00:38:55 +00:00
Roy Marples
601fb3d500 Add (c) to Copyright 2009-05-01 13:57:45 +00:00
Roy Marples
ff021b0b5d Add an option to fallback to a profile when DHCP fails. 2009-04-18 21:43:23 +00:00
Roy Marples
6f767217f6 Add the ability to arping an address and select a profile based on the
hardware address replied with or the ip address.
2009-03-31 08:35:38 +00:00
Roy Marples
1abffd5ba5 We can now detected primary addresses added or changed in BSD.
As such, we can wait for a 3RDPARTY to configure the interface, such as PPP.
We can then take the destination addess and automatically give it a default
route or any other DHCP option such as DNS servers.
This addresses #159.
2009-03-19 17:52:12 +00:00
Roy Marples
918338f280 mandoc mandates the presence of .Os 2009-03-11 17:57:10 +00:00
Roy Marples
ce6b39df64 We need to blacklist IP addresses at the packet level
so we can ignore NAKs from rogue servers who don't
supply a ServerID, or supply a fake one.
2009-03-10 17:28:18 +00:00
Roy Marples
e095a6ebb5 Blacklist now accepts networks as well as addresses.
It also matches on the address offered as well as the server address.
2009-02-27 21:18:01 +00:00
Roy Marples
760f7628bc Use Aq properly. 2009-02-05 01:58:17 +00:00