8

I have been looking around for something to replace my (ancient) ISC-DHCPd server.

A DHCP server with a database backend sounds like a great idea to me, as I could then have a nice, friendly web interface to my server. Surprisingly, I can't any major open-source projects that offer this.

Does anyone know of one? I have also read about modifying ISC to use a database backend...can anyone tell me if this solution is stable enough for a busy production server? Or is using a database a Bad Idea™ all together?

PS - https://stackoverflow.com/questions/893887/dchp-with-database-backend looks like SO couldn't answer this old, similar question.

EDIT: I am looking for something on a free OS platform, Linux or BSD. If there is something absolutely great that is Windows-only though, still interested.

Cory J
  • 1,618

7 Answers7

4

ISC DHCP 4.x allows the DHCP service to be backed by an LDAP database (local or remote).

The package on both Fedora 12+ and Ubuntu (version unknown) includes the LDAP schema file.

You start the DHCP server and point it at the LDAP db (via a short config file). If you select dynamic DB, each DHCP query becomes an LDAP query/response.

With LDAP you can update the DHCP contents using any language with an LDAP library from any location routable to your LDAP server. Your LDAP DB can serve an unlimited number of DHCP servers.

I used this to allow engineers to add and remove test boxes to a network without requiring them to log onto the DHCP server, edit a file or use root privs.

4

The guys at ISC (authors of BIND and the ISC DHCP server) are working on KEA, a new DHCP server implementation that -- among other nice features -- has SQL support. The source code has had support for SQLite and MySQL for years, and PostgreSQL support was added recently.

There's no proper release yet, and very little activity on their dev/users mailing lists. Hopefully that will change as the code matures, releases are made, distros start packaging it, and it gains traction with users.

svenx
  • 416
3

BlueCat.com has really cool appliances that do ip address management (DNS / DHCP) that would fit the bill EXACTLY, except that they're not opensource / free..

Bluecat lets you delegate roles, for example you could give your clients edit priviledges on the reverse zone for only their /26 or something like that, and everything is handled with high availability databases for DNS and DHCP.

If anyone knows of anything like that in the open source world, I'd love to hear about it.. I wish Microsoft would integrate DHCP into Active Directory like they did with DNS. It would be perfect for me (I know - not open source, but if it's included with the server it would work for me!)

Theuni
  • 968
Steve
  • 31
3

I had a similar issue.

I ended up writing a few lines of Python code to generate DHCP config files from a database backend. Using diff I regularly check whether the file I generate has changes to the old config and in that case I reload the DHCP server.

Works quite well for me with multiple data centers, dozens of networks and hundreds of IPs.

Also allows you to have the 'web interface' and keep it open source.

Theuni
  • 968
3

I've been researching this myself, which turned up this thread. I've found:

  • Anemon DHCP which appears to be dead/gone (thus the archive.org link). "modules gives anemon the ability to use many database as backend (mysql, postgresql, mssql, sqllite, sybase, etc..) "
  • KEA from ISC "MySQL, Postgres back-end support."
  • staticDHCPd "Databases: Postgres, MySQL, Oracle, SQLite"
arantius
  • 329
2

What advantages are you looking for? How often do you make changes to your DHCP configuration? Apart from adding, deleting or modifying the occasional reservation DHCP should be a set and forget system. If you need to regularly do anything to it you need to reconsider your methodologies.

0

If you are ISP consider using VitalQIP. It is a commercial product, but I can't imagine live without it.

plluksie
  • 478