This is a very interesting project, and I like the pluggable approach to networking. I was wondering if you've looked into yggdrasil-jumper and considered doing something similar in your fork.
What yggdrasil-jumper does is run a peer endpoint on localhost, and add it to the peer list through the daemon's admin API. It then checks for active yggdrasil IPs you're talking to and tries to negotiate NAT traversal with them. This requires both nodes to be using yggdrasil-jumper, but an alternative implementation could add this system natively (perhaps even in a way that is compatible with yggdrasil-jumper).
I've been using yggdrasil-jumper to reduce latency across different nodes in various environments where the server is behind a NAT and can't just directly peer with other servers over Yggdrasil. The benefit of the jumper system is that the existing Yggdrasil network and external STUN servers allow for the whole process to work without any coordinating servers.
I would be interested in hearing about whether you would be interested in having this as a feature.
This is a very interesting project, and I like the pluggable approach to networking. I was wondering if you've looked into yggdrasil-jumper and considered doing something similar in your fork.
What yggdrasil-jumper does is run a peer endpoint on localhost, and add it to the peer list through the daemon's admin API. It then checks for active yggdrasil IPs you're talking to and tries to negotiate NAT traversal with them. This requires both nodes to be using yggdrasil-jumper, but an alternative implementation could add this system natively (perhaps even in a way that is compatible with yggdrasil-jumper).
I've been using yggdrasil-jumper to reduce latency across different nodes in various environments where the server is behind a NAT and can't just directly peer with other servers over Yggdrasil. The benefit of the jumper system is that the existing Yggdrasil network and external STUN servers allow for the whole process to work without any coordinating servers.
I would be interested in hearing about whether you would be interested in having this as a feature.