sinamics / ztnet

ZTNET - ZeroTier Web UI for Private Controllers with Multiuser and Organization Support.
https://ztnet.network
GNU General Public License v3.0
560 stars 58 forks source link

[Feature Request]: Add ability to create a ZT "moon" #309

Open FallenChromium opened 8 months ago

FallenChromium commented 8 months ago

πŸš€ Feature Summary

Adding an option to host a moon would allow to serve a custom root for the network without disconnecting it from the ZT default roots

πŸ“ Detailed Description

This feature is for adding an additional L1 backbone to a zerotier network without leaving to a separate zerotier planet. It is useful for cases when some (but not all) network endpoints are isolated from a ZT root (think censorship or corporate firewalls), but other devices might benefit from connectivity to ZT central roots, such as mobile phones (connecting to a custom planet is problematic on the mobile clients). Moons (see docs) can give a great boost in connectivity throughput in firewalled environments or can be a privacy-enhancing feature without breaking the comfort of discovering a network through the default roots

🎯 Use Case

Not that much to add, I'd just like to have a custom root if my home lab will have problems with internet connectivity (I have a separate channel to a controller that is neither internet or a local network, because no multicast is allowed through this path, local peer discovery won't work). Moon is an ideal solution to this problem.

πŸ’‘ Willing to Contribute

Yes, I could help with testing

sinamics commented 2 months ago

I created a test image you can try out. image: sinamics/ztnet:dev-88aeeab

This is still a work in progress, feel free to suggest improvements

NOTE! Do not test in production, this version has an updated db shcema that might change until next release, so try it out in a test environment.

https://github.com/sinamics/ztnet/pull/503