DHCP Server Fails When Forking
Jay Foster
jay at systech.com
Mon Jan 6 18:42:05 UTC 2020
I am using the ISC DHCP server (dhcpd) version 4.3.6 from a rocko Yocto
build. When dhcpd is started without the '-f' or '-d' options (forks to
the background) it does not work. DHCP DISCOVER requests are sent, but
the dhcpd application does not respond. I can attach strace to the
dhcpd process and see that dhcpd just sleeps in an futex() call.
If I start dhcpd with either the '-f' or '-d' options so it does not
fork, then it works properly.
I have run dhcpd (both forking and non forking) using strace to see if I
could spot any differences. The only thing I notice is that when
forking, the parent process terminates (expected) along with 3 other
child processes/threads. It looks like these other threads are supposed
to handle the ISC tasks/messages, but are not cloned by the fork and are
not present after forking.
For reference, with an older version of ISC DHCP server (4.1.1-P1) on an
older product, this problem does not occur.
Any ideas where to look?
More information about the dhcp-users
mailing list