使用 Zerotier 进行内网穿透

由于目前公网 IP 很难申请,所以除去公网 IP 这种方案外,Zerotier 是目前使用人数比较多的内网穿透方案,其配置简单,速度在很多地区还不错,而且支持通过自建获得更好的访问体验。

注册 Zerotier 账号

首先到 Zerotier 官网注册账号,点击 Sign Up 填写用户名、密码和邮箱之后,会收到一封注册邮件,到邮箱中点击激活邮件,会跳到 Zerotier 网站的用户页面。点击 Create A Network 创建一个自己的网络。

点击之后会得到一个网络 ID。

创建这个网络的目的,是为了建一个属于自己的私有局域网,通过 Zerotier 的服务器来将你的所有设备组成一个虚拟的局域网,这样不管你的设备在什么样的网络环境里,只要能连上 Zerotier 的服务器,就可以像在局域网中使用一样了。也就实现了内网穿透的效果。

将设备加入到创建好的网络里

建好网络后,接下来就可以将需要内网穿透的设备都加入到这个局域网里。

如何将 NAS 加入到局域网?

如果你的 NAS 所在的网络里也运行了 OpenWRT,只需要在 OpenWRT 中设置下即可。

访问你的 OpenWRT 地址,点击 VPN - Zerotier,勾选启用,填写上一步创建好的网络 ID,并勾选 自动允许客户端 NAT,最后点击 保存&应用即可。

当 OpenWRT 里的 Zerotier 状态显示为绿色的 Zerotier 运行中 时,你可以在 Zerotier 网站的控制台里点击网络 ID,进入该网络的管理页面。

在下方的 Members 模块里,你可看到提示 One device has joined this network.,有一台设备加入了这个网络。这个时候你可以在这个设备前面的 Auth 打钩。表示允许这台设备加入网络,并在旁边的 Name/Description 里给设备填写名称,以便区分你的设备。


至此,你的 OpenWRT 已经加入到这个虚拟的局域网络里面了。在每台设备的后面,都有一个 Managed IPs,这就是虚拟网络为每台设备分配的 IP。

Android、iOS 等移动设备如何设置?

Android 设备可以安装 Zerotier 客户端。如果你可以访问 Google Play,你可以直接在 Google Play 中搜索下载安装 Zerotier 客户端。如果无法访问 Google Play,可以从这里下载备份的 apk 客户端。

备份下载:https://cloud.slarker.me/s/EvsJ

iOS 设备请从中国区之外的地区(需要外区的 Apple ID 账号)下载安装 Zerotier 客户端。

下面以 Android 设备为例,介绍如何加入 Zerotier 网络。

安装好客户端之后打开 Zerotier,点击右上角的 + 加入网络。填写你的网络 ID,点击下方的 Add Network

这时客户端会提示 Not Authorized for network,意思是你的设备没有得到这个网络的加入许可。你需要到 Zerotier 网络管理页面,像刚才给 OpenWRT Auth 授权那样,在这台新设备前面打上勾就可以了,别忘了给你的设备填个名称以便区分。

在外面需要远程访问内网里 NAS 时,只需要打开 Zerotier 就可以了。

如果你在使用数据网络,记得点击右上角的扳手图标,勾选使用数据网络。

设置路由映射

由于 Zerotier 分配的局域网网段和家庭内网的局域网网段不一致,这就导致了在外面访问的时候,需要来回修改连接 IP,非常不方便。而 Zerotier 正好提供了路由映射的功能,可以将虚拟网络里的 IP 映射到自己的家庭内局域网里。这样就不用来回切换 IP 了,即便在外面,只要打开 Zerotier 连上,就可以像在家里一样访问 NAS 了,而且局域网里的所有设备都可以直接访问,非常方便!

在网络管理页面的 Advanced 模块里,将你需要映射的网段 IP 和上面为 OpenWRT 分配到的 Managed IPs 都填上,点击 Submit 即可。

这时你就可以在手机浏览器里,像在家里的局域网一样访问 NAS 了。

访问速度测试

如果你的局域网里部署了测速服务,可以测下访问速度。

自建服务器,获得更好的穿透体验

由于 Zerotier 的服务器也在国外,所以在某些地区访问速度可能并不能让人满意。这个时候就可以尝试自建服务器了。通过自建 Zerotier 服务,通常访问速度可以跑满你的上行带宽。

由于自建需要良好的服务器网络支持,所以此项服务并不免费。如果有需要自建服务器的,也可以通过 Wechat 联系我。添加好友请注明 自建 Zerotier