Hi freebsd-net,

I would like to propose dhcpcd is imported into FreeBSD base.

Reason: ensure fresh installs of FreeBSD support using DHCPv6 and prefix 
delegation to obtain an IP address (not supported by dhclient or rtsold). 
Having it in ports/packages could be problematic if people cannot obtain an 
IPv6 address to download it.

Why dhcpcd vs other DHCPv6 clients? It’s well supported, full featured, 
included in NetBSD and DragonflyBSD base, and is now sandboxed with capsicum. 
The other DHCP clients tend to either not support DHCPv6 (dhcpleased) or are no 
longer actively maintained (wide-dhcpv6-client).

For those not familiar with dhcpcd, it’s a DHCP client, not server. It can be 
run either in master mode (single instances manages DHCPv4 and DHCPv6 on all 
available network interfaces unless disabled in config), or single interface 
mode if preferred.

This was discussed once before on this mailing list in 2019, and I’ve had a 
review open on phabricator for a few years. The main technical concern raised 
(capsicum sandboxing) was resolved upstream with the dhcpcd 9.1.0 release in 
May 2020. What is perhaps missing is the broader community agreement of the 
change and forward plan.

If accepted, I would recommend a phased implementation such as that suggested 
below - open to ideas.

- 14.0 (and perhaps 13.2) - dhcpcd included but off by default (WITH_DHCPCD=on, 
but rc.conf/network.subr continue to use dhclient/rtsold). Release notes list 
forward plan.

- 14.1 - switch defaults in rc.conf/network.subr to use dhcpcd instead of 
dhclient/rtsold. Subject to any issues being addressed prior. Release notes 
could list deprecation of dhclient/rtsold - this deprecation step could be done 
slower if desired.

- 15.0 - remove dhclient/rtsold - again, could be done slower if desired.

I’d be keen to hear the thoughts of the community. If you want to try out 
dhcpcd today, it’s available in ports/packages.

I should point out that I have a ports commit bit - not src. If accepted, I’d 
either need a src committer to land it, or approve me committing (via 
phabricator).

https://reviews.freebsd.org/D22012
https://github.com/NetworkConfiguration/dhcpcd

Regards,
Ben

--
From: Ben Woods
woods...@freebsd.org

Reply via email to