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
$ 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