FRP、Tailscale、CF Tunnel 三个内网穿透方案我都用过,按场景分着用最稳

家里 NAS / 软路由 / 虚拟机都要远程,这三个我都用过

我自己是 NAS 玩家,FRP、Cloudflare Tunnel、Tailscale 三个内网穿透方案都用过。家里要连虚拟机、要管软路由、要远程看服务状态,场景比一般人多得多------也正因为这样,我知道这三个方案不是替代关系,是看你想干什么。

不知道有没有 mjj 和我一样,平时家里跑了一堆东西:群晖 NAS、ESXi 虚拟机、软路由、自建 dashboard、几个物联网设备。出门在外想连一下,不是开个 SSH 看日志,就是手机上点开一个网页看看某个服务还活着没。

举个上周的真事。出差路上发现有几个文件丢在家里的 Mac 上了,身边只有一台 Mac Air。我直接通过 Tailscale 把家里那台 Mac 的网络共享出来,叫家里人帮我开一下机,文件就这么拿到手了------全程加密传输,文件安全也不用操心(这次刚好是 P2P 直连,要是 NAT 穿不透落到 Tailscale 自己的 DERP 中继,速度会被限)。这种事换 FRP 我得提前在 VPS 上配端口、改 firewall、装 frpc,临时起意根本来不及;换 CF Tunnel 不是不行,但 Mac 上拿文件这种内网体感的事不是它的强项。

最后定下来的不是某一个工具,是按场景分着用。所以下面我直接把判断说在前面:

多设备直接用 Tailscale,所有设备组成一个内网,方便管理、安全、零配置。捣鼓多种协议、对网速和流媒体有要求,我更建议 FRP 用服务器做中转,保证网络质量。简单的网页连接、回家看状态、物联网设备、SSH 连自建服务器,这种简单需求 Cloudflare Tunnel 最合适。高阶玩法是软路由+V6 自由或付费 IPv4,对小白不友好,最危险是没处理好安全把所有设备暴露在公网之下。

后面 4 节就是这套判断的展开,最后一节我给一张决策表,你自己对号入座。


多设备组内网,Tailscale 是默认值

如果你只想知道一个答案,那答案就是 Tailscale。

它是这三个里部署成本最低的------没有公网 IP 也行,没有买 VPS 也行,路由器一动不动也行。装上客户端,登录账号,所有设备就自动组成一个虚拟内网。手机连家里 NAS 像在局域网里,软路由的管理后台可以直接走 Tailscale IP 进,群晖 DSM 走的是内网通信不暴露公网。

我自己 Tailnet 里挂着家里的 Mac、出差带的 Mac Air、群晖 NAS,再加一两台 VPS。免费层给你 100 个设备 + 3 个用户,个人玩家根本用不完。所有节点之间走 P2P 直连(走不通的时候 fallback 到 Tailscale 自己的 DERP 中继),不用你操心 NAT 穿透怎么打洞。

延伸阅读:别再折腾 FRP 了!无公网 IP、不碰路由器,Tailscale 三步搞定异地组网

但 Tailscale 不是没有局限。它依赖 Tailscale 官方的控制平面(用来交换密钥、管理 ACL、协调中继)。如果 Tailscale 的服务挂了,已经在 Tailnet 里的设备之间,已经建立的 P2P 连接其实还能继续撑一会儿;但新设备登录不上、ACL 改不动、要走 DERP 中继的连接也协调不出来。概率很低但确实发生过。另外流量大了走 DERP 中继的时候带宽会被限速,这种场景就不是 Tailscale 的强项。

所以我的判断很简单:多设备 + 跨终端管理 + 想要"组成一个内网"的体感,Tailscale 不用想,直接装。


要带宽要流媒体,我还是会回 FRP

Tailscale 解决"组内网"的问题。但你要做的不是组内网。

你要做的是:把家里的某个服务以高质量、低延迟的方式暴露给特定用户------比如把家里的流媒体服务给家人远程看,或者跑一个对延迟敏感的应用,或者协议本身不是 HTTP 走不了 CF Tunnel。这种场景我会回到 FRP。

FRP 的核心思路很老派:你买一台公网 VPS,VPS 上跑 frps 作为中转节点,家里跑 frpc 主动连过去。所有外部访问打到 VPS 的某个端口,VPS 把流量转发回你家里。整条链路你自己掌控,带宽走的是你 VPS 的带宽(你买的是什么线路就跑什么线路),协议爱怎么转怎么转------TCP、UDP、HTTP、SSH、RDP、游戏服务器,全都可以。

成本上,便宜的国内轻量 VPS 一年 99 块(我之前用过腾讯云的轻量,配置够用),自己掌控线路质量。这是 Tailscale 和 CF Tunnel 都给不了的------前者依赖 DERP 中继,后者走 Cloudflare 的 CDN 节点,国内访问国内的时候有时候反而绕了一圈。

但话说回来,FRP 的"质量"是有前提的:家宽上行、VPS 线路、VPS 带宽都得扛得住。FRP 不是凭空给你高质量,是把瓶颈从 Tailscale 中继换到了你自己手里------你这条链路上哪一环短,整体就是哪一环的水平。

但 FRP 的代价也很真实。

第一是要折腾。frps 配置文件、frpc 配置文件、自定义端口转发规则、TLS 配置、服务自启动,这一套你都得自己来。脚本能省一部分事,但出问题排查还是要看日志。

第二是安全暴露面。你 VPS 上 frps 服务端口对外开着,frpc 协议本身要鉴权,但端口对外开就意味着会被扫到。你要么改高位端口降低被无差别扫的概率,要么开 token 鉴权 + 防火墙白名单,否则就是给攻击面送菜。

注意:这一节我没做 FRP 从零部署教程,是基于反复对比和折腾后的判断写的对照角度。如果你要 frps/frpc 的具体安装步骤,直接去 frp 官方文档跟着走就行,我这边不重复造轮子。

我自己 FRP 用了挺久。最后换 Tailscale 是两件事撞在一起:那台中转 VPS 的带宽给得太小,已经撑不住我现在挂的几个服务;同时也想顺手试试 Tailscale。换的时候把后端服务器也升级成大带宽的------所以体感提升一部分是 Tailscale 自己的"零配置 + 一层伪装"(VPS 上没有 frps 那种"端口对外开"的服务),一部分其实就是带宽变大了,得分清楚。但 FRP 不是一无是处,自定义很高,支持的协议也齐全,要是你的核心需求就是这两条,FRP 还是值得留一台 VPS 跑。

你愿意为"质量自己掌控"和"协议自由度"付出公网 VPS + 配置时间这两个代价的,FRP 还是值得用。完全不想再多养一台 VPS、对协议没特殊要求的,往下看 CF Tunnel。


简单远程看一眼,CF Tunnel 是补丁

CF Tunnel 这工具有意思,它解决的不是"组内网"也不是"高质量中转",是另一种需求:我家里有个服务(一个 web 面板、一个 dashboard、一个 SSH、一个 API),我想把它暴露成一个 HTTPS 域名给外网访问,不开端口、不暴露 IP、不要任何公网入站连接。

这个需求 Tailscale 不是不能做,但 Tailscale 是给"已经在内网里的设备"用的;FRP 能做,但要 VPS。CF Tunnel 是这俩中间的补丁------零成本、出站连接(家里 cloudflared 主动连 Cloudflare 边缘节点,不开任何入站端口),绑你自己的域名,自动给你套 HTTPS。我自己挂过群晖 DSM、Vaultwarden 这种轻量场景,跑下来没出过问题;但 CF 对你能跑什么是有 ToS 红线的,重的活后面再说。

延伸阅读:不用 VPS 也能让家里服务上公网:Cloudflare Tunnel 0 成本部署实录

适合场景列一下,你看像不像你的:

  • 群晖 / 自建的 dashboard 想出门看(Vaultwarden、Memos、Uptime Kuma、Home Assistant 都行)

  • 物联网设备的管理后台

  • 一个轻量的 API 服务

  • SSH 连家里的服务器(CF Tunnel 支持 SSH,但要配 Cloudflare Access 做账号验证;不熟 Access 的别先拿 SSH 练手)

  • 一些只是"看一眼状态"的页面

但 CF Tunnel 的局限也在已发的那篇里诚实写过:

第一,流媒体类服务不要走 CF Tunnel。CF 的 ToS 写得很清楚,免费版的 CDN 不允许大量视频流走它的节点,你要是把一个 Jellyfin / Plex 挂在 CF Tunnel 上跑,分分钟被风控限速,严重的还会被警告。

第二,国内晚高峰会卡顿。Cloudflare 边缘节点的路由策略对国内用户不算友好,晚上 8 点到 11 点这段时间访问明显能感觉到延迟。我自己测下来,看 dashboard 和点 SSH 命令完全够用,但是想做实时性强的事情就有点尴尬。

第三,上传大文件不友好。Cloudflare 免费版有单请求 100MB 上传限制,传大点的东西会被截断。

你只是想"远程看一眼""SSH 进去敲两条命令""手机点开页面查个状态",CF Tunnel 是默认选择,门槛比 Tailscale 还低(家里只要装一个 cloudflared 就行)。一旦涉及流媒体、大文件、低延迟,回头看 前面的FRP。


公网 IPv6 自由听着美,小白真别碰

前面三个方案有个共同点:都帮你把"怎么把流量送进家"这件事处理好了。

但其实还有一条路是直接打通家里的公网入口------软路由 + V6 自由或者付费固定 IPv4。我没把它放进上面那三档对比,是因为它不是一个"工具",是一套需要你自己撑起来的链路;对小白也不友好,最危险的是你不知道自己在做什么。

具体怎么个玩法?运营商现在分给家用宽带的 IPv6 地址段是真公网(不像 IPv4 大部分都是 NAT 后面的内网),如果你的软路由打开 IPv6 转发、配好防火墙、把家里需要暴露的服务挂到 IPv6 + DDNS 域名上,理论上你不需要任何中转节点就能从外面访问家里。或者你愿意给运营商付钱开通固定 IPv4,更直接。

听着很自由,对吧?

但你需要会的东西列一下:

  • 软路由插件:OpenWrt / iStoreOS / 爱快这一套至少得能玩明白

  • NAT 端口映射:哪些端口对内网哪个 IP,要会配

  • 防火墙规则:iptables 或者 nftables 至少能看懂

  • IPv6 子网概念:前缀分配、SLAAC、DHCPv6 这些不能完全是黑盒

  • DDNS:家用 IP 会变,要配动态 DNS 服务

每一项单拿出来都不是一两天能学完的。

但这些都不是最危险的事。最危险的是什么?是小白把所有设备都暴露在公网之下还不知道。

防火墙没配好,整个 NAS 的 5000 端口直接对外开;软路由本身的管理后台 80/443 直接挂公网;某个物联网设备没改默认密码就丢上 IPv6;备份服务的 SMB 端口对外露着------这些场景任何一个出问题,结果都一样:你的设备被公网扫到,对面只要试出弱密码,整台 NAS 就在他手里了。轻则数据丢失,重则上面挂的财务记录、密码、家庭照片一起暴露,财产安全也跟着塌。配置错了访问不到这事其实是好事(等于没事发生),最怕的是配置"错对了"------能访问,但同时把整个内网的东西都端出去了。

严重警告:你不是非常清楚自己在干什么,不要碰公网 IPv6 直连。Tailscale 和 CF Tunnel 之所以是"零配置 + 安全",本质就是它们替你把这些防火墙、ACL、暴露面的事情都处理了。你绕过它们直接玩公网 IPv6,等于把家里所有设备的安全防线推到了你自己的防火墙规则上------而你大概率没有那个能力。

等你真的懂网络安全、懂防火墙、懂 NAT、能自己排查"为什么这台设备被扫到了"的时候,再去碰这条路。在那之前,前面三个工具组合起来够你用 99% 的场景。


你是哪一种 NAS 玩家,对应一张表

把上面的判断收成一张决策表,你对号入座:

你的场景 推荐方案 一句话理由
多设备组内网 / 跨终端管理 / 想要"内网体感" Tailscale 零配置、安全、组成一个内网最方便
多协议 / 流媒体 / 对带宽稳定有要求 FRP + 自购公网 VPS 自己中转,质量自己掌控,协议自由
简单网页连接 / SSH / 物联网 / 看状态 Cloudflare Tunnel 零成本、出站连接、绑域名最快
高阶折腾(公网 IPv6 / 固定 IPv4) 等你真懂安全再说 暴露内网风险大于收益

我自己就是三套并存------日常跨终端管理走 Tailscale,要给家人远程看的几个 dashboard 挂在 CF Tunnel 上,对带宽或协议有特殊要求的时候回 FRP。按场景调度就行,不冲突。

内网穿透没有最优解,只有最适合你场景的解。多设备选 Tailscale,要质量选 FRP,简单需求选 CF Tunnel。小白别碰公网 IPv6 自由,安全才是真正最危险的那一关。

相关推荐
Cat_Rocky1 小时前
keepalived简单配置
linux·运维·服务器
开开心心就好1 小时前
一键扫描电脑重复文件的实用工具
linux·运维·服务器·随机森林·智能手机·excel·启发式算法
DigitalOcean2 小时前
DigitalOcean VPC 网络故障排查 Runbook 实战指南
运维·服务器
Damon小智2 小时前
腾讯云轻量服务器部署 OpenClaw + QClaw 全流程实践:打造随时在线的个人 AI 助手
服务器·云计算·腾讯云
嵌入式×边缘AI:打怪升级日志2 小时前
Tina SDK Linux Kernel 基本使用(实战篇:为开发板添加用户按键驱动支持)
linux·运维·服务器
日取其半万世不竭3 小时前
Excalidraw 自建部署指南:白板协作工具完全私有化
服务器·网络·数据库
牛奶3 小时前
1秒下单10万次,服务器是怎么扛住的?
大数据·服务器·后端
楼田莉子3 小时前
仿Muduo的高并发服务器:LoopThread模块及其ThreadPool模块
linux·服务器·c++·后端·学习
techdashen3 小时前
等了两年,Cloudflare 终于给规则引擎加上了通配符
服务器·rust