Odhcpd problems

Hi!
I have a problem with odhcpd.
After reboot it doesn't hand out leases.
It was working fine for a couple of months now but it started to happen again.
I had this problem before but I'm not sure what is triggering this.

Log:

Fri May 13 02:12:43 2022 user.notice ucitrack: Setting up /etc/config/odhcpd reload dependency on /etc/config/dhcp
Fri May 13 02:12:43 2022 daemon.err odhcpd[2472]: Failed to send to ff02::1%lan@br-lan (Cannot assign requested address)
Fri May 13 02:12:46 2022 daemon.err odhcpd[2472]: Failed to send to ff02::1%lan@br-lan (Cannot assign requested address)

The IPv6 multicast error was always there I think, even when it was working.
There were also no updates in trunk to odhcpd,uci or netifd in the last days?

The only thing I have changed is, switching from Hyper-V to Windows Subsystem for Linux.
After migrating my config, it had one symbol missing after generating the defconfig:
CONFIG_VIRTIO
Doesn't seem related to this but does someone know why this happend?
TL;DR:
After fresh flash or reboot odhcpd doesn't handout leases.
The proccess is running.
After /etc/init.d/odhcpd restart it works.

Offtopic:
Also usteer is throwing warnings during build, while generating the packages and enabling the init.d script, something about missing scripts. (lib/functions/network.sh and so on)

Confirm that you mean by directly issuing a CLI below, your leases are granted?

/etc/init.d/odhcpd restart

If so, upon next test can you confirm your system's time and see if it is lagging prior to the odhcpd process launching?

The device has a hardware RTC.
And the system time seems correct.

I think setting ra_default to 2 did the trick.

Hi, sorry for the bump but I'm having the same problem and I can't find anyone else who's reported something similar. I'm trying to run Unbound and odhcpd together, replacing dnsmasq as per the instructions on the wiki. After a reboot, odhcpd runs but doesn't give out any leases, but once I restart the service everything works fine. Setting ra_default didn't help, and the system time looks correct all through the boot process. Interestingly, restarting odhcpd through rc.local doesn't help either, it seems to need to be restarted after the entire boot process is complete. Any ideas? :slight_smile:

@Lolomokakus I just bumped into the same issue when replacing dnsmasq with unbound and odhcpd. This happens because the service is not enabled. You probably get a Command failed: Not found error message when restarting the service because it is not running:

root@OpenWrt:~# /etc/init.d/odhcpd restart
Command failed: Not found

You need to enable odhcpd and after rebooting DHCP should be working:

service odhcpd enable

Well, I double checked and it turns out odhcpd was already enabled. I disabled it and re-enabled it for good measure, then rebooted, but it turns out the situation is still the same: odhcpd is running but does not give out any leases until it is restarted manually. Could there be some kind of race condition at work here?