Re: Grrrr ... dhcpd6



> From: "Bjørn Mork" <bjorn mork no>
> Pavel Simerda <psimerda redhat com> writes:
> 
> > ----- Original Message -----
> >> From: "Bjørn Mork" <bjorn mork no>
> >> To: "Gene Czarcinski" <gene czarc net>
> >> Cc: networkmanager-list gnome org
> >> Sent: Friday, September 28, 2012 10:46:31 AM
> >> Subject: Re: Grrrr ... dhcpd6
> >> 
> >> Gene Czarcinski <gene czarc net> writes:
> >> 
> >> > OK, anyone have any experience sending commands, requests etc.
> >> > via
> >> > dhclient?
> >> 
> >> Well, if you ask me (OK, you didn't, but I am answering anyway :-)
> >> then
> >> the IPv6 support in the ISC dhclient is far from mature enough to
> >> be
> >> used for anything yet, and it moves at a pace which... I don't
> >> think
> >> it
> >> will ever become useful outside simple lab experiments.  The PD
> >> support
> >> is unconfigurable.  There is no support for PPP interfaces. Both
> >> of
> >> these are show stoppers.  IMHO, you have *no* DHCPv6 support worth
> >> mentioning without them.
> >
> > The basic DHCP usecases are covered by dhclient.
> 
> If you meant DHCPv6, then I do not agree.

This is not a matter of agreement, see below.

> It doesn't support the
> currently most popular ISP configuration: DHCPv6-PD over PPP.

NetworkManager currently only supports IPv6 hosts, not routers. Until we
start implementing any sort of IPv6 routing, DHCP-PD is out of question.

> >> And this is not because these features are difficult to add.
> >>  There
> >> have
> >> been feature requests and patches circulating for years.  Here's
> >> one
> >> example:
> >> https://lists.isc.org/pipermail/dhcp-users/2010-April/011624.html
> >
> > Then the fist step might be to get the patchset into distributions
> > if
> > it's good enough to be added. It can be used for a while and then
> > submitted again for inclusion. Poking jpopelka for that.
> 
> I wish you good luck with that.  Upstream is a black patch hole in my
> experience.

I hope you are talking about ISC upstream, specifically.

> >> Being able to configure an IA_NA address on an ethernet interface
> >> is
> >> just not enough.
> >
> > It's one of the two most important features of DHCPv6, the other
> > being
> > conveying DNS information to hosts that also works.
> 
> Only if the host is connected by ethernet...

Citation needed.

> That is an odd DHCP legacy restriction, and not the way the DHCPv6
> protocol was designed.

Same as above.

> >> Look further and plan for the other features you
> >> *must* support.
> >
> > Could you please specify which of the features are required in host
> > implementations? Currently I only know about the options Gene is
> > trying
> > to use. But that looks to me too easy to be a good reason to
> > abandon
> > dhclient.
> 
> As I said, I'd like to see PPP support and configurable PD support.
> At the very least, I want to create rules for splitting a prefix over
> the available host interfaces.

NetworkManager currently doesn't support any IPv6 routing usecases. Your
concerns are actually ahead of what we are trying to solve, which is good.

Please, if you are really interested about this, write down your solutions
and put (or link) them here:

https://bugzilla.gnome.org/show_bug.cgi?id=593815

Than way they don't get lost before someone actually gets to implementing this.
I'd be happy if you could find time to do that.

> But I can understand if you define those features as out of scope for a host
> implementation.

Exactly.

> That's OK as long as everybody is aware of these limitations.

I'm writing from the current NetworkManager perspective.

> >> Using the ISC dhclient is a dead end.
> >> 
> >> I believe the ISC development model just does not work anymore.
> >>  It
> >> belongs in another millennium.  Sorry.
> >
> > You *may* be right. But, unfortunately, I have been playing with
> > DHCPv6
> > implementations and there wasn't one that I would actually like.
> > Except
> > ISC DHCP which works for me but needs improvement.
> >
> >> Hmm, looking at https://bugzilla.redhat.com/show_bug.cgi?id=626514
> >> it
> >> seems that Redhat is using a heavily patched ISC dhclient, fixing
> >> these shortcomings.
> >
> > And this can continue and distributions are free to include the
> > patches.
> >
> >> But I wonder if they are prepared to take over as upstream?  If
> >> not,
> >> then I suggest that NM development look for other
> >> options,
> >
> > I would like to see one single option that matches or even exceeds
> > the
> > quality of ISC DHCP, which is not perfect, but still rather good.
> > Look
> > at the RH-patched version.
> 
> I did an exercise on this a few years ago, and I do agree that there
> is no perfect candidate. Unfortunately I don't think the picture has
> changed much since this thread:

I can imagine.

> http://www.gossamer-threads.com/lists/nsp/ipv6/20683
> 
> Shane Kerr from ISC had some promising answers back then, but time
> has shown that they are unable to deliver.  The BIND10 project is
> moving the right direction, but it is still not open enough to attract
> a large number of developers.  So it moves very slowly.  And the DHCP code
> there is not yet ready for anything, I believe.

One of my frieds is working on that one, paid by CZ.NIC (.cz domain registrar).

> >> or the DHCPv6 support will be unmaintainable on any non Redhat
> >> distribution.
> >
> > To summarize the possibilities:
> >
> > 1) Continue using ISC DHCP. Integrate the necessary patches
> > upstream.
> >
> > 2) Use a fork of ISC DHCP that integrates the patches. Or maintain
> > a
> > cross-distro patchset.
> >
> > 3) Find/create a real DHCP client (even dhclient doesn't work as a
> > DHCP client
> > without NetworkManager's dhclient-script).
> >
> > I'm all for taking the best route. But... dhclient works pretty
> > well for most
> > common use cases. And we're not going to make default anything that
> > breaks
> > those.
> >
> > And if we're pushing such a big change, I would only ever go for a
> > proper solution.
> > The new DHCP client should work well for the current use cases and
> > bring improvement
> > to new use cases. And it should really work as a DHCP client and
> > should *not*, at
> > least with proper commandline option, try to be a network
> > configuration daemon.
> >
> > The only goal of a DHCP client for the modern networking is to
> > maintain the DHCP state
> > and convey the DHCP configuration changes to the network
> > configuration daemon. Again,
> > dhclient does it, but only with NetworkManager's dhclient-script.
> 
> I am not sure if you are talking about DHCPv6 here or not.

That's it. The best option is to have one combined DHCPv4 and DHCPv6 client
as it is currently done with dhclient. It's much more maintainable from
the NetworkManager perspective. And you don't need to force people to install
yet another tool for IPv6.

> Just to make it clear: The ISC dhclient is the best open source DHCP client I know
> of. I am not suggesting that it should be replaced.

That is a big change for me.

> But I believe ISC has demonstrated quite well that reusing the IPv4 DHCP code does not
> make a DHCPv6 client. So you may want to choose something else for DHCPv6.

I don't think it demonstrates anything apart from the fact that ISC DHCP misses some
funcionality.

> As Tore pointed out: Considering upstream maintenance, the only real
> option at the moment is dibbler.

IMO Tore didn't point out anything like that. On the contrary, he confimed he currently
doesn't even know if dibbler can be used as a pure DHCP client at all.

Cheers,

Pavel


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]