一个开源内网穿透工具:PortBuddy 能否成为 ngrok 的平替
一个开源内网穿透工具:PortBuddy 能否成为 ngrok 的平替?

一个开源内网穿透工具:PortBuddy 能否成为 ngrok 的平替?
| 做开发的朋友应该都遇到过这个场景:本地跑着一个服务,想让外网访问测试一下,或者需要调试第三方的 Webhook 回调。
这时候内网穿透工具就成了刚需。
PortBuddy 是最近开源的一个内网穿透方案,定位和 ngrok 类似,但在功能覆盖上更全面一些。
核心能力: - 多协议支持:不只是 HTTP,TCP 和 UDP 也能穿透。

这意味着你可以把本地的 PostgreSQL 数据库、游戏服务器、甚至任意 UDP 服务暴露出去 - 默认启用 SSL:HTTP 隧道自动加密,不用额外配置证书 - 支持 WebSocket:实时应用场景不受限 - 私有隧道:可以给隧道加密码,防止被人扫到滥用 - 自定义域名和静态子域名:正式环境也能用 技术栈值得一提:CLI 用 Java 25 配合 GraalVM 编译成原生可执行文件,服务端是 Spring Boot 3.5,网关用 WebFlux,前端是 React。
整体架构做了微服务拆分,包括服务发现、SSL 证书自动管理等模块。
使用很简单,三步走:下载 CLI、用 API Token 认证、然后一行命令暴露端口。
比如本地 3000 端口的 Web 服务,执行后直接给你一个公网 HTTPS 地址。
定价方面,免费版支持同时开 1 个隧道,团队版 10 美元/月可以开 10 个,额外隧道 1 美元/月。

对于个人开发者来说,免费版基本够用。
说实话,内网穿透这个赛道已经很卷了,ngrok、frp、Cloudflare Tunnel 都是成熟方案。
PortBuddy 的差异化可能在于:一是 TCP/UDP 支持开箱即用,二是完全开源可以自建。
但能否站稳脚跟,还要看后续的稳定性和社区运营。
对于有自建需求、或者想深入了解隧道技术实现的开发者,这个项目的代码结构还是值得一读的。



