Open MarcellVokk opened 4 months ago
This is a video demonstrating the issue. It apears to be consistent, it doesn't just hapen to me. My internet is very good, I doubt that would be the problem. As a naive user, I would expect the ip address to be assigned and be accessible immediately after joining a network has completed.
https://github.com/zerotier/ZeroTierOne/assets/40302952/3e534e8a-f9e9-4764-bf9c-9120430edc18
Possibly related issue I discovered recently:
Changing system time on windows (in my case, I rolled the time back 1 hours) after the zerotier service is started makes joining networks impossible, the network status remains stuck on 'REQUESTING_CONFIGURATION'.
Hello, it will always take some time to set up the interface. The client has to talk to something on the internet to get the information to do you. You will need some kind of wait/check in your scripts no matter what.
Yeah of course, we already do implement a system that waits for the ip to be received and be configured, but I just wish it could be faster that's all... Would self-hosting my own controller help in this situation?
It depends on your connection to the controller. If the device is just coming online for the first time ever, it might take some time. https://docs.zerotier.com/routertips#is-my-device-relaying
By device, are you refering to the network device created when joining a room, or the users machine? The zerotier service is started as soon as the machine starts as far as I'm aware (but we make sure the service is started before we try to join any networks of course).
And about relaying, that's actualy a whole other thing. After running a test on our playerbase (we have an application that basicaly uses zerotier to connect people so they can play LAN games online, sort of like hamachi or radmin) of roughly 1,000 players from all around the world, we have discovered that forcing the clients to use tcp relaying greatly reduced network latency (we host our own relays). With default configuration, the games were practicaly unplayable due to lag, with the relay, it's a lot better, altough compared to something like radmin, which is a similar VPN service, it's still significantly slower. Each game typicaly has 2-4 players, and every game gets its own zerotier network. (If there are any tips on how to reduce latency even further I'd be happy to hear them!)
After joining a network, it takes somewhere between 15 to 20 seconds for zerotier to assign a local ipv4 address to the connecting node. This is especialy frustrating because our application requires us to wait for this address before moving on to the next step. I'd apreciate if someone would look into this. Awesome project btw, keep up the good work!