Hi, On Mon, Feb 25, 2019 at 8:46 AM Hans Dedecker <[email protected]> wrote: > > Hi, > On Sun, Feb 24, 2019 at 7:06 AM Eric Luehrsen <[email protected]> wrote: > > > > Recent (20190207) changes to odhcpd makee it dependent on OpenWrt > > logical interfaces. Boot time race conditions may make odhcpd binding > > Even before the most recent changes odhcpd was dependent on OpenWRT logical > interfaces nothing has changed in that sense > > a challenge. Intermittent or inconsistent problems can occur with DHCP > > requests until odhcpd is restarted. Change start up scripts to use > > Can you elaborate a bit more on what issues you're observing and provide > odhcpd > tracing (loglevel 7) when you observe issues ? The issue you probably have observed is fixed in https://git.openwrt.org/?p=project/odhcpd.git;a=commit;h=16c5b6c9bcb71bb67a6ab15bb458bf9ab5a8fe7e
Hans > > procd interface triggers such as dnsmasq and others have already. > > This does not really make sense to me as odhcpd is subscribed to ubus > network event > messages triggering config reload logic in case the network state of > an interface changes > > Hans > > > > Signed-off-by: Eric Luehrsen <[email protected]> > > --- > > .../network/services/odhcpd/files/odhcpd.init | 20 +++++++++++++++++-- > > 1 file changed, 18 insertions(+), 2 deletions(-) > > > > --- a/package/network/services/odhcpd/files/odhcpd.init > > +++ b/package/network/services/odhcpd/files/odhcpd.init > > @@ -1,10 +1,20 @@ > > #!/bin/sh /etc/rc.common > > > > -START=35 > > +START=19 > > STOP=85 > > USE_PROCD=1 > > > > +boot() { > > + ODHCPD_BOOT=1 > > + start "$@" > > +} > > + > > start_service() { > > + if [ -n "$ODHCPD_BOOT" ] ; then > > + # odhcpd needs to wait for OpenWrt logical interfaces > > + return 0 > > + fi > > + > > procd_open_instance > > procd_set_param command /usr/sbin/odhcpd > > procd_set_param respawn > > @@ -17,6 +27,12 @@ reload_service() { > > > > service_triggers() > > { > > - procd_add_reload_trigger "dhcp" > > + if [ -n "$ODHCPD_BOOT" ] ; then > > + # one time trigger at boot to wait for logical interface > > setup > > + procd_add_raw_trigger "interface.*.up" 3000 > > /etc/init.d/odhcpd restart > > + else > > + # reload odhcpd also for network reconfiguration > > + procd_add_reload_trigger "dhcp" "network" > > + fi > > } > > > > -- > > 2.20.1 > > > > _______________________________________________ > > openwrt-devel mailing list > > [email protected] > > https://lists.openwrt.org/mailman/listinfo/openwrt-devel _______________________________________________ openwrt-devel mailing list [email protected] https://lists.openwrt.org/mailman/listinfo/openwrt-devel
