Node without IP-address due to dhcpcd segfault

The following is a description + solution of an issue I encountered; hopefully this will help folks who are having the same issue.

I recently bought an RPI to run Umbrel on. About once a day, the dashboard of my node was unreachable, same for SSH-access. After some log diving, I found out that my node did not have an IP-address assigned anymore to the ETH0 interface.

It appears that dhcpcd always segfaulted during the boot process of my node:

Apr 26 16:44:29 umbrel dhcpcd[699]: veth9229806: adding address fe80::5fd4:447:b20c:71bf
Apr 26 16:44:29 umbrel dhcpcd[699]: route socket overflowed - learning interface state
Apr 26 16:44:29 umbrel dhcpcd[699]: veth82fb0c0: carrier acquired
Apr 26 16:44:29 umbrel dhcpcd[699]: veth82fb0c0: IAID 6d:f2:d2:6e
Apr 26 16:44:29 umbrel systemd[1]: dhcpcd.service: Main process exited, code=killed, status=11/SEGV

The consequence of this was that the node did not get a new IP once the dhcp-lease expired. Furthermore, it seems the segfault happened at the moment docker networking was doing its thing (creating many virtual network interfaces) and I believe that dhcpcd doesn’t like that.

As a solution, I configured the following (I think one of these will suffice though):

  1. Configure static IP
  2. Add the following to /etc/dhcpcd:
    denyinterfaces veth*

Hope this helps in case you encounter a similar issue!

4 Likes

https://info.umbrel.tech/troubleshooting.html#setting-a-fixed-address-on-the-raspberry-pi

1 Like

Link seems broken.