sargon / ddhcpd

A distributed DHCP Daemon
GNU General Public License v3.0
31 stars 11 forks source link

ddhcpd does not notice when mesh interface is removed/recreated #68

Open christf opened 4 years ago

christf commented 4 years ago

In l3 networks the mesh interface for ddhcpd is the mmfd interface. Over the run-time of the node, this interface might be destroyed and re-created. At that time ddhcpd does not update the scope-id and attempts to re-use the old scope-id from that interface that already has been destroyed.

This results in block claims not happening any more and in Mon Jan 6 09:22:52 2020 daemon.err ddhcpd[3128]: ERROR: send_packet_mcast(...): Failed (13): Permission denied

at the time when this log message was captured, there was no interface with id 13. The proper interface would have been 23: mmfd0: <POINTOPOINT,MULTICAST,NOARP,UP,LOWER_UP> mtu 1280 qdisc fq_codel state UNKNOWN group default qlen 500

sargon commented 4 years ago

That is a known problem. Actually I was to lazy until now to rewrite the whole socket handling, since the situation does not occur in my "test" community. The whole socket handling is kind of a quick hack ... I am digging myself into that topic, now.