Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

proxy gateway traffic into private networks (over wireguard) #1674

Closed
LeeSmet opened this issue May 2, 2022 · 5 comments · Fixed by #1924
Closed

proxy gateway traffic into private networks (over wireguard) #1674

LeeSmet opened this issue May 2, 2022 · 5 comments · Fixed by #1924
Assignees
Labels
type_feature New feature or request
Milestone

Comments

@LeeSmet
Copy link
Contributor

LeeSmet commented May 2, 2022

Currently the playground seems to deploy in a way such that gateways and workloads are connected over yggdrasil. I assume because there is no (easy?) way to proxy from the gateway into the private network. Since yggdrasil has pretty bad performance, we should see if it is possible to use private networks instead.

@xmonader
Copy link
Collaborator

xmonader commented May 2, 2022

In V2, gateways used to support the wireguard private network, however, in V3 it was moved to Yggdrasil as per kds's request. Also, are we sure that ygg is having a bad performance, or are we using poor peers list?

@muhamadazmy
Copy link
Member

Currently using wireguard with the gateway is not supported. I didn't give it enough thought, but it shouldn't be impossible to implement. I am think if we made the user network deploy on the gateway node, then the private workload should be reachable, then we need to figure out how to route the traffic from the public namespace where the gateway lives, to the user private network. May be a helper proxy process that uses unix socket and lives in the user network can do that (nc command already supports this - not sure about the zos version since it's a busybox impl-)

@muhamadazmy muhamadazmy added the type_feature New feature or request label May 4, 2022
@Parkers145
Copy link

I made a post about this on the forums, its pretty long so i wont move it over but its under yggdrasil nodes. I think if we were to deploy HAproxy within zos we could properly route public traffic to multiple nodes that have a private ip by creating a forwarder that will either choose what node to pass traffic to by port or use sni to address by service name.

@rkhamis rkhamis added this to the 3.1.0 milestone Jun 20, 2022
@rkhamis rkhamis added this to 3.7.x Jun 20, 2022
@xmonader xmonader modified the milestones: 3.1.0, now Jul 4, 2022
@rkhamis rkhamis added this to 3.9.0 Aug 30, 2022
@rkhamis rkhamis removed this from 3.7.x Aug 30, 2022
@rkhamis rkhamis moved this to 🔖 Ready in 3.9.0 Aug 30, 2022
@rkhamis rkhamis modified the milestones: 3.1.0, 3.2.0 Aug 30, 2022
@muhamadazmy muhamadazmy modified the milestones: 3.4.x, 3.5.x Nov 15, 2022
@muhamadazmy muhamadazmy removed this from 3.9.0 Nov 15, 2022
@scottyeager
Copy link

Since we've established that performance on Yggdrasil is out of our control and we aren't currently pursuing replacing it with a more performant solution, I think we should revisit this feature as something to potentially prioritize.

@muhamadazmy
Copy link
Member

Deprecated by threefoldtech/home#1406

@github-project-automation github-project-automation bot moved this to Done in 3.10.x Mar 9, 2023
@muhamadazmy muhamadazmy reopened this Mar 10, 2023
@muhamadazmy muhamadazmy changed the title Investigate if we can proxy gateway into private networks proxy gateway traffic into private networks (over wireguard) Mar 10, 2023
@muhamadazmy muhamadazmy moved this from Done to In Progress in 3.10.x Mar 10, 2023
@github-project-automation github-project-automation bot moved this from In Progress to Done in 3.10.x Mar 14, 2023
@muhamadazmy muhamadazmy self-assigned this Mar 28, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
type_feature New feature or request
Projects
No open projects
Status: Done
Development

Successfully merging a pull request may close this issue.

6 participants