1 dhcpcd - DHCP client daemon 2 Copyright (c) 2006-2012 Roy Marples <roy (a] marples.name> 3 4 5 Installation 6 ------------ 7 ./configure; make; make install 8 man dhcpcd for command line options 9 man dhcpcd.conf for configuration options 10 man dhcpcd-run-hooks to learn how to hook scripts into dhcpcd events 11 12 13 Notes 14 ----- 15 If you're cross compiling you may need set the platform if OS is different 16 from the host. 17 --target=sparc-sun-netbsd5.0 18 19 If you're building for an MMU-less system where fork() does not work, you 20 should ./configure --disable-fork. 21 This also puts the --no-background flag on and stops the --background flag 22 from working. 23 24 You can change the default dirs with these knobs. 25 For example, to satisfy FHS compliance you would do this:- 26 ./configure --libexecdir=/lib/dhcpcd dbdir=/var/lib/dhcpcd 27 28 We now default to using -std=c99. For 64-bit linux, this always works, but 29 for 32-bit linux it requires either gnu99 or a patch to asm/types.h. 30 Most distros patch linux headers so this should work fine. 31 linux-2.6.24 finally ships with a working 32-bit header. 32 If your linux headers are older, or your distro hasn't patched them you can 33 set CSTD=gnu99 to work around this. 34 35 Some BSD systems do not allow the manipulation of automatically added subnet 36 routes. You can find discussion here: 37 http://mail-index.netbsd.org/tech-net/2008/12/03/msg000896.html 38 BSD systems where this has been fixed are: 39 NetBSD-5.0 40 41 We try and detect how dhcpcd should interact with system services during the 42 configure stage. If we cannot auto-detect how do to this, or it is wrong then 43 you can change this by passing shell commands to --service-exists, 44 --servicecmd and optionally --servicestatus. 45 46 To prepare dhcpcd for import into a platform source tree (like NetBSD) 47 you can use the make import target to create /tmp/dhcpcd-$version and 48 populate it with all the source files and hooks needed. 49 In this instance, you may wish to disable some configured tests when 50 the binary has to run on older versions which lack support, such as getline. 51 ./configure --without-getline 52 53 54 Hooks 55 ----- 56 Not all the hooks in dhcpcd-hooks are installed by default. 57 By default we install 01-test, 10-mtu, 20-resolv.conf, 58 29-lookup-hostname and 30-hostname. 59 The default dhcpcd.conf disables the lookup-hostname hook by default. 60 The configure program attempts to find hooks for systems you have installed. 61 To add more simply 62 ./configure -with-hook=ntp.conf 63 64 65 Compatibility 66 ------------- 67 dhcpcd-5.0 is only fully command line compatible with dhcpcd-4.0 68 For compatibility with older versions, use dhcpcd-4.0 69 70 dhcpcd no longer sends a default ClientID for ethernet interfaces. 71 This is so we can re-use the address the kernel DHCP client found. 72 To retain the old behaviour of sending a default ClientID based on the 73 hardware address for interface, simply add the keyword clientid to dhcpcd.conf. 74 75 76 ChangeLog 77 --------- 78 We no longer supply a ChangeLog. 79 However, you're more than welcome to read the commit log at 80 http://roy.marples.name/projects/dhcpcd/log/ 81