更新
- v1.0.2已支持UDP网络穿透;
- 新增NodePass管理脚本,列举了一些常用的用例,详情
- v1.0.3已支持TLS自定义,安全级别分三级,详情
- v1.0.4支持TLS定制证书热加载,周期默认1小时,可通过环境变量调整
- v1.1.0新增master模式提供rest API批量管理server或client实例,详情
- v1.1.1解决了server需要占用一个随机端口来传输数据的问题,方便防火墙端口设置
- v1.1.2新增了tcp/udp的拨号超时,新增了两个环境变量,修改并统一了环境变量的命名
- v1.1.3完善了连接池刷新机制,默认一小时换水一次,保持池的纯净度;同时API完成了本地持久化
- v1.1.4完善了池更新机制,解决了一些API的问题
- v1.1.5新增了API的SSE,API key,以及一些功能完善
- v1.2.0更新了一种服务端验证客户端ip的机制,防止潜在的连接池枯竭问题
- v1.2.1优化了API前缀逻辑,重构部分代码
- v1.2.2新增了目标服务方向控制逻辑,合并了大量代码
- v1.2.3增强了连接池的强度,修复了上一版重构后的小问题
- 后续更新日志请以仓库和频道为准。
项目

NodePass是一款通用、轻量的TCP/UDP隧道解决方案。它基于创新的三层架构(服务器-客户端-主控)构建,优雅地实现了控制与数据通道的分离,同时提供直观的零配置命令语法。系统通过预建立连接的主动连接池消除了延迟,结合分级TLS安全选项与优化的数据传输机制,性能表现卓越。其最具特色的功能之一是TCP与UDP之间的无缝协议转换,让应用能够跨越协议受限的网络进行通信。其能够智能适应网络波动,即使在复杂环境中也能保持稳定性能,同时高效利用系统资源。无论是穿越防火墙和NAT,还是连接复杂的代理配置,它都为DevOps专业人员和系统管理员提供了一个兼具先进功能与卓越易用性的完美平衡方案。
💎 核心功能
-
🔀 多种操作模式
- 服务器模式接受传入隧道连接并提供可配置的安全选项
- 客户端模式用于建立与隧道服务器的出站连接
- 主控模式提供RESTful API进行动态实例管理
-
🌍 协议支持
- TCP隧道传输与持久连接管理
- UDP数据报转发与可配置的缓冲区大小
- 两种协议的智能路由机制
-
🛡️ 安全选项
- TLS模式0:在可信网络中获得最大速度的无加密模式
- TLS模式1:使用自签名证书提供快速安全设置
- TLS模式2:使用自定义证书验证实现企业级安全
-
⚡ 性能特性
- 智能连接池,具备实时容量自适应功能
- 基于网络状况的动态间隔调整
- 高负载下保持最小资源占用
- 网络中断后自动恢复连接
-
🧰 简单配置
- 零配置文件设计
- 简洁的命令行参数
- 环境变量支持性能精细调优
- 为大多数使用场景提供智能默认值
更多详情请移步至项目地址,欢迎STAR关注:https://github.com/yosebyte/nodepass

省流总结
NodePass是一个内网穿透工具,单文件兼具服务端和客户端和API功能,两端会首先建立一条tcp连接用户通信,随后会打时间差,提前建立若干tcp或者tls连接,形成一次性连接池,并且会根据负载情况动态调整连接池容量和补货时间间隔,这样的穿透设计节省了大量的tcp握手时间,还不至于浪费资源,另外还可以自定义TLS安全等级,以及很多实用的技术保障了目标服务穿透的稳定性和可靠性。
具体用法
最基础的用法
之后就可以通过访问A(server:8080)来实现访问B
更新计划
支持UDP目标服务一键安装脚本tls策略自定义新增master模式