Earlier quoted context omitted.
it's the "usually" that's the problem this service (untouched by me) had: After=local-fs.target network-online.target remote-fs.target time-sync.target but it was still started without an IP address, and then failed to bind just like this sort of problem: https://github.com/systemd/systemd/issues/4880#issuecomment-... the entire thing is unreliable and doesn't act like you'd expect > Or you can do something with Exec…
Are you running this particular unit file as a user unit or a system unit? Some targets like network-online.target don't work from user unit files. You could also try targeting NetworkManager or networkd's "wait-online" services. Or if that doesn't work, something is telling systemd that you have an IP when you don't. NetworkManager has "ipv4.may-fail" and "ipv6.may-fail" that might be errenously true. > at that poin…
the problem is systemd
> The difference is that systemd is much better at ensuring correctness.
yeah, whatever mate