8eeb8277e5
dhcpcd is a small DHCP client, supporting most, if not all, features of dhclient. It is much smaller (1/6 of the size on amd64), but still supports many of the more advanced modern RFCs like IPv4LL (RFC 3927), Classless Static Routes (RFC 3442) and Node-specific Client Identifiers (RFC 4361). It was written by Roy Marpled, partly in reply to the discussion of the DHCP client Sommer of Code project.
66 lines
2.1 KiB
Plaintext
66 lines
2.1 KiB
Plaintext
dhcpcd-4 - DHCP client daemon
|
|
Copyright 2006-2008 Roy Marples <roy@marples.name>
|
|
|
|
|
|
Installation
|
|
------------
|
|
Edit config.h to match your building requirements.
|
|
Then just make; make install
|
|
man dhcpcd for command line options
|
|
|
|
|
|
Notes
|
|
-----
|
|
If you're cross compiling you may need to set the below knobs to avoid
|
|
automatic tests.
|
|
OS=BSD | Linux
|
|
|
|
If you're building for a NOMMU system where fork() does not work, you should
|
|
add -DTHERE_IS_NO_FORK to your CFLAGS.
|
|
|
|
You can change the default dir with these knobs.
|
|
For example, to satisfy FHS compliance you would do this:-
|
|
LIBEXECDIR=/lib/dhcpcd
|
|
DBDIR=/var/lib/dhcpcd
|
|
|
|
We now default to using -std=c99. For 64-bit linux, this always works, but
|
|
for 32-bit linux it requires either gnu99 or a patch to asm/types.h.
|
|
Most distros patch linux headers so this should work fine.
|
|
linux-2.6.24 finally ships with a working 32-bit header.
|
|
If your linux headers are older, or your distro hasn't patched them you can
|
|
set CSTD=gnu99 to work around this.
|
|
|
|
|
|
Hooks
|
|
-----
|
|
Not all the hooks in hook.d are installed by default.
|
|
By default we install 01-test.sh, 10-resolv.conf.sh and 15-hostname.sh.
|
|
To add more simply add them in the HOOKSCRIPTS variable.
|
|
make HOOKSCRIPTS=50-ntp.sh install
|
|
|
|
|
|
Compatibility
|
|
-------------
|
|
If you require compatibility with dhcpcd-3 and older style variables,
|
|
you can install 50-dhcpcd-compat.sh into the directory $LIBEXECDIR/dhcpcd.hook.d
|
|
We don't install this by default.
|
|
You should also add -DCMDLINE_COMPAT to your CFLAGS if you need to be fully
|
|
commandline compatible with prior versions.
|
|
|
|
dhcpcd-3 enabled DUID support by default - this has changed in dhcpcd-4.
|
|
You can enable it via the --duid, -D command line option or by using the
|
|
duid directive in dhcpcd.conf.
|
|
If CMDLINE_COMPAT is defined the we renable DUID support by default IF
|
|
the dhcpcd.duid file exits. This keeps the clients working as they were,
|
|
which is good.
|
|
|
|
dhcpcd-4 is NOT fully commandline compatible with dhcpcd-2 and older and
|
|
changes the meaning of some options.
|
|
|
|
|
|
ChangeLog
|
|
---------
|
|
We no longer supply a ChangeLog.
|
|
However, you're more than welcome to read the git commit comments at
|
|
http://git.marples.name/?p=dhcpcd/.git;a=summary
|