kea-dhcp: automatic route support for PD leases, add daemon and fix LLA parsing (#9330)
* kea-dhcp: automatic route support for PD leases, add daemon and fix LLA parsing
* Redirect stdout to log file
backend:interfaces.inc - add some precautionary escaping in interface_track6_6rd_configure() and interface_track6_6to4_configure(), for https://github.com/opnsense/core/issues/9325
backend:interfaces.inc - refactor interfaces_pfsync_configure() to use mwexecf() for https://github.com/opnsense/core/issues/9325
shell_safe() would also be ok, but will fully silence errors, which in this can can be practical to preserve
System: Configuration: Backups - simplify rrd code and remove exec() usage
These legacy components seem to be missing some cleansing, although in the long run we might consider removing the rrd embed support for the config export (as we're not offering that for any other data either), fix and simplify first and discuss removal later.
reported by: Alex Williams from Pellera Technologies
kea-dhcp: automatic route support for PD leases - add lease file watcher, for https://github.com/opnsense/core/issues/9135
Technically this script should already be functional, it processes all lease entries according to the logic in https://github.com/isc-projects/kea/blob/ef1f878f5272d/src/lib/dhcpsrv/memfile_lease_mgr.h#L1039-L1051.
When all files are processed and the ones that haven't expired yet do have a link local route, we keep reading the active file endlessly and yield IA_PD records with a poll interval (5 seconds)
The NDP class is a simple wrapper around "ndp -an", which assumes harwdare addresses learned keep their link local address during their liftime. A bit simplistic, but usually does the trick and can be improved when needed.