ZerotierOne可以帮你把家里的设备和公司的设备组建一个虚拟的网络,帮你建立设备间的P2P连接,数据传输更安全,免去了自己组建VPS转发数据的不便。
首先进入Zerotier的官网,注册一个账号,然后创建一个Private的网络,这时可以拿到一个网络ID,后面只要在各个设备上安装ZerotierOne的客户端,通过网络ID加入你创建的私密网络,就可以组建成一个类似于局域网的虚拟网络。
家中的笔记本比较老旧,无法直接安装编译好的二进制包,只好自行编译,好在也很简单。
https://github.com/zerotier/ZeroTierOne/tree/fe1ce885a04ae68894b8a8fc1892db212addbf6e
先下载项目,在运行下面命令进行编译安装:
make && make install
Linux 下编译安装会自动安装好/var/lib/zerotier-one
文件夹下(不同系统目录不同,参考github项目首页README中的说明)
进入安装目录:
cd /var/lib/zerotier-one
运行zerotier:
./zerotier-one -d
加入网络,加入网络后会自动保存,以后启动会自动加入该网络
./zerotier-cli join <network-id>
编写启动脚本
cd /etc/systemd/system
vim zerotier-one.service
输入如下的内容
[Unit]
Description=Serive to ZeroTierOne
After=network.target
[Service]
Type=simple
PIDFile=/var/lib/zerotier-one/zerotier-one.pid
ExecStartPre=cd /var/lib/zerotier-one
ExecStart=zerotier-one
Restart=on-failure
[Install]
WantedBy=multi-user.target
设置开机启动
systemctl enable zerotier-one
立刻启动zerotier-one
systemctl start zerotier-one
查看zerotier的运行状态
systemctl status zerotier-one
ps aux | grep zerotier-one
netstat -anp | grep 9993 # default listen port is 9993
由于在ZeroTier控制台创建的是一个PRIVATE的Network所以需要手动认证该设备(Auth的单选框中打勾)

回到client终端,查看虚拟网络信息:
ifconfig
ztppise7ul: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 2800
inet 192.168.195.100 netmask 255.255.255.0 broadcast 192.168.195.255
inet6 fe80::944f:4cff:fecf:cfba prefixlen 64 scopeid 0x20<link>
ether 96:4f:4c:cf:cf:ba txqueuelen 1000 (Ethernet)
RX packets 0 bytes 0 (0.0 B)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 19 bytes 1496 (1.4 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
Comments | NOTHING