切换主题
零成本基建系列——如何在没有公网IP的情况下提供外网访问
家里的电脑、公司内网里的服务器通常没有固定的公网IP,这些机器通常都是躲在路由器/NAT 后面,只有局域网 IP(比如 192.168.x.x、10.x.x.x),而运营商给的公网 IP 是挂在路由器上的非固定IP。这些机器通常无法对外提供服务,也就是说外面的人想直接连你的机器,是连不进来的。 但有些场景我们有需要让外面的人能连进来,比如在家临时访问公司内网的某个系统;远程 SSH 连自己家里的 NAS;微信/支付宝支付回调调试需要公网能访问本地的开发服务;把本地跑的 Web 项目临时发给别人预览等等。 那么有没有办法解决呢?答案是有的,而且我们可以零成本的实现。这里就来分享一个通过免费域名+Cloudflare实现内网穿透的方法。
- 注册免费域名 访问 https://my.dnshe.com/ ,免费注册一个de5.net的域名(注意其他域名可能无法在cloudflare上使用)

- 注册Cloudflare账户(如果还没有现成的账户)
- 域名迁移到Cloudflare 选择添加域名
选择迁移域名
选择免费的plan后获得域名服务器地址:keira.ns.cloudflare.com 和 ram.ns.cloudflare.com 
- 回到dnshe设置DNS服务器
将Cloudflare提供的域名服务器填写进去,可能需要几分钟或者几个小时才生效 
- 开通Cloudflare ZeroTrust
选择一种付款方式后激活,放心不会产生费用
- 回到首页,设置Cloudflare隧道
点击创建隧道
设置隧道名称
根据自己的系统安装对应的软件
我的是windows,安装成功后在服务中可以看到
服务启动后很快网页端就检测到并成功链接
点击继续成功完成隧道创建 
- 进入隧道页面创建route
选择Published application
填入本地服务的服务地址(含端口号) 

- 外网调用开始本地服务调试 比如在微信开发者平台配置调用
本地启动服务
本地接收到调用就可以开始调试了,到此内网穿透成功 
