19 lines
495 B
Go
19 lines
495 B
Go
package main
|
|
|
|
func StartTunnel(sourceIP, desIP, desPort string) {
|
|
remoteAddr := make(chan net.Addr)
|
|
transSrcToDes := NewTransTCP()
|
|
transSrcToDes.CreateTCPListener("0.0.0.0", desPort)
|
|
transSrcToDes.CreateTCPClient(desIP, desPort)
|
|
go transSrcToDes.Start(remoteAddr)
|
|
sourcePort := <-remoteAddr
|
|
transDesToSrc := NewTransTCP()
|
|
transDesToSrc.CreateTCPListener("0.0.0.0", sourcePort)
|
|
transSrcToDes.CreateTCPClient(sourceIP, sourcePort)
|
|
|
|
go transDesToSrc.Start()
|
|
c := make(chan byte)
|
|
<-c
|
|
|
|
}
|