Loading...

文章背景图

完全免费、免备案!用 Cloudflare Tunnel 零成本实现内网穿透

2026-10-16
7
- 字
- 分钟
|

目录

  1. 痛点:为什么它是目前最完美的公网分享方案?

  2. 原理解析:Cloudflare Tunnel 是如何工作的?

  3. 前期准备:注册域名并接入 Cloudflare 托管

  4. 实战部署:用 Docker 一键在内网设备部署 Connector

  5. 对接上线:在 CF 后台绑定本地域名与端口

  6. 结语:享受极速、安全的公网访问


1. 痛点:为什么它是目前最完美的公网分享方案?

虽然老周之前极力推荐大家用 Tailscale 或 NetBird 组建私有局域网,但在以下场景中,虚拟局域网却不太好使:

  • 分享给客户/朋友:对方没装 Tailscale 客户端,你不可能强迫每个看你网页的客户都去下载一个组网软件。

  • 第三方 Webhook 调试:比如开发微信小程序、第三方支付回调时,微信服务器需要直接访问你的本地 http://localhost 接口。

如果用传统的内网穿透(如 frp/花生壳):

  • 国内节点:必须备案域名,且带宽很小(通常限制 1-2M),收费极贵。

  • 自建中转:要额外买云服务器,延迟高,且有安全隐患。

而 Cloudflare Tunnel 则是完美解法:带宽不限速、完全免费、自动生成 HTTPS 证书、自带大厂的 DDOS 防护,且不需要域名备案!


2. 原理解析:Cloudflare Tunnel 是如何工作的?

传统的内网穿透需要路由器开放端口接收外界请求(从外向内)。 而 Cloudflare Tunnel 采用的是 "由内向外"主动握手 的机制:

[家庭服务器 (运行 cloudflared 客户端)]
        │
        │  (主动向外建立 HTTPS 握手)
        ▼
[Cloudflare 全球边缘节点] ◄──── (用户直接通过域名访问) ──── [普通互联网用户]

你在局域网设备上运行一个极轻量的客户端(cloudflared),它会自动向 Cloudflare 节点发起多条安全的双向连接。当外网用户访问你的专属域名时,Cloudflare 就会把流量通过这条安全隧道转给你,相当于在你的服务器和全球网络之间架起了一条"秘密管道"。


3. 前期准备:注册域名并接入 Cloudflare 托管

为了安全验证,Cloudflare Tunnel 强制要求你需要拥有一个域名并交由它托管。

步骤

  1. 准备域名:前往 https://www.spaceship.com/ 注册一个便宜的域名,支持 .top / .xyz / .com 等多种后缀,首年成本极低。

  2. 托管到 Cloudflare:

    • 注册并登录 Cloudflare 控制台:dash.cloudflare.com

    • 点击 Add a Site,输入你的域名,选择 Free(免费)计划。

    • 按照提示,去 Spaceship 的域名管理后台将 DNS 解析服务器(Nameservers)修改为 Cloudflare 指定的地址。

  • 等待解析生效(通常几分钟即可)。


4. 实战部署:用 Docker 一键在内网设备部署 Connector

当域名托管成功后,我们开始在内网服务器(如 Windows 电脑、Linux、NAS、Mac)上部署连接器。

实操步骤

4.1 获取配置 Token

  1. 在 Cloudflare 控制台左侧菜单,点击 Zero Trust(首次使用需要绑定一张信用卡验证身份,整个过程完全免费,不会扣费)。

  2. 进入 Zero Trust 页面后,依次点击 Networks → Tunnels → Create a Tunnel。

  3. 命名你的隧道(如 my-home-server),点击保存。

  4. 页面会显示一串安装命令。找到命令行末尾形如 eyJh... 的一长串字符,这就是你的 Tunnel Token,将其复制保存。

4.2 一键运行 Docker 容器

在你的内网服务器终端运行以下命令(将命令末尾的 你的TOKEN 替换为刚才复制的长字符):

docker run -d \
  --name cf-tunnel \
  --restart always \
  cloudflare/cloudflared:latest \
  tunnel --no-autoupdate run --token 你的TOKEN

4.3 验证状态

回到 Cloudflare 网页后台,你会发现刚才新建的 Tunnel 状态已经变成了绿色的 HEALTHY(健康),说明管道已打通!


5. 对接上线:在 CF 后台绑定本地域名与端口

最后一公里,我们将你的公网子域名和局域网本地端口进行绑定。

实操步骤

  1. 在 Cloudflare 网页后台,点击该 Tunnel 右侧的 Edit,进入 Public Hostname 标签页。

  2. 点击 Add a public hostname,按以下字段填写:

    字段

    填写示例

    说明

    Subdomain(子域名)

    nas 或 web

    你想要的名称

    Domain(域名)

    选择你托管的域名

    下拉菜单选

    Type(协议)

    HTTP

    通常为 HTTP

    URL(本地地址)

    192.168.1.100:8080 或 localhost:8080

    局域网 IP:端口

  3. 点击 Save hostname 保存。

见证奇迹的时刻

现在,打开你手机的 5G 网络,在浏览器输入你设置的公网域名(如 https://nas.yourdomain.com)。你就会发现:

  • ✅ 不需要输入端口号

  • ✅ 无需配置任何证书

  • ✅ 绿色的 HTTPS 安全锁已经完美挂上

  • ✅ 本地的网页已经可以直接流畅访问了!


6. 结语

Cloudflare Tunnel 简直是互联网基础设施的降维打击。它不仅帮我们省去了高昂的国内穿透服务费,更用"大厂级别的边缘盾牌"保护了我们家中的服务器免受公网黑客的直接袭扰。

需要分享项目或共享 NAS 的小伙伴,赶紧去试一下吧!


附录:核心要点速查

项目

内容

工具名称

Cloudflare Tunnel(CF 隧道)

客户端

cloudflared(Docker 镜像 cloudflare/cloudflared:latest)

价格

完全免费

带宽

不限速

证书

自动 HTTPS

安全

自带 DDOS 防护

备案

不需要

公网 IP

不需要

域名注册

Spaceship

适用场景

NAS 分享、客户演示、微信小程序调试、Webhook 回调

替代方案

Tailscale / NetBird(需装客户端)/ frp / 花生壳(限速收费)

评论交流

文章目录