ISC DHCP Client and Relay End of Maintenance

ISC plans to end maintenance of the ISC DHCP client and relay by the end of 2021. We will continue maintaining the DHCP server, and any code that is common between the server, client, and relay, for at least a couple more years. Our January 2020 release of ISC DHCP incorporated a number of submitted patches, mostly for the client, but otherwise we have done little recent maintenance on the client or relay. To be honest, those components have simply not been a focus of ours for several years. As a small non-profit organization, we have to allocate our limited resources carefully and we think the ISC DHCP server and Kea distribution have more future value for users.

Why are we doing this?

The ISC DHCP code is extremely mature, and is not designed for unit-test ability. The test coverage is just not good enough to inspire confidence that any change, even a seemingly minor one, would not cause some unidentified breakage.

ISC has no support customers for the ISC DHCP client or relay, and we haven’t for at least a decade, so there is no funding stream to support continuing effort on them. We are not even sure whether anyone is even updating their client or relay code from our distribution anymore. We think it is likely that some operating systems are maintaining DHC client or relay implementations or forks that are “better maintained” and more modern than our current client or relay code. For numerous reasons - most notably, for software security - it is important to use software that is actively maintained.

Timeline

We know that ISC DHCP has a large user base, but nearly all those users get the software via a package or distribution and we have no way to communicate with them directly.

  • April 20, 2021 - Consulted a major OS packager asking what the impact would be if ISC ended client maintenance.
  • May 22, 2021 - Emailed a few dozen people who had submitted patches or particularly detailed bug reports in the past two years, saying we intended to end maintenance of the client and relay and asking if any of them were interested in becoming community maintainers. We received only a single reply, from someone willing to join a maintenance committee, but this was not enough to make up a team.
  • June 17, 2021 - Sent a public email and request for comment to the DHCP-users mailing list.
  • June 18, 2021 - Made an announcement to the DHCP-announce mailing list.
  • July 2, 2021 - Posted this blog on the ISC website.
  • Fall 2021 - We intend to produce an 4.4.3 release, which will declare in its release notes that it is expected to be the last release containing the client and relay components of ISC DHCP. We hope this message will reach any additional active users who are not subscribed to the DHCP-announce or DHCP-users lists.
  • November/December 2021 - Before the end of 2021, we plan to issue ISC DHCP 4.4.4, removing the client- and relay-specific code from the distribution.

What about the users of the DHCP client and relay?

ISC DHCP has been, and remains, open source. Anyone can fork it and develop or maintain it. Users still have all the open source freedoms with ISC DHCP that they have always had. We are just announcing that ISC will no longer maintain this code. The client and relay code is findable in the ISC DHCP open repository. Older releases of ISC DHCP (going all the way back to 1998) are archived on ISC’s FTP server.

If you are using an operating system that relies on the ISC DHCP client, there is no reason to worry that it will stop working. Your OS maintainer’s team is already providing the client script for DHCP, and they are probably testing it with each release. If you do encounter an issue with the DHCP client, you should report it to your OS provider. Several of them do already accept and address issues with the DHCP client.

There are forks of the ISC client and relay included in operating system packages, and there are also alternative client and relay implementations available. For example:

  • Roy Marples offers a dhcpcd client.
  • OpenBSD distributes a DHCP client apparently based on the ISC DHCP client, that has been updated by Henning Brauer. FreeBSD also packages that client.
  • BusyBox distributes a very small client, suitable for embedded applications.
  • OpenDHCP reportedly includes a relay. OpenWRT packages that and a DHCP forwarder maintained by Scott Logan.
  • Dibbler, which is also no longer maintained, includes a client and relay as well as a server.
  • ISC is also considering developing a new relay based on Kea DHCP code.

Feedback welcome

We welcome your comments, questions, and suggestions. If you are aware of a well-maintained implementation of either a DHC client or relay, and would like to suggest users switch to that alternative, please feel free to email us at marketing@isc.org with that information and we will update this blog post.

We have maintained ISC DHCP for over 20 years, and it is time to archive the ISC DHC client and relay. We would like to thank all the contributors who have sent us patches (mostly upstreaming client patches from operating system distributions) over the years.

Recent Posts

What's New from ISC

Previous post: BIND Updates