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

Implement a holepunch transport #313

Merged
merged 45 commits into from
May 30, 2020

Conversation

nkryuchkov
Copy link
Contributor

@nkryuchkov nkryuchkov commented Apr 8, 2020

Did you run make format && make check?

Fixes #264

Changes:

  • Implement stcp with address resolving (stcpr) and encryption
  • Implement stcp with TCP hole punching (stcph) and encryption
  • Add encryption for stcp

How to test this PR:

  • Run generic env
  • Run make integration-startup-stcpr
  • Test if skychat works
  • Shutdown env
  • Do the same for stcph by running make integration-startup-stcph
  • Change address-resolver addresses to http://address-resolver.skywire.cc in Visor{A,B,C} configs (this does not work with all NATs)
  • Do the same again

@nkryuchkov nkryuchkov force-pushed the feature/holepunch-transport branch from becabe8 to e32bb76 Compare May 5, 2020 10:45
@nkryuchkov nkryuchkov force-pushed the feature/holepunch-transport branch from a78db95 to e4e5e05 Compare May 7, 2020 11:33
nkryuchkov and others added 14 commits May 7, 2020 18:42
# Conflicts:
#	README.md
#	cmd/skywire-cli/commands/visor/gen-config.go
#	cmd/skywire-visor/commands/root.go
#	go.mod
#	go.sum
#	pkg/app/client.go
#	pkg/skyenv/values.go
#	pkg/snet/network.go
#	pkg/visor/config.go
#	pkg/visor/rpc.go
#	pkg/visor/visor.go
#	vendor/github.com/SkycoinProject/dmsg/client_session.go
#	vendor/modules.txt
…-args

Make AR IP be added to direct routes by VPN client
@nkryuchkov nkryuchkov force-pushed the feature/holepunch-transport branch from f1cbb35 to 92e71b2 Compare May 20, 2020 18:13
@nkryuchkov nkryuchkov marked this pull request as ready for review May 26, 2020 18:14
# Conflicts:
#	pkg/snet/network.go
#	pkg/visor/init.go
#	pkg/visor/visorconfig/README.md
#	vendor/modules.txt
Copy link
Contributor

@Darkren Darkren left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Overall, huge job. Comments are mostly stylish

README.md Outdated Show resolved Hide resolved
internal/httpauth/client.go Show resolved Hide resolved
internal/vpn/env.go Outdated Show resolved Hide resolved
pkg/snet/arclient/client.go Outdated Show resolved Hide resolved
pkg/snet/arclient/client.go Outdated Show resolved Hide resolved
pkg/snet/stcpr/client.go Outdated Show resolved Hide resolved
pkg/snet/stcpr/conn.go Outdated Show resolved Hide resolved
pkg/snet/stcpr/handshake.go Outdated Show resolved Hide resolved
pkg/snet/stcpr/handshake.go Outdated Show resolved Hide resolved
pkg/snet/stcpr/handshake.go Outdated Show resolved Hide resolved
@nkryuchkov nkryuchkov requested a review from Darkren May 30, 2020 13:48
@nkryuchkov
Copy link
Contributor Author

@Darkren Thanks for reviewing. Your requests are resolved.

@nkryuchkov nkryuchkov merged commit d069311 into skycoin:develop May 30, 2020
@nkryuchkov nkryuchkov deleted the feature/holepunch-transport branch May 30, 2020 17:17
@nkryuchkov nkryuchkov mentioned this pull request Jun 1, 2020
jdknives pushed a commit that referenced this pull request Oct 19, 2020
* Implement `stcp` with address resolving (`stcpr`) and encryption
* Implement `stcp` with TCP hole punching (`stcph`) and encryption
* Add encryption for all `stcp`



Former-commit-id: d069311
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants