It's possible that at the time when netlabel-config is started at boot, some network interfaces aren't yet available. The reason for that could be that the corresponding kernel module isn't (fully) loaded yet, or the hardware is simply inserted later (like USB network adapters or putting a laptop in a docking station). With netlabelctl however it's not possible to manage interfaces which are not (yet) present.
I suppose this could be fixed by changing netlabelctl and kernel so that rules could be stored also for nonexistent interfaces. But a more dynamic way could be to utilize udevd so that when new network hardware is found, netlabelctl would be launched (for example via something like netlabelctl@.service) to configure the new interface. This would not require changes to kernel.
It's possible that at the time when
netlabel-configis started at boot, some network interfaces aren't yet available. The reason for that could be that the corresponding kernel module isn't (fully) loaded yet, or the hardware is simply inserted later (like USB network adapters or putting a laptop in a docking station). Withnetlabelctlhowever it's not possible to manage interfaces which are not (yet) present.I suppose this could be fixed by changing
netlabelctland kernel so that rules could be stored also for nonexistent interfaces. But a more dynamic way could be to utilizeudevdso that when new network hardware is found,netlabelctlwould be launched (for example via something likenetlabelctl@.service) to configure the new interface. This would not require changes to kernel.