I encounter an issue with services not starting on boot with the error that they could not bind to an IP address. This is happening on Raspbian Stretch and Buster. Services affected are e.g. dnsmask, nginx, or apache2. I can easily start the manually after booting fully completed. The issue I think goes back to a bind to the WLAN IP address which probably takes too long to be assigned (via DHCP) so it's not yet there when systemd tries to start these services.
I assume there should be another dependency for those services in systemd to ensure there will be an IP address assigned to wlan0 interface first. This is where I'm not sure what to do (I also don't want to mess up with systemd files too much). As an example, on Buster I see for apache2 (using "systemctl cat apache2.service"): "After=network.target remote-fs.target nss-lookup.target". So there should be another "After"-target to ensure I have an IP on the WLAN, but I have currently no clue what this needs to be.
Anyone else having similar issues and knows about the right and proper systemd configuration to use?