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

Added files related to transparent tcp relay #67

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

choksi81
Copy link
Contributor

I have added files related to transparent tcp relay feature. I will briefly explain this feature:

  • The server contacts the relay to open a port on its behalf and listen for client-connection.
  • The relay opens up a random port from the available ports and advertises this port with the key which the server sends to it.
  • The client can now open a connection with the server via the relay using the port which has been opened on the relay.
  • The relay transfers all the messages between client and the server.

It is known as transparent-tcp-relay because the client side doesn't know that it is actually communicating with the relay instead of server.

There is a unit-test also which successfully checks if closing of socket during server setup is handled correctly or not.

There are few other unit-tests which I have created, but are not there in this PR. (You can find them here: https://github.com/choksi81/affix/tree/affix_transparenttcprelay_final/services/transparent_tcp_relay/tests)
They are almost(but not entirely) complete. If someone wants to complete those, they can contact me, I will explain the work I have done till now on them.

@choksi81
Copy link
Contributor Author

Also, once this PR gets merged, the config_build will have to be updated to copy over the transparent-tcp-relay files. While updating, refer this file (https://github.com/choksi81/affix/blob/affix_transparenttcprelay_final/scripts/config_build.txt)

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.

1 participant