rathole - 一个轻量级开源内网穿透工具,高吞吐、低占用,类 frp 工具

原始链接在: https://www.appinn.com/rathole/

rathole 是一款开源的轻量级内网穿透工具,基准测试显示延迟与 frp 相近,在高并发情况下表现更好,能提供更大的带宽,内存占用更少。并且两者使用方式也及其类似,单可执行文件配合服务器端与客户端配置文件,即可实现内网穿透。@Appinn

注意:支持 Windows、macOS、Linux,服务器端需要公网IP。

首先声明:frp 足够好用了,无必要不折腾。

但是话又说回来,不折腾白不折腾!

rathole vs frp 基准测试

rathole 自己提供了一个与 frp 对照的基准测试,结论是:对于多数用户,rathole 能带来的主要好处是更少的资源占用,而带宽和延迟不一定有显著的改善。

rathole 配置教程

rathole 的使用与 frp 极其相似,不过 rathole 只有一个主程序,不区分服务端与客户端,所以可以很方便的拿着同一个文件夹到处跑。

下载:GitHub搬运(压缩包不到2MB)

服务器端

只需要一个 server.toml 文件:

[server]
bind_addr = "0.0.0.0:2333" # `2333` 配置了服务端监听客户端连接的端口

[server.services.appinn]
token = “一个很长的随机密码” # 用于验证的 token
bind_addr = “0.0.0.0:2335” # 将 2335 暴露出来,将来访问的也是这个端口

然后运行: rathole server.toml 就行了。

客户端

只需要一个 client.toml 文件:

[client]
remote_addr = "服务器IP:2333" # 服务器的地址。端口必须与 `server.bind_addr` 中的端口相同。

[client.services.appinn]
token = “一个很长的随机密码” # 必须与服务器相同以通过验证
local_addr = “127.0.0.1:5001” # 需要被转发的服务的地址

然后运行: rathole client.toml 就行了。

使用

上面这个例子,是将内网群晖的管理界面穿透出去,在两端都运行成功之后,就可以在任何浏览器中使用 服务器IP:2335 来访问群晖了。

感觉用起来还是很容易的,更多的参数可以官方参考文档

现状

不过,rathole 的现状不容乐观,虽然最近一次提交代码在2个月前,但已经很久没有发布新版本了。反观隔壁 frp,更新勤快,社区繁荣。

所以还是再提一句:无必要不折腾啊。


原文:https://www.appinn.com/rathole/

学校里面禁止使用frp,我用rathole没被查出来 :doge:

2 个赞

学校连frp都管?

是的,不能随意搭建能连通学校内网的服务,tailscale、zerotier也都不能用

1 个赞

小众也有小众的好处啊

不过校内都提供VPN的啊?还用这玩意干啥……

学校提供的VPN只能有限访问校内的资源,像是图书馆之类的,如果想访问校内任意IP,就不能用学校VPN了

确实,如果校内还有别的设备就得自己打洞,看来这个软件可能很快也要被Ban了 :joy:

跑了两三年了,没被查到,可能跟它用的TLS加密特征比较少有关?