Getting started using tunnellers with the Go SKD

Quick note… as I need to develop a tunneller that connects to a ziti service… which then passes on the data to a https service… which can then be rendered in a client browser.

I have done some digging around… which has taken me down a few different paths…

tunnelling services
port forwarding services

however, I am sure that there is a lot of functionality inbuilt in OpenZiti… but need a bit of help to narrow down the learning path.

Are there any specific examples that I should focus on.

What I understand is that I need to dial a service… so any example that does this will help.

however… I do realise that the processing will need to be done on the server… as opposed to a copy of the end point’s data ( ie… needs to deal with angular js single page apps which require server side processing)

The service will need to be bidirectional… so it will need to use go routines.

Let me know if you have any tips on how to move forward… as I am looking for the pathway to get an outcome with the least amount of backend coding.

Maybe over the next few days… more things will click into place… I think this could be hardest jigsaw puzzle I have attempted yet.

Are you doing “interesting” things with the traffic or just plainly passing it along? If the latter - have you considered using ziti-edge-tunnel? It sounds to me like it might do exactly what you need it to do.

The zitified http examples show you before and afters of dialing services, basically all the examples in the gosdk will end up doing a dial. the zssh code dials a service by identity name. You’ll find all the samples will do various dials.

1 Like

I am just passing the traffic straight through… so it seems as if the zssh demo will provide the framework I am looking for.

Thanks for the tip… as I was going off in all directions… now I am super focused again :slight_smile:

If you’re just passing it straight through, running ziti-edge-tunnel is what I’d strongly recommend. It’s really well tested by all of us using it routinely and would fit your bill it sounds perfectly. You could deploy it adjacent to the server, and then have it offload traffic to “localhost:port” instead of traversing the remote network (a better/stronger setup).

If you wanted to inspect the traffic before sending it - well then you’d have to develop your own proxy but ziti-edge-tunnel sounds like what you need (at this time).

Good luck though! It’s exciting for me to see your journey! thanks for being part of the community!

1 Like