1dhcpcd-4 - DHCP client daemon 2Copyright 2006-2008 Roy Marples <roy@marples.name> 3 4 5Installation 6------------ 7Edit config.h to match your building requirements. 8Then just make; make install 9man dhcpcd for command line options 10 11 12Notes 13----- 14If you're cross compiling you may need to set the below knobs to avoid 15automatic tests. 16OS=BSD | Linux 17 18If you're building for an MMU-less system where fork() does not work, you 19should add -DTHERE_IS_NO_FORK to your CPPFLAGS. 20This also puts the --no-background flag on and stops the --background flag 21from working. 22 23You can change the default dir with these knobs. 24For example, to satisfy FHS compliance you would do this:- 25LIBEXECDIR=/lib/dhcpcd 26DBDIR=/var/lib/dhcpcd 27 28We now default to using -std=c99. For 64-bit linux, this always works, but 29for 32-bit linux it requires either gnu99 or a patch to asm/types.h. 30Most distros patch linux headers so this should work fine. 31linux-2.6.24 finally ships with a working 32-bit header. 32If your linux headers are older, or your distro hasn't patched them you can 33set CSTD=gnu99 to work around this. 34 35 36Hooks 37----- 38Not all the hooks in dhcpcd-hooks are installed by default. 39By default we install 01-test, 10-mtu, 20-resolv.conf and 30-hostname. 40To add more simply add them in the HOOKSCRIPTS variable. 41make HOOKSCRIPTS=50-ntp install 42 43 44Compatibility 45------------- 46If you require compatibility with dhcpcd-3 and older style variables, 47you can install 50-dhcpcd-compat into the directory $LIBEXECDIR/dhcpcd-hooks 48We don't install this by default. 49You should also add -DCMDLINE_COMPAT to your CPPFLAGS if you need to be fully 50commandline compatible with prior versions. 51 52dhcpcd-3 enabled DUID support by default - this has changed in dhcpcd-4. 53You can enable it via the --duid, -D command line option or by using the 54duid directive in dhcpcd.conf. 55If CMDLINE_COMPAT is defined the we renable DUID support by default IF 56the dhcpcd.duid file exits. This keeps the clients working as they were, 57which is good. 58 59dhcpcd no longer sends a default ClientID for ethernet interfaces. 60This is so we can re-use the address the kernel DHCP client found. 61To retain the old behaviour of sending a default ClientID based on the 62hardware address for interface, simply add the keyword clientid to dhcpcd.conf. 63If CMDLINE_COMPAT is defined, we renable the sending of ClientID by default 64AND adding clientid to dhcpcd.conf causes it NOT to be sent. 65 66dhcpcd-4 is NOT fully commandline compatible with dhcpcd-2 and older and 67changes the meaning of some options. 68 69 70ChangeLog 71--------- 72We no longer supply a ChangeLog. 73However, you're more than welcome to read the commit log at 74http://roy.marples.name/projects/dhcpcd/log/ 75