ZeroTier 实现内网穿透——入门篇

Posted on Feb 16, 2022

上周末逛 v2 看到评论区提到了 ZeroTier, 想起来家里路由器上 Openwrt 带了这个插件,虽然目前没有内网穿透的需求,但是趁着周末还是稍微研究了下。

应用场景

从标题中可以看出,ZeroTier 是实现内网穿透的一个手段。简单来说就是能够通过它来实现不同局域网之间的互相访问:在公司局域网能连到家里的网络(不要这么做)

原理

大致简单了解了一下,局域网中各设备通过互联网与 Zeroier 的“行星服务器”建立 P2P VPN 连接,如果两个设备能够通过 VPN 直连那么就直连,否则通过 ZeroTier 中继。

简单使用

登录并创建一个 Network 之后,使用 ZeroTier 客户端依据 Network ID 连接到该 Network 并认证后。为该网络分配一个网段,给设备分配 IP 并设置路由规则后就可以使用分配的 IP 互相访问了,是不是很简单?

注意,将路由器加入 ZeroTier 需要配置防火墙。

截图举个例子:

  • 在 IPv4 Auto-Assign 部分,为网络设置 IP 段。

这里我将这个网络设置了 10.242.100.0/24 IP 段。

  • 设置路由规则

分配 IP 段后要为局域网设置路由规则。

图中 192.168.6.0/24 是我家里的局域网 IP 段,10.242.100.0/24 是上面 ZeroTier 分配的 IP 段。

  • 设备连入并点击认证后,为其分配 IP

注意每个设备分配的 IP 要在网段内,一般来说都是自动分配好的。

测试

在配置完成后,可以在一个设备上通过 ZeroTier 分配的 IP 访问另一个设备的服务(需要注意服务绑定的 IP 是不是 ZeroTier 分配的 IP)

在公司网络也可以访问的家里路由器的配置了。

后言

内网穿透的可玩性比较高,你可以将 ZeroTier 网络设置为 Public 对外提供服务,不过小心被叫去喝茶。目前我家里的设备比较少,等有钱了搞个群晖再进一步考虑折腾。

Comments: