From ce4b0fb6fb69ffc61bc4fb21b508a6a23b811d55 Mon Sep 17 00:00:00 2001 From: atanarjuat Date: Mon, 23 May 2022 09:18:50 +0000 Subject: add kcp --- listener.go | 1 + server/Makefile | 5 ++++- server/main.go | 9 +++++++-- 3 files changed, 12 insertions(+), 3 deletions(-) diff --git a/listener.go b/listener.go index 70b4503..52c08fd 100644 --- a/listener.go +++ b/listener.go @@ -117,6 +117,7 @@ func (lc *ListenConfig) Listen(ctx context.Context, network, address string) (*L var err error switch network { case netKCP: + log.Println("kcp listen on", address) ln, err = kcp.Listen(address) if err != nil { return nil, err diff --git a/server/Makefile b/server/Makefile index 853469b..02b24a9 100644 --- a/server/Makefile +++ b/server/Makefile @@ -5,7 +5,10 @@ build: go build run: - sudo ./obfsproxy -addr ${LHOST} -vpn ${RHOST} -state test_data -c test_data/obfs4.json + sudo ./server -addr ${LHOST} -vpn ${RHOST} -state test_data -c test_data/obfs4.json + +run-kcp: + sudo KCP=1 ./server -addr ${LHOST} -vpn ${RHOST} -state test_data -c test_data/obfs4.json stop: pkill -9 obfsproxy diff --git a/server/main.go b/server/main.go index 3ade4dc..f8b7d85 100644 --- a/server/main.go +++ b/server/main.go @@ -97,8 +97,13 @@ func main() { logger.Printf("DEBUG: %v", listenConfig) - // TODO: pass kcp mode - ln, err := listenConfig.Listen(ctx, "tcp", addr) + var network string + if os.Getenv("KCP") == "1" { + network = "kcp" + } else { + network = "tcp" + } + ln, err := listenConfig.Listen(ctx, network, addr) if err != nil { logger.Fatalf("error binding to %s: %v", addr, err) -- cgit v1.2.3