zerotier安装
前言
2019年年底,RIPE NCC确认全球IPv4地址区块已经被全部分配,现在人人拥有多台需要联网的设备,有限的ipv4不能满足高速增长的设备数量,催生出了NAT技术。NAT技术的目的是将多台设备的流量从一台设备发出,这样就能让大量的设备共享一个公网ip出口,缓解ip不足的问题。
但是NAT的弊端也很明显,在公网的其他设备不能直接准确访问到躲在NAT后面的设备。
先来了解一下什么是NAT
打个比方公网相当于小区,公网ip相当于楼号,NAT相当于每栋楼的快递中转站,端口相当于快递站的快递号码。内网设备tom访问A时,NAT建立了一个-51000的端口映射。也就是快递中转站记录了一下,以后收到51000号快递就送到设备tom。A收到来自这栋楼51000号的请求,再把数据发回给51000号,快递站自然会把这个来自A的51000号的数据送给设备tom。但是如果设备tom没有主动访问A,快递站就不会随便把数据送给设备tom,A无论如何都不能把快递发到tom手上。这也就导致了从公网无法访问NAT后的设备。
zerotier的原理
NAT对于NAS的使用是致命的,只要离开了自己的路由器,在其他地方就无法访问。但是NAT也不一定断了我们通过直连访问家中NAS的路,只要我们可以骗快递站建立一个映射,比如把所有49999端口的数据全部发到我家,就可以实现接近直连访问的速度。这就是zerotier的精髓——内网穿透。如果对穿透NAT感兴趣欢迎阅读我曾经写过的一篇有关WebRTC的科普博客,里面详细介绍了打洞的过程WebRTC入门。
zerotier能做到什么
zerotier能让你随时随地连接上NAS。在手机和nas上同时开启zerotier并且加入到同一个虚拟网络中,手机在大部分地方都可以借助zerotier的内网穿透能力访问到NAS。在网络环境不允许穿透的地方,zerotier会通过一台中转服务器把流量中转给nas,虽然这非常慢但是也是可以用的。如果你愿意花一点钱,买一台国内的vps安装zerotier,然后将中转服务器设置为你的vps这样可以极大提高访问速度。
zerotier教程
文字水平有限,原理可能写得比较枯燥,接下来全部是干货教程。
1. 注册账号
首先登陆zerotier官网
" srcset="/img/loading.gif
" srcset="/img/loading.gif
注册完成并登录后会进入zerotier后台,此时没有创建网络。点击左上角的创建网络,就会发现在列表里多了一行,点进去。
" srcset="/img/loading.gif
在网络设置里有很多选项,先不要着急,从上到下一个个设置。
记下这个Network ID,其他设备加入网络需要用。
把Access Control设置为Private,这样每个新加入网络的设备都需要你登录后台进行允许,否则无法访问你的网络。
" srcset="/img/loading.gif
在Advanced中可以设置这个虚拟局域网的ip段,不需要修改就可以直接用。
" srcset="/img/loading.gif
再往下的设置也不需要调整
2. 安装客户端
官方安装教程
把一些常用的下载地址列出来,方便访问。
群晖安装包
安卓安装包
苹果appstore链接
windows安装包
linux可以用以下命令一键安装:curl -s https://install.zerotier.com | sudo bash
3. 加入网络
以windows,群晖为例展示如何加入网络并且在后台允许加入网络。
windows:
右键托盘图标,点击Join Network
" srcset="/img/loading.gif
在输入框输入刚才的Network ID,然后join
" srcset="/img/loading.gif
浏览器进入后台管理页面,找到Members,可以看到一台新的设备加入了网络。
" srcset="/img/loading.gif
点击auth,稍等一下会出现一个自动分配的ip。只要是加入这个网络的设备,都可以通过这个ip访问到这台电脑。
" srcset="/img/loading.gif
群晖:
群晖安装包
找到对应cpu型号的安装包下载。
下载完成后进入群晖套件中心,点击手动安装,选择刚才下载的安装包。
" srcset="/img/loading.gif
然后在右下角输入Network ID,然后join。
" srcset="/img/loading.gif
后面的操作就是进入后台,允许这台设备加入网络,与windows的操作是一样的。
安卓和ios的操作也类似,安装软件以后输入Network ID加入网络然后在后台允许。
成功组网
可以试试直接输入群晖zerotier的ip访问,看看速度怎么样。如果速度不理想,可能是宽带的NAT类型无法打洞,zerotier使用了位于国外的中转服务器,提高网速的办法只有自己购买国内VPS进行流量中转。
本博客所有文章除特别声明外,均采用 CC BY-SA 4.0 协议 ,转载请注明出处!