[KLUG Members] dhcpd

Adam Tauno Williams members@kalamazoolinux.org
Fri, 31 Jan 2003 14:41:43 -0500


>>Does anyone know if ISC DHCP provides any kind of API or hooks for looking
>>up data external to the config file?  I'd like to be able to restrain its
>>dolling out an IP except to MACs found in the DSA.  Bieng able to trigger an 
>>event on lease grant/renweal/expire would be nice to.  But I've never seen 
>>anything like this.
>Guess it's time to look through the source code for dhcpd ... yuck!

I just found -
http://www.newwave.net/~masneyb/
where there is an ISC DHCP LDAP patch. which the author claims will be in the
next release.  It only handles configuration, and I'd REALLY like the lease
database available, but it is a start.

Also discovered that I can interrogate my DHCP server via OMAPI,  something I
read and forgot about long ago.  OMAPI = Object Manipulation API.  LDAP is all
about objects.  The DHCP server exposes group, host, and lease objects that can
be created, deleted, etc...  A little perl (ick!) glue and we might be in business.

>I cannot help, but I can commiserate ... dhcp daemons are terrible from 
>what is obvious about them.
>Configuring them is anybody's best guess, the man pages for them are 
>unintelligible, and the one my ISP runs just plain sux.

I used to have some malevolant behaviour from ISC DHCP 2.0.  But since 3.0 the
server has been rock solid.

>Damn if I have not seen _smart_ folks who've run multiple ISPs 
>simultaneously for over 10 years, sitting
>there for over 30 minutes wondering why their laptop cannot negotiate an 
>IP from whatever dhcpd is on
>the LAN they are connected to, and fighting with dhcp client config 
>files.  So both the dchp clients _and_
>servers are pitiful, and yes I've tried them all (pump, dhclient, dhcpcd 
>clients ... dhcpd server, etc ... not to
>mention windozing off waiting for an IP).

The only problem I have is that the client frequently seems to just not update
resolv.conf.

>Maybe it's time to go back and read the RFCs, take a look at the source, 
>and figure out why there are
>command line options to dhcp clients like "--win-client-ident" and why 
>the _latest_ release of the default
>dhcp client from RedHat (dhclient, i think) takes over 5 minutes to 
>negotiate an IP sometimes! 

Alot of this is because DHCP is deliberately extensible.  And of course, M$
would extend it even if it wasn't meant to be (cough, PAC, cough).