DHCP + mysql

Simon Hobson dhcp1 at thehobsons.co.uk
Mon Mar 19 07:29:07 UTC 2007

jgomez at infoweapons.com wrote:

>Is it possible to use mysql or any database applications instead of
>dhcpd.leases in keeping a persistent database of leases that has assigned
>to clients.?

Technically, yes; in practice, no.

AFAIK the ISC server does not have the capability to do this, and I 
seriously doubt that they would be interested in adding it. There are 
two main reasons :

1) Performance.

Appending to a log file is a fast operation, which means you can 
service clients quickly. Updating an SQL database is going to be VERY 
much slower and that would impinge on the ability of the server to 
service client requests in a timely manner. The current server is, I 
believe, single threaded - so if you introduce even a small delay 
into each transaction then you severely restrict the volume of 
transactions you can handle. Internally the ISC server keeps the data 
in hashed lists for quick searching, no SQL database is going to 
match that for query speed.

2) Security

It is a requirement of the rfc that all leases must be written to 
permanent store before being offered to a client - thus avoiding the 
possible situation where a lease is offered, the server dies for 
whatever reason, and then the server offers the same lease to another 
client because it doesn't know about the first offer. Again, this is 
very quick for a log file, but quite slow for an SQL database - 
especially when you consider that you must sync a consistent database 
to disk after each and every update. NB - this requirement is one of 
those that is ignored by most other servers, including Microsofts.

Even if you got around these two problems, ISC do not have 
development staff sitting around looking for things to do and so are 
unlikely to want to put the amount of effort required into what is 
probably a minority feature.

More information about the dhcp-users mailing list