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

Node provider doesn't work for MacOS and Windows when running on Docker #1599

Closed
etherunit opened this issue Jan 30, 2020 · 3 comments
Closed
Assignees
Labels

Comments

@etherunit
Copy link
Collaborator

etherunit commented Jan 30, 2020

Attempted to connect to my myst node with id: 0x12ed33ad8ef814b3d391ac0ab1e5b393bd74cbff(0.20.0 launched on a Docker) via mobile app. Received the following error
`2020-01-30T12:28:27.471 ERR nat/traversal/pinger.go:285 > Failed to read remote peer: 88.119.191.24:45448 - attempting to continue error="read udp 172.17.0.2:46679->88.119.191.24:45448: read: connection refused"

2020-01-30T12:28:27.641 DBG nat/traversal/pinger.go:198 > Pinging...

2020-01-30T12:28:27.671 ERR nat/traversal/pinger.go:285 > Failed to read remote peer: 88.119.191.24:45448 - attempting to continue error="read udp 172.17.0.2:46679->88.119.191.24:45448: read: connection refused"

2020-01-30T12:28:27.843 DBG nat/traversal/pinger.go:198 > Pinging...

2020-01-30T12:28:27.876 ERR nat/traversal/pinger.go:285 > Failed to read remote peer: 88.119.191.24:45448 - attempting to continue error="read udp 172.17.0.2:46679->88.119.191.24:45448: read: connection refused"

2020-01-30T12:28:27.876 ERR nat/traversal/pinger.go:338 > Ping receiver error error="NAT punch attempt timed out"`
App has disconneted. Tried from different devices.

@etherunit etherunit added the bug label Jan 30, 2020
@etherunit etherunit added this to Icebox in Engineering via automation Jan 30, 2020
@etherunit etherunit moved this from Icebox to Todo in Engineering Jan 30, 2020
@anjmao
Copy link
Contributor

anjmao commented Jan 30, 2020

To be more clear. This issue appears when running docker on mac or windows. Since it doesn't allow to use OS host networking NAT hole punching fails. Remember that docker runs on separate VM on Mac and Windows.

For Macos users simple solution would be to run go compiled binary (no need to use docker at all). But this will work only with WireGuard since OpenVPN need to be downloaded separately.

 sudo myst --testnet service --agreed-terms-and-conditions  wireguard

For Windows users it could be the same to run compiled binary but we don't support windows yet.

@anjmao anjmao changed the title NAT punch attempt timed out with Docker node 0.20.0 Node provider doesn't work for MacOS and Windows when running on Docker Jan 30, 2020
@anjmao
Copy link
Contributor

anjmao commented Jan 30, 2020

As we discussed the best approach would be to allow user to specify range of ports which we can map and use for NAT pinging.

@chompomonim chompomonim removed this from Todo in Engineering Feb 20, 2020
@soffokl soffokl self-assigned this Feb 28, 2020
@soffokl
Copy link
Member

soffokl commented Feb 28, 2020

This should be resolved with a 0.22 version and new TTL based NAT hole punching.
It is possible to run docker without host network and forwarded ports now.

@soffokl soffokl closed this as completed Feb 28, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

3 participants