You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I have searched the existing open and closed issues
Required Information
DietPi version | G_DIETPI_VERSION_CORE=10, G_DIETPI_VERSION_SUB=2, G_DIETPI_VERSION_RC=3 (v10.2.3)
Distro version | trixie (Debian 13)
Kernel version | Linux MagicCubeAura 6.18.16-current-rockchip64 #1 SMP PREEMPT Wed Mar 4 12:25:12 UTC 2026 aarch64 GNU/Linux
SBC model | NanoPi R5C (aarch64) — but this affects any DietPi Trixie device using ifupdown2 + DHCP
Power supply used | 5V 3A USB-C (official)
SD card used | eMMC module (32GB)
Additional Information
Software title | ifupdown2 (3.0.0-1.3), udhcpc (1:1.37.0-6)
Was the software title installed freshly or updated/migrated? | Updated from DietPi 10.1 to 10.2.3 via dietpi-update
Can this issue be replicated on a fresh installation of DietPi? | Yes — any Trixie device with iface ethX inet dhcp in /etc/network/interfaces and ifupdown2 installed
Bug report ID | 78ef9600-b193-400f-be59-fdded054ccc9
Steps to reproduce
Start with a DietPi Trixie device running v10.1.x with ifupdown2 and isc-dhcp-client installed
/etc/network/interfaces has iface eth0 inet dhcp
Run dietpi-update to update to v10.2.x
The Patch_10_2() function in .update/patches runs:
G_AGI udhcpc
G_EXEC apt-mark auto isc-dhcp-client
Later in the update, G_AGP (autopurge) runs and removes isc-dhcp-client, deleting /sbin/dhclient
Reboot the device
networking.service fails — device has no IP, unreachable via SSH
Expected behaviour
After dietpi-update migrates from isc-dhcp-client to udhcpc, networking should continue to work on reboot. Either:
ifupdown2 should be patched to support udhcpc as a DHCP client, or
isc-dhcp-client should not be autopurged on systems running ifupdown2 until ifupdown2 has udhcpc support
Actual behaviour
On reboot after the update, networking.service (ifupdown2) fails with:
eth0: cmd '/sbin/dhclient -pf /run/dhclient.eth0.pid -lf /var/lib/dhcp/dhclient.eth0.leases eth0'
failed (Errno 2) No such file or directory: '/sbin/dhclient'
The device gets no IP address and is completely unreachable over the network. For headless/remote devices, this requires physical console access to recover.
Extra details
Root cause analysis:
ifupdown2 v3.0.0 has /sbin/dhclient hardcoded in every method of /usr/share/ifupdown2/ifupdownaddons/dhclient.py (start, stop, release, start6, stop6, release6). There is no configuration option to select a different DHCP client and no fallback mechanism. When isc-dhcp-client is removed, every DHCP operation fails with ENOENT.
The Patch_10_2() function installs udhcpc and marks isc-dhcp-client as auto-removable, but does not check whether the installed networking stack (ifupdown2) is compatible with udhcpc. ifupdown2 has zero support for udhcpc — it is entirely different from classic ifupdown, which can use pluggable DHCP client scripts.
Related upstream issues:
Debian Bug #1106121 — isc-dhcp EOL, lists ifupdown2 as affected
ifupdown2 PR #253 — Adds multi-DHCP-client support (udhcpc), open since Feb 2023, never merged
Proxmox forums report the same ifupdown2 + missing dhclient failure on Proxmox 9.x
The fix should be one of:
Guard Patch_10_2() — do not mark isc-dhcp-client as auto-removable if ifupdown2 is installed:
if dpkg-query -l | grep -q '^ii[[:blank:]]*isc-dhcp-client[[:blank:]:]'then
G_AGI udhcpc
# Only allow autopurge if ifupdown2 is NOT installedif! dpkg-query -W -f='${Status}' ifupdown2 2>/dev/null | grep -q 'ok installed'then
G_EXEC apt-mark auto isc-dhcp-client
fifi
Or deploy a dhclient→udhcpc shim at /sbin/dhclient that translates dhclient CLI arguments to udhcpc equivalents (this is what we implemented as a workaround — happy to share the shim script)
Creating a bug report/issue
Required Information
G_DIETPI_VERSION_CORE=10, G_DIETPI_VERSION_SUB=2, G_DIETPI_VERSION_RC=3(v10.2.3)trixie(Debian 13)Linux MagicCubeAura 6.18.16-current-rockchip64 #1 SMP PREEMPT Wed Mar 4 12:25:12 UTC 2026 aarch64 GNU/LinuxAdditional Information
dietpi-updateiface ethX inet dhcpin/etc/network/interfacesand ifupdown2 installed78ef9600-b193-400f-be59-fdded054ccc9Steps to reproduce
isc-dhcp-clientinstalled/etc/network/interfaceshasiface eth0 inet dhcpdietpi-updateto update to v10.2.xPatch_10_2()function in.update/patchesruns:G_AGP(autopurge) runs and removesisc-dhcp-client, deleting/sbin/dhclientnetworking.servicefails — device has no IP, unreachable via SSHExpected behaviour
After
dietpi-updatemigrates fromisc-dhcp-clienttoudhcpc, networking should continue to work on reboot. Either:isc-dhcp-clientshould not be autopurged on systems running ifupdown2 until ifupdown2 has udhcpc supportActual behaviour
On reboot after the update,
networking.service(ifupdown2) fails with:The device gets no IP address and is completely unreachable over the network. For headless/remote devices, this requires physical console access to recover.
Extra details
Root cause analysis:
ifupdown2 v3.0.0 has
/sbin/dhclienthardcoded in every method of/usr/share/ifupdown2/ifupdownaddons/dhclient.py(start,stop,release,start6,stop6,release6). There is no configuration option to select a different DHCP client and no fallback mechanism. Whenisc-dhcp-clientis removed, every DHCP operation fails withENOENT.The
Patch_10_2()function installsudhcpcand marksisc-dhcp-clientas auto-removable, but does not check whether the installed networking stack (ifupdown2) is compatible withudhcpc. ifupdown2 has zero support forudhcpc— it is entirely different from classicifupdown, which can use pluggable DHCP client scripts.Related upstream issues:
The fix should be one of:
Guard
Patch_10_2()— do not markisc-dhcp-clientas auto-removable ififupdown2is installed:Or deploy a dhclient→udhcpc shim at
/sbin/dhclientthat translates dhclient CLI arguments to udhcpc equivalents (this is what we implemented as a workaround — happy to share the shim script)Or patch ifupdown2 to support udhcpc natively (per the stalled PR Support IQaudIO DACs #253)
Workaround (for affected users):
If your device is already bricked after update, connect via serial/console and run:
ip link set eth0 up udhcpc -i eth0Then either reinstall
isc-dhcp-client(apt install isc-dhcp-client) or deploy a/sbin/dhclientwrapper that callsudhcpc.apt history confirming the sequence:
journalctl output after reboot (networking.service failure):