SOLVED: Udhcpd question

Perhaps someone out there can weigh in on personal experience, anecdotal evidence or even the correct URL/link to read (please, no man page links, though):

Is there any substantive, potential down side to using the busybox-supplied udhcpc instead of dhcpcd (Marples)? with pihole? My guess (and personal experience thus far) is that there isn't, but I thought I'd ask anyway.

Please note :

  • I already know that udhcpc doesn't have the rich feature set, ipv6 support, bells & whistles, etc. of dhcpcd ... so, responders, thanks for not addressing that unless there is something crucial about it.
  • Also, I'm leaning towards udhcpc since in practice it seems to have a noticeably smaller memory footprint. ( read: running on embedded device w/ 128MB RAM )
  • I won't be using this pihole instance or this device for serving dhcp leases.

TIA!

I have a Pi 2 running Kodi MC (XBian) 24/7 that applies udhcpc:

$ dpkg -S udhcpc
xbian-update: /etc/xbian-udhcpc
xbian-update: /etc/xbian-udhcpc/xbian-dhclient
xbian-update: /etc/xbian-udhcpc/xbian-udhcpc
xbian-update: /sbin/udhcpc
$ readlink /sbin/udhcpc
/usr/local/bin/busybox

Some two or three years ago, I experimented having Kodi and Pi-hole running side by side on that same Pi.
I experienced no networking issues.

EDIT: Oh that Pi 2 has a little more resources :wink:

$ cat /proc/device-tree/model
Raspberry Pi 2 Model B Rev 1.1
$ vcgencmd get_mem arm
arm=768M
$ vcgencmd get_config arm_freq
arm_freq=900
1 Like

Thanks!

I also discovered that udhcpc does not automatically load extra modules, e.g. rfkill and cfg80211 (while Marples' dhcpdc does).

I've been running this on my Debian Trixie armel install now for at least a week; its memory footprint is much smaller, and for this specific use case it is idea. Very tidy and no loose ends.

1 Like

You also have below thats applied for I believe the Asus Tinkerboard SBC distro:
Oops no it is the Armbian distro that applies connman:

$ apt show connman
[..]
Description: Intel Connection Manager daemon
 The Linux Connection Manager project provides a daemon for managing
 Internet connections within embedded devices running the Linux
 operating system. The Connection Manager is designed to be slim and to
 use as few resources as possible. It is fully modular system that
 can be extended through plug-ins. The plug-in approach allows for
 easy adaption and modification for various use cases.
 .
 ConnMan provies IPv4 and IPv6 connectivity via:
  * ethernet
  * WiFi, using wpasupplicant
  * Cellular, using oFono
  * Bluetooth, using bluez
 .
 ConnMan implements DNS resolving and caching, DHCP clients for both IPv4 and
 IPv6, link-local IPv4 address handling and tethering (IP connection sharing)
 to clients via USB, ethernet, WiFi, cellular and Bluetooth.
 .
 This package contains the connman daemon and its plugins.

EDIT: Dont mind the "provies" typo :wink: