DHCPv6 client in base

Hiroki Sato hrs at allbsd.org
Fri Oct 11 19:42:02 UTC 2019


Ben Woods <woodsb02 at gmail.com> wrote
  in <CAOc73CCLPmB7m3yaDE7p4izJ8apaO5jcyRPyLkSJtopqsHxtSQ at mail.gmail.com>:

wo> On Thu, 16 May 2019 at 2:25 am, Hiroki Sato <hrs at freebsd.org> wrote:
wo>
wo> > <driesm.michiels at gmail.com> wrote
wo> >   in <001e01d50b49$176104d0$46230e70$@gmail.com>:
wo> >
wo> > dr> Has anyone ever thought or considered integrating an IPv6 DHCP client
wo> > in
wo> > dr> base?
wo> >
wo> >  I have a plan to import wide-dhcp6 into the base system because it is
wo> >  simple enough.
wo> >
wo> > dr> net/dhcp6 isn't really maintained anymore from the KAME days it works
wo> > for
wo> > dr> basic functionality but fails when a more complex config is required.
wo> >
wo> >  More specifics about the complex configuration?
wo> >
wo> > -- Hiroki
wo>
wo>
wo> I would like to discuss whether dhcpcd is a better option to import into
wo> FreeBSD base, rather than wide-dhcp6.
wo>
wo> dhcpcd has the following benefits that I can see:
wo> - Actively maintained [1] (wide-dhcp6 seems to be stale for 11 years?)
wo> - Used in NetBSD and DragonflyBSD (code sharing amongst the BSDs will
wo> facilitate collective progress and lesson sharing). Roy, the upstream
wo> maintainer, has committer on both NetBSD and DragonFlyBSD.
wo> - more feature rich [2]
wo>
wo> [1] https://roy.marples.name/projects/dhcpcd/history
wo> [2] https://roy.marples.name/projects/dhcpcd/features
wo>
wo> hrs - what are your thoughts?

 I do not have a strong objection on dhcpcd (I am using it on some of
 my FreeBSD boxes actually) but let me explain the reason why I chose
 wide-dhcp as the candidate.  That is because it is a small,
 functional DHCPv6-only implementation.  I am planning to rewrite it
 to add the missing bits and adjust it for a tighter integration with
 kernel, ifconfig, rtsold, rtadvd, and sandboxing with Capsicum.  I
 feel dhcpcd (or others) is too big for that purpose.

 IMHO, the directions of further developments of IPv6 functionality on
 FreeBSD, NetBSD (dhcpcd), OpenBSD (slaacd + others), and DragonFly
 BSD (dhcpcd) have already been diverged.  For RFC 7217 I already have
 an in-kernel implementation (not committed yet), and I am also
 working on SeND (RFC 3971, not directly related to DHCPv6 though).
 My goal is to integrate these small implementations into the base
 system and make them possible to work together.  So for DHCPv6, I
 think an implementation of only DHCPv6 is the best.

 If people want a more feature-rich implementation or the same one on
 other systems, they can still use dhcpcd or ISC's dhclient even after
 the import.

 Of course this assumes that wide-dhcp works to some degree.  If it
 does not, importing it to the base system does not make sense.  I
 have used it in various scenarios for a long time such as RA + O flag
 on native IPv6 over Ethernet, DHCPv6-PD over PPPoE/L2TP, and others
 which are complex enough, and understand what works and what is
 missing (poor DUID format support, for example).  The popular way to
 use DHCPv6 is IA_PD, and wide-dhcp works well with it.

 So I have a question.  What is missing feature in wide-dhcp which you
 are concerned about?  I know some, but it has most of the basic
 functionality of DHCPv6 and I think it is enough as a minimal
 implementation for the base system.  My primary reason is that it is
 just for DHCPv6 as mentioned earlier and I believe it is maintainable
 in the base system.  I would like to know other people's opinion if
 there is something critical.

-- Hiroki
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 342 bytes
Desc: not available
URL: <http://lists.freebsd.org/pipermail/freebsd-net/attachments/20191012/684d22ed/attachment.sig>


More information about the freebsd-net mailing list