跳到正文
Cloudflare:DNS、CDN、Tunnel 一条链

Cloudflare:DNS、CDN、Tunnel 一条链

域名 DNS 托管加免费 CDN 加零端口内网穿透。一条出站隧道,服务器一个入站端口都不用开。这篇记这套链路怎么落到我手上、为什么不会换,以及它在发布链路里「地基」的位置。

Cloudflare:DNS、CDN、Tunnel 一条链

状态:在用 · 不会换(地基级)

速读#

Cloudflare 在这里不是单个工具,而是 DNS、CDN、Tunnel 组成的一条发布链路。它最值钱的地方,是把「公网可达」从开入站端口,改成由 cloudflared 主动出站连接;代价是把 DNS、CDN、入口全押在一家身上。这个取舍我认,但要把押注的内容写清楚。

三件事在我手上是一条链#

能力我怎么用换来什么
DNS域名 NS 指到 Cloudflare记录统一托管
CDN / 代理A 记录橙云开启外面 ping 到的是 CF IP,顺手缓存、SSL、基础 WAF
Tunnel机器上跑 cloudflared,主动出站连 CF入站端口可以对公网全关

访客请求沿隧道进来。服务器不必为了「能被访问」而在防火墙上开缝。

这条链路是一步步收紧的:

  1. 直接开端口放行
  2. DNS 代理藏了 IP,但端口还在
  3. Tunnel 把发起方向从入站改成出站,真实入口归零

三步走完才明白:「可达」不是开一道缝,是选择从哪个方向发起连接。

为什么不是其它#

方案代价
frp要自建中转,多一台要守的机器
端口转发暴露真实 IP
直挂公网等于裸奔
Cloudflare 免费档「藏 IP + CDN + 零端口」三件一起给

别的方案凑不齐这个组合。场景是:个人几台机器、要省心、要少暴露——这套取舍我认。

代价也要写清楚#

Tunnel 不完美:流量经 Cloudflare 中转,多一层依赖;出站断了,服务就断。

排查也多了一层:出问题先要分清是源站挂了还是 CF 这层挡了——缓存没刷、代理规则误伤、隧道断连,症状都长得像「站挂了」。中间多一层,问题定位就多一个候选,这是所有代理层的通病,不是 CF 独有。

还有个边界要认:橙云代理的是 HTTP/HTTPS 这类流量,SSH 之类的通道不在这条链上——管理入口得单独安排,别指望一朵橙云把所有端口都罩住。

最后一条要直视:DNS、CDN、入口全押一家,等于把鸡蛋放进同一个篮子。CF 边缘出全球性故障的时候,我这条链路是整条同时消失的——连想临时切回直连,要改的 DNS 都还在它手里。个人站我认这个风险,因为对我来说「平时省下的维护成本」大于「几年一遇的连坐宕机」;换成对可用性有真实承诺的业务,就不能这么押。

零端口的干净,是用「依赖 CF 中转」换来的,不是白嫖。这个代价我清楚,也认。

什么情况下不该选它#

这套链路赢在「个人机器、省心、少暴露」,出了这个格子就要另算:

  • 主要访客在中国大陆:免费档没有大陆节点,流量绕行海外,延迟和稳定性都会打折。要认真服务大陆访客,该走备案加国内 CDN 那条路——至少别把「套了 CF」当成加速手段。
  • 要暴露任意 TCP/UDP 端口:橙云和 Tunnel 的公开入口面向 HTTP 类流量。游戏服、数据库直连这类原始端口,免费档罩不住,硬要做就得回到端口转发或 frp 的老路。
  • 大流量媒体分发:拿免费 CDN 扛视频和大文件下载,既贴着服务条款的边走,也不现实——那是对象存储加专门分发网络的事。
  • 不接受流量过第三方:代理开着,明文就在 CF 边缘解开再回源。这在我的威胁模型里可以接受,接受不了的人就该自己扛 TLS 和入口,那是另一套成本。

会不会换#

不会换。

它是整套发布链路的地基。换它等于拆地基:DNS、CDN、Tunnel 全要重找替代,而且没有一个能把这三件免费一起给的。

所以这条不是「评估中换不换」,是「地基不动」。

工具会不会换,看它站的位置。站成地基的,不评估换不换,只评估下一代怎么往上盖。

s1oopX

登录 s1oopX