udhcp Server/Client Package

The udhcp package is no longer maintained/packaged as a standalone project. It has been fully integrated into busybox. If you want to use only udhcp, you should download the latest version of busybox and disable all other applets.

The udhcp Server/Client Package (licensed under the GPL -- see COPYING for details) was originally designed to run on a NETtel (which runs on Greg Ungerer's uClinux-coldfire linux port).

Call for testing

The 0.9.x version of udhcp is basically a complete rewrite of the previous versions and has matured very quickly. I'd like to get a list together of both known interoptability, and platforms that udhcp compiles/works on. I've noticed that win98 often requests unicast packets when it can only receive broadcast packets, so I started a unicast blacklist within the server, and I'm suspected that win95 will go in there too. If I notice that this behavior is too widespread, I'll probably just drop unicasting altogether. As soon as the list is more or less complete, I'll release a stable version of udhcp

If you have something to add to the list, let me know

Client Interoptability list
Server Interoptability list
Working client platforms
Working server platforms


Download the latest version (includes client): udhcp-0.9.8.tar.gz (43k) 31 Oct, 2002
Download the latest development tree of udhcp or browse the source tree.
Download daily snapshots of udhcp: http://udhcp.busybox.net/downloads/snapshots
Download on old version of udhcp: dhcpd-0.8.25.tgz (22k) 20 January, 2000
Download a windows port by Daniel Parnell dhcpd-win-0.8.25.tgz (65k) 6 April, 2000
Download the old development version: dhcpd-0.8.29.tgz (22k) 6 April, 2000

Development is quite active right now, so I'd really like to know what you think.

Why would I want to use the udhcp server/client

The udhcp server/client is targeted deliberately at embedded environments... Other linux DHCP servers out there (such as the ISC DHCP server) are targeted at larger systems such as PCs (with more RAM/disk space/etc.). As a result, the udhcp package does not have as large a feature set as some of these DHCP packages.

Compiled against uClibc, both the server and client binaries are around 18k and when compiled as one combined binary, has a size of 28k. udhcp is a perfect fit for embedded systems requring DHCP capabilities.

The udhcp server lease file is in binary format making the additional storage space required for IP and MAC addresses minimal. It also has the option of storing lease times in absolute form, or relative form, for systems without a clock. The lease file can also be saved periodically or by using a signal for systems with flash memory.

The client accepts all options on the command line, and calls external scripts to handle the configuration of interfaces to allow for the ultimate flexibility.


The operation is fairly straightforward, and the latest README can be found here.
  • Server README README.udhcpd
  • Client README README.udhcpc
  • Dump leases README README.dumpleases
  • Sample server config file udhcpd.conf

    Mailing List

    udhcp now has a mailing list
    To subscribe, click here


    Other Lineo opensoure projects


    opensource.se Embedded open source consulting in Europe.
    http://i-netinnovations.com/ Web hosting (they host busybox.net and uclibc.org).
    Codepoet Consulting Custom Linux, embedded Linux, BusyBox, and uClibc development.

    Bugs? Submit them.
    Have a question/comment? Have a patch? Email me:
    Russ Dill
    Matthew Ramsay

    $Id: index.html,v 1.19 2004/12/04 02:13:37 vapier Exp $