前言

先前家里使用 Softbank 的网 DDNS 动态域名解析,能直接把域名解析到家里服务器。但最近搬了新家,用着免费网发现域名不能用了。ping 了一下域名显示确实是自己家里的 IP 地址,那就说明 DDNS 是生效的。

使用 CanYouSeeMe 检查一下端口是否开放

截屏2025-02-26 15.30.08

80 不行,然后又试了几个常用端口,都不能用,那看来是公寓网给屏蔽了。联系 Softbank 说准备网络设施要花个一个月??? 在此之前只能先想办法解决这个问题了。

万幸的是我们的网络大善人 Cloudflare 的 Tunnel 服务能够解决这一问题。

Cloudflare Tunnel

Cloudflare Tunnel 提供了一种安全的方式,无需公共 IP 即可在云与设备之间打通一条加密通道,这样 Cloudflare 的 CDN 就可以很方便的通过这条加密通道访问到部署在内网的服务,包括 Web、SSH 等。同时,还不用考虑电信、移动等 ISP 不提供固定 IP 地址、不能开放端口,甚至解决备案的问题。

最重要的是,免费!!!!!!

Cloudflared 在资源和 Cloudflare 的全球网络之间建立出站连接(即隧道)。隧道是将流量路由到 DNS 记录的持久对象。在同一隧道内,根据需要运行任意数量的“ cloudflared ”进程。这些进程将与 Cloudflare 建立连接并将流量发送到最近的 Cloudflare 数据中心。

handshake.eh3a-Ml1_1IcAgC

开始

登录 Cloudflare,点击左侧 Zero Trust。(这里我已经完成了域名解析)

截屏2025-02-26 16.49.55

  1. 随便写个名字

截屏2025-02-26 16.54.09

  1. 选择免费即可

截屏2025-02-26 16.55.18

  1. 创建隧道

    点击 Tunnels 创建一个隧道

截屏2025-02-26 17.01.31

  1. 隧道类型选择 Cloudflared,给隧道命名并保存。

  1. 此时已完成隧道搭建,这里我们选择使用 Docker 安装。

    使用 SSH 连接服务器并进行安装,成功后会在页面下方 Connectors 显示。

截屏2025-02-26 17.13.42

  1. 配置 Tunnel

截屏2025-02-26 17.22.45

搞定。

参考

https://developers.cloudflare.com/cloudflare-one/connections/connect-networks/