Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 3 Feb 2006 16:55:01 -0800
From:      "David W. Hankins" <David_Hankins@isc.org>
To:        freebsd-stable@freebsd.org
Subject:   Re: dhclient in 6.0
Message-ID:  <20060204005501.GD7613@isc.org>
In-Reply-To: <61418.24.90.33.115.1139004207.squirrel@mail.el.net>
References:  <52993.24.90.33.115.1138913403.squirrel@mail.el.net> <59391.24.90.33.115.1138965018.squirrel@mail.el.net> <20060203124325.5f512537.lists@yazzy.org> <57854.24.90.33.115.1138967941.squirrel@mail.el.net> <d8a4930a0602030429q50f6aa39o@mail.gmail.com> <54176.24.90.33.115.1138971301.squirrel@mail.el.net> <20060203130241.GJ44469@pegasus.dyndns.info> <c7aff4ef0602030524y3a2632d3w@mail.gmail.com> <60155.24.90.33.115.1138981486.squirrel@mail.el.net> <61418.24.90.33.115.1139004207.squirrel@mail.el.net>

next in thread | previous in thread | raw e-mail | index | archive | help

--TRYliJ5NKNqkz5bu
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable

Marcin Jessa wrote:
> Son't be silly. What if you dont know what IP you will get from the
> lease? That's what working implementation of DHCP is for...

I thought that was why FreeBSD moved away from ISC DHCP to OpenBSD
dhclient?

Actually, I guess I never did understand that move.  Certainly, no
one ever explained it to me without a great deal of "wifi" handwaving.


Let me introduce myself...I'm David Hankins.  I work at a small
non-profit company you may have heard of called ISC (www.isc.org).

I'm a pretty lucky guy, because I get paid to maintain the ISC
DHCP package.  "See the world, write open source software," they
said.

For some time we've been fighting a defensive battle.  Trying to get
time and resources to spend bringing DHCP back out of the dark ages
and up to snuff.  When I first started working on DHCP, I was
volunteering two days a week (don't knock it: I got 3.0.1 final
released this way).  It seemed the need for maintenance releases
would never end.  Now, I'm on DHCP full time, we're finally thinking
offensively, and we've got DHCP 3.1.0 on our plates, forks in hand.


"We at ISC cherish our relevance."  If you've heard Paul Vixie say this
once, you've probably heard him say it a million times.  That's mostly
because it's true.

We lose relevance every time someone forks our code, or outright stops
using our software alltogether.

It's also our achilles heel.  If you want to see ISC bring about some
form of radical, controversial change, history has shown that credible
threats of code forks will do it.

Threats, mind you.  Not acts.  It's not supposed to come to that.


I used to work with Martin Blapp to bring the ISC DHCP software
distribution up to synch with the FreeBSD core and /usr/ports
changes.  "Reducing our forkiness".

I had what I consider a great working relationship with Martin,
and he was indespensible in the efforts to synch our sources.  I
certainly hope he found no reason to complain of me.  If he did,
he never spoke of it.

Until one day, I heard from our sysadmin that FreeBSD 6.0 would use
OpenBSD's dhclient.


Now, this was pretty shocking to me.  There was never a mention that
anyone found anything 'missing'.  There was never a threat, much less
a motivation, of something like increasing code forks or discontinuing
use of the software.

And I was in the middle of this work I was doing with Martin at the
time, poring over code changes to review and incorporate.

Usually, you just have to keep your users happy to stay relevant in
open source.  Not true in this case, I went to bed the night before
thinking FreeBSD was under my wing, happily being served well, and
woke up the next day in a world where ISC had been kicked out of the
house without so much as a bye-or-leave.

With a code branch ready to roll for our next feature release that
includes what used to be the FreeBSD feature changes, and a code
branch of FreeBSD bugfixes now released in the 3.0.4 Beta release (one
half of that noble work Martin helped me puzzle through), I was under
the impression I was fulfilling all needs, in the absence of all
complaint to the contrary.

Maybe I was supposed to send someone a Christmas card and pack of
candies?


So, I pretty much haven't heard from anyone involved with the FreeBSD
project ever since.

I would have liked to have thought I could have had some sort of
influence over that decision by being able to supply the features
they needed.


In the meantime, I have had more energy to devote to my contacts at
various Linux distributions.  Together, we've come up with a sort of
vague consensus for the future of the ISC dhclient.  It involves
something called dBus (tearing out OMAPI in that process), switching
to a one-daemon-per-interface model rather than the current one-daemon
model (and taking care of the problem of integrating different option
contents from multiple interfaces), and seeing what we can do to get
rid of the tacky BPF requirement that dhclient still clings to for
strict RFC2131 conformance.

Some day, I hope to interface dhclient closely with the Network
Manager;

	http://www.gnome.org/projects/NetworkManager/

And in general an open standard for allowing application-layer
access to DHCP protocol services and options (Firefox getting
http cache parameters or whatnot).  Again via dBus.

Then there's DHCPv6.

There's no one I think I'm supposed to be talking to about
architectural plans like these at FreeBSD.  So all these plans
are pretty much Linux centered.  I mean, dBus is open, and Network
Manager should build on all platforms, but you know there are always
niggling platform specific details to work out.

I also haven't had any time to look within FreeBSD to see what this
OpenBSD dhclient was all about.

So I also still don't even know what base features would get ISC
back in the running for...I don't know...FreeBSD 7?


Indeed, the schizm has grown so great that I recently installed over
my FreeBSD-5 at-work-workstation with SUSE, so that I would have ready
access to the tools and environment that my now -only- representative
user base was most familiar with.

I used to keep Linux at home and FreeBSD at work so that FreeBSD was
represented primarily, and Linux was at arm's reach when I had dire
need for it.

Now I basically only work in Linux.

I think we still have a FreeBSD-5 box in the lab if I was feeling
nostalgic, but at this point I basically have nothing to do with that
platform, save build testing.


So I guess you can imagine my surprise when I hear through the grapevine
that folks on freebsd-stable are offering the advice of "install
/usr/ports/isc-dhcp".

I thought we didn't cut the mustard enough to even talk to.


If anyone at the FreeBSD project is unhappy with this schizm, it is
news to me.  If anyone would like to work with me to produce a, I
shall term, "working implementation of DHCP" that's well suited to
FreeBSD's needs, I would like to hear your thoughts on needs and
requirements.

Up until this, to me, unusual news, I had been planning the future
without FreeBSD in the picture at all.

It's surprising to me to think that someone still uses our client
software on that platform.

--=20
David W. Hankins		"If you don't do it right the first time,
Software Engineer			you'll just have to do it again."
Internet Systems Consortium, Inc.		-- Jack T. Hankins

--TRYliJ5NKNqkz5bu
Content-Type: application/pgp-signature
Content-Disposition: inline

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.2 (GNU/Linux)

iD8DBQFD4/tlcXeLeWu2vmoRAnalAKCky60UDwIIddVmc4090UQ1/lqzQgCgqEAf
w22wSamc5I3x1u/69RkCLtw=
=ePW7
-----END PGP SIGNATURE-----

--TRYliJ5NKNqkz5bu--



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20060204005501.GD7613>