[BACK]Return to README.md CVS log [TXT][DIR] Up to [cvs.NetBSD.org] / src / external / bsd / dhcpcd / dist

File: [cvs.NetBSD.org] / src / external / bsd / dhcpcd / dist / README.md (download)

Revision 1.1.1.3 (vendor branch), Wed Dec 6 10:33:29 2017 UTC (6 years, 4 months ago) by roy
Branch: roy, ROY, MAIN
CVS Tags: phil-wifi-base, phil-wifi-20191119, phil-wifi-20190609, pgoyette-compat-merge-20190127, pgoyette-compat-base, pgoyette-compat-20190127, pgoyette-compat-20190118, pgoyette-compat-1226, pgoyette-compat-1126, pgoyette-compat-1020, pgoyette-compat-0930, pgoyette-compat-0906, pgoyette-compat-0728, pgoyette-compat-0625, pgoyette-compat-0521, pgoyette-compat-0502, pgoyette-compat-0422, pgoyette-compat-0415, pgoyette-compat-0407, pgoyette-compat-0330, pgoyette-compat-0322, pgoyette-compat-0315, pgoyette-compat, netbsd-9-base, netbsd-9-3-RELEASE, netbsd-9-2-RELEASE, netbsd-9-1-RELEASE, netbsd-9-0-RELEASE, netbsd-9-0-RC2, netbsd-9-0-RC1, netbsd-9, is-mlppp-base, is-mlppp, dhcpcd-8_1_6, dhcpcd-8_1_5, dhcpcd-8_1_4, dhcpcd-8_1_3, dhcpcd-8_1_2, dhcpcd-8_1_1, dhcpcd-8_1_0, dhcpcd-8-0-6, dhcpcd-8-0-5, dhcpcd-8-0-4, dhcpcd-8-0-3, dhcpcd-8-0-2, dhcpcd-8-0-1, dhcpcd-8-0-0, dhcpcd-7-2-3a, dhcpcd-7-2-2, dhcpcd-7-2-1, dhcpcd-7-2-0, dhcpcd-7-1-1, dhcpcd-7-1-0, dhcpcd-7-0-8, dhcpcd-7-0-7, dhcpcd-7-0-6, dhcpcd-7-0-5b, dhcpcd-7-0-5a, dhcpcd-7-0-5, dhcpcd-7-0-4, dhcpcd-7-0-3, dhcpcd-7-0-2, dhcpcd-7-0-1, dhcpcd-7-0-0-rc4, dhcpcd-7-0-0
Branch point for: phil-wifi, netbsd-7
Changes since 1.1.1.2: +3 -1 lines

Import dhcpcd-7.0.0-rc4 with the following changes:
  *  Don't flush prefix routes/routers if kernel does not support RA
  *  dhcp: improve errors around UDP checksum failure
  *  dhcp: announce existing addresses before rebooting
  *  bpf: rework loop so that we can close/reopen fd inside and abort
  *  ipv6nd: don't handle NA/RA for non active interfaces
  *  dhcp6: listen on all addresses in non master mode
  *  dhcpcd-run-hooks: set protocol in dhcpcd, don't guess
  *  Ensure that xid is unique across all interfaces
  *  dhcp6: redirect message to interface which uses the xid
  *  bsd: strip scope from LL addresses when detecting their addition
  *  ipv6nd: fix address lifetime overflow on carrier up
  *  dhcp6: fix confirmation of lease on carrier up

# dhcpcd

dhcpcd is a
[DHCP](http://en.wikipedia.org/wiki/Dynamic_Host_Configuration_Protocol) and a
[DHCPv6](http://en.wikipedia.org/wiki/DHCPv6) client.
It's also an IPv4LL (aka [ZeroConf](http://en.wikipedia.org/wiki/Zeroconf))
client.
In layman's terms, dhcpcd runs on your machine and silently configures your
computer to work on the attached networks without trouble and mostly without
configuration.

If you're a desktop user then you may also be interested in
[Network Configurator (dhcpcd-ui)](http://roy.marples.name/projects/dhcpcd-ui)
which sits in the notification area and monitors the state of the network via
dhcpcd.
It also has a nice configuration dialog and the ability to enter a pass phrase
for wireless networks.

dhcpcd may not be the only daemon running that wants to configure DNS on the
host, so it uses [openresolv](http://roy.marples.name/projects/openresolv)
to ensure they can co-exist.

See [BUILDING.md](BUILDING.md) for how to build dhcpcd.

If you wish to file a support ticket or help out with development, please
[visit the Development Area](https://dev.marples.name/project/profile/101/)
or join the mailing list below.

## Configuration

You should read the
[dhcpcd.conf man page](http://roy.marples.name/man/html5/dhcpcd.conf.html)
and put your options into `/etc/dhcpcd.conf`.
The default configuration file should work for most people just fine.
Here it is, in case you lose it.

```
# A sample configuration for dhcpcd.
# See dhcpcd.conf(5) for details.

# Allow users of this group to interact with dhcpcd via the control socket.
#controlgroup wheel

# Inform the DHCP server of our hostname for DDNS.
hostname

# Use the hardware address of the interface for the Client ID.
#clientid
# or
# Use the same DUID + IAID as set in DHCPv6 for DHCPv4 ClientID as per RFC4361.
# Some non-RFC compliant DHCP servers do not reply with this set.
# In this case, comment out duid and enable clientid above.
duid

# Persist interface configuration when dhcpcd exits.
persistent

# Rapid commit support.
# Safe to enable by default because it requires the equivalent option set
# on the server to actually work.
option rapid_commit

# A list of options to request from the DHCP server.
option domain_name_servers, domain_name, domain_search, host_name
option classless_static_routes
# Respect the network MTU. This is applied to DHCP routes.
option interface_mtu

# Most distributions have NTP support.
#option ntp_servers

# A ServerID is required by RFC2131.
require dhcp_server_identifier

# Generate SLAAC address using the Hardware Address of the interface
#slaac hwaddr
# OR generate Stable Private IPv6 Addresses based from the DUID
slaac private
```

The [dhcpcd man page](/man/html8/dhcpcd.html) has a lot of the same options and more, which only apply to calling dhcpcd from the command line.


## Compatibility
dhcpcd-5 is only fully command line compatible with dhcpcd-4
For compatibility with older versions, use dhcpcd-4

## Upgrading
dhcpcd-7 defaults the database directory to `/var/db/dhcpcd` instead of
`/var/db` and now stores dhcpcd.duid and dhcpcd.secret in there instead of
in /etc.
The Makefile `_confinstall` target will attempt to move the files correctly from
the old locations to the new locations.
Of course this won't work if dhcpcd-7 is packaged up, so packagers will need to
install similar logic into their dhcpcd package.

## ChangeLog
We no longer supply a ChangeLog.
However, you're more than welcome to read the
[commit log](http://roy.marples.name/git/dhcpcd.git/log/) and
[archived release announcements](http://roy.marples.name/archives/dhcpcd-discuss/).