I have bind sshd to the zerotier-one ip address.
That works.
After reboot, sshd dies because it cannot bind to zerotier-one interface.
Tried adding zerotie-one.service to After, Wants and Requires in systemd
But still does not work.
How to make sshd to startup only after zerotier-one has started up and got an ip address?
hmm… How about from the other side? Add in sshd.service: RequiredBy=
, or Before=
/After=
. Or, create a .target
unit to manipulate service launch at your will.
Off the top of my head, maybe a launch a .timer
unit as part of ZeroTier’s (so you know ZT has started) that waits just a little bit after (OnActiveSec=##
) starting to restart sshd…or maybe reset the failed unit, depending on the error given when it died.
Good luck. =)