上次我们介绍了在有公网 IP 的情况下,通过端口转发实现外网访问内网的方法。今天给大家分享在没有公网 IP 的情况下,通过内网穿透实现的一种相对简单、省心、安全且稳定的方案——Cloudflare Tunnel。
Cloudflare(简称“CF”)被广大网友冠以“赛博大善人”、“赛博活佛”等戏称,这是因为很多别人家收费的服务,它都免费提供。小白在之前的文章中就曾多次提到 Cloudflare,比如:小白自己的网站就套了 Cloudflare、还有前几天 Cloudflare 发生故障导致 ChatGPT、X(Twitter)宕机(小概率事件,CF 出问题的概率比您自己服务器都要低,完全不用担心)等等。而今天我们要说的 Cloudflare Tunnel 正是其提供的免费服务之一,具体到内网穿透功能,相对于其他方式,它有何特点呢?
优势说明
1、不需要宽带具有公网 IP
2、不需要 frp(即不需要自己拥有 VPS 服务器)
3、自动配置 SSL 证书(HTTPS)
4、完全免费,且支持 CDN 加速
5、非常安全,只有您自己能访问,适合长期运行
6、操作简单,不需要修改网络和开放路由器端口(无需设置端口转发/NAT转发/端口映射/虚拟服务器/虚拟主机)
……………………
使用方法
一、注册登录 Cloudflare,添加站点(域名)- 选择免费套餐(Free),等待 DNS 生效
添加域名是该教程操作的基础条件,也是整个教程中相对困难的地方(只是相对而言,若您之前用过 CF,或有一定的基础,其实也相当简单)。鉴于这部分不是我们教程的重点,就不多做介绍了。如果不会操作,请自行查找“Cloudflare 教程”。
域名可选择免费或者收费,免费的域名往往不稳定,建议自行购买一个便宜域名。spaceship 上的 xyz 域名(例如本站地址发布页 210201.xyz)一年仅需几块钱,非常划算!
二、Cloudflare Tunnel 之创建隧道并安装运行连接器
在 Cloudflare 网页左下方,依次点击:Zero Trust - 团队名称 - Free(免费)计划
到需要添加付款方式这一步,返回主页:https://dash.cloudflare.com/
这样可免去添加支付方式的步骤,然后再依次操作:Zero Trust - 网络 - 连接器 - Cloudflare Tunnels - Cloudflared - 下载连机器程序(自动识别系统,不对的话手动选择)- 双击安装

管理员身份运行 cmd(命令提示符),然后复制粘贴上述所示命令,回车运行。
三、Cloudflare Tunnel 之将隧道路由到已发布应用程序
之后在网页右下角点击进行下一步,添加已发布应用程序路由:

上图设置还是以前文介绍的 irreader RSS 服务 为例,选择之前添加的”域“,子域可自定义,类型选择”HTTP“,URL 填写localhost:9090,完成后即可用此域名访问内网的应用服务。
另外,一个 Tunnel 支持添加多个子域名解析,来跳转到不同端口的内网服务地址。在连接器中,点击 隧道名称 - 编辑(或在隧道右侧三个点 ︙中选择“配置”)- 已发布应用程序路由 - 添加已发布应用程序路由,按照上图配置其他子域即可。

综上,该方法不仅适合没有公网 IP 的情况,对于动态公网 IP 的一些问题,比如 IP 变动,需要配置域名访问和 SSL 等问题,使用 Cloudflare Tunnel 都一并解决了!


评论0