go-tcnat内网端口映射 端口穿透 GO语言 免费开源

简介说明

只需要一个低廉的云服务器作为桥梁,让个人高配置电脑秒变云服务器,特别适合需要高运算需求(如AI服务,高并发运算)

而预算较低的朋友 基于GO语言原生开发,极大的提高多线程及内存管理效率,无延迟无卡顿,体验感极高!

2024.11.6

在操作map时增加锁防止死锁保持

优化结构,将客户端和服务端合并

新增配置文件.env用于控制启动模式(client/server)

新增可通过命令行来切换模式,在无参数的情况下默认使用.env

部署流程

云服务器部署流程

打开config/server.json文件,按如下配置说明

复制代码
{
    "server": {
        "main_port": 控制端口,
        "transfer_port":临时交互端口
    }
}

启动服务

复制代码
#通过发布程序运行
./main server
#通过源码运行
go run main.go server

也可以通过修改.env的MODE来控制选择client/server,则无需传递参数,直接执行

家庭电脑部署流程

打开config/client.json文件,按如下配置说明

复制代码
{
    "server": {
        "host": "云服务器地址"
    },
    "list": [{
        "tag": "bt-login",
        "server_port": 云服务器端口,
        "local_addr": "127.0.0.1:本机服务端口"
    }
}

启动服务

复制代码
#通过发布程序运行
./main client
#通过源码运行
go run main.go client

也可以通过修改.env的MODE来控制选择client/server,则无需传递参数,直接执行

这样本地电脑将会连接到云服务器,云服务器将会监听 3333 端口,当有用户连接 3333 端口,那么云服务器将全部转发给家庭电脑,家庭电脑在连接到本机的 127.0.0.1:3389 端口,实现外网访问内网服务

编译发布

安装库之前切换到国内源,否则容易安装失败

windows

复制代码
export GOPROXY=https://goproxy.cn,direct

linux

复制代码
set GOPROXY=https://goproxy.cn,direct

安装成功后执行编译

复制代码
go get github.com/joho/godotenv
go build -o tcnat.exe main.go

图片预览

下载地址

https://github.com/cih1996/go-tcnat

https://pan.baidu.com/s/1EnEwNqwBmwolWcVsz3rTpA?pwd=m614 提取码: m614

https://pan.quark.cn/s/183ba5f0d0d7

相关推荐
呆萌很2 小时前
【GO】结构体构造函数练习题
golang
大鸡腿同学3 小时前
【成长类】《只有偏执狂才能生存》读书笔记:程序员的偏执型成长地图
后端
0xDevNull3 小时前
MySQL数据冷热分离详解
后端·mysql
AI袋鼠帝3 小时前
OpenClaw(龙虾)最强开源对手!Github 40K Star了,又一个爆火的Agent..
后端
lly2024064 小时前
C 标准库 - `<stdio.h>`
开发语言
沫璃染墨4 小时前
C++ string 从入门到精通:构造、迭代器、容量接口全解析
c语言·开发语言·c++
jwn9994 小时前
Laravel6.x核心特性全解析
开发语言·php·laravel
迷藏4944 小时前
**发散创新:基于Rust实现的开源合规权限管理框架设计与实践**在现代软件架构中,**权限控制(RBAC)** 已成为保障
java·开发语言·python·rust·开源
功德+n4 小时前
Linux下安装与配置Docker完整详细步骤
linux·运维·服务器·开发语言·docker·centos
明日清晨4 小时前
python扫码登录dy
开发语言·python