一个 Rust 库,让应用通过公钥直接建立连接,内置 QUIC、打洞与中继回退。
tailscale/tailcat
类似 netcat 的命令行工具与 Go 库,借助 Tailscale 数据面在两台机器间加密传输 TCP/UDP,无需 Tailscale 账号。
- Star
- 8,405
- Fork
- 377
- 未关闭 Issue
- 29
- 最近提交
- 11天前
这是什么?
Tailcat 让两台机器之间通过 WireGuard 加密的点对点隧道通信,底层复用 Tailscale 开源的网络组件,但不依赖其控制面。服务端启动后会打印一个简短的 tailcat 地址,客户端凭该地址连接,连接元数据可通过任意带外方式交换。整个过程不需要 Tailscale 账号或 root 权限,也不会修改系统路由和 DNS。
连接首先经由 DERP 中继建立,随后 magicsock 尝试穿透 NAT,可能时升级为直连的 UDP 路径,否则继续走中继。除了标准输入输出管道,它还支持端口转发、内置 SSH 服务、基于 SFTP 与 scp 的文件收发、按连接执行命令,以及吞吐和延迟测试。项目同时提供 Go 库,并有一个实验性的 WebAssembly 浏览器演示。
包含预共享密钥的地址相当于凭证,若要通过 DNS 公开发布,服务端应先配置白名单或 SSH 公钥认证。
核心功能
- 01通过加密隧道在两台机器之间收发标准输入输出。
- 02将本地 TCP 端口转发到远端服务,也可将本地服务暴露到隧道中。
- 03内置 SSH 服务,支持 authorized_keys 或 GitHub 公钥认证。
- 04基于 scp 与 SFTP 收发文件,可选只读或读写模式。
- 05测试隧道上的 TCP 与 UDP 吞吐量和延迟。
- 06无需 root 权限或 Tailscale 账号,也不修改系统网络设置。
适用场景
- 无需开放入站端口,就能临时把本地服务或文件分享给同事。
- 在不暴露整个内网的前提下,访问远端局域网中的数据库或 adb 端口。
- 在没有公网入站端口的主机上,提供可通过域名访问的 SSH 服务。
- 在 Go 应用中通过库实现点对点加密连接。
标签
常见问题
- tailcat 是什么?
- 类似 netcat 的命令行工具与 Go 库,借助 Tailscale 数据面在两台机器间加密传输 TCP/UDP,无需 Tailscale 账号。 Tailcat 让两台机器之间通过 WireGuard 加密的点对点隧道通信,底层复用 Tailscale 开源的网络组件,但不依赖其控制面。服务端启动后会打印一个简短的 tailcat 地址,客户端凭该地址连接,连接元数据可通过任意带外方式交换。整个过程不需要 Tailscale 账号或 root 权限,也不会修改系统路由和 DNS。
- tailcat 可以免费使用吗?用的什么许可证?
- tailcat 以 BSD-3-Clause 许可证开源。用于商业产品前,请先确认许可证条款。
- tailcat 还在维护吗?
- 活跃维护中。tailcat 最近一次提交是在 2026年10月7日。
- tailcat 适合用来做什么?
- 无需开放入站端口,就能临时把本地服务或文件分享给同事。 在不暴露整个内网的前提下,访问远端局域网中的数据库或 adb 端口。 在没有公网入站端口的主机上,提供可通过域名访问的 SSH 服务。 在 Go 应用中通过库实现点对点加密连接。
- 在哪里获取 tailcat?
- 源代码和安装说明在 GitHub 上:https://github.com/tailscale/tailcat
概要由 AI 根据项目 README 生成;GitHub 数据每日更新。
相关项目
一个用 Rust 编写的极简命令行工具,可将本地 TCP 端口通过远程服务器暴露到公网。
一款免费开源的应用,无需互联网或第三方服务器,即可在局域网内与附近设备互传文件和消息。
基于 OpenTelemetry 的开源可观测性平台,将日志、指标、链路追踪、告警和仪表盘整合在一起。
Apache Answer 是一个开源问答平台,可用于搭建社区论坛、帮助中心和知识管理站点。
Anytype 官方桌面客户端,基于 Electron 构建,支持 macOS、Windows 和 Linux,本地优先且端到端加密的个人知识库。