仅作学习记录用,如有错误,感谢指正!!!
1.ZeroTier是做什么的?
异地组网、内网穿透
可以实现如远程访问自己家中电脑、远程访问处于内网环境下的某台设备,包含不限于远程桌面控制、ssh等。
2.为什么用ZeroTier?
简单方便,不需要公网ip,可以使用官网免费节点进行ssh...免费版现在可以支持25个hosts。
可以装在软路由上实现局域网与局域网之间的异地组网【后续我大概会试试。】
3.ZeroTier异地组网
1、创建账号
https://my.zerotier.com
https://my.zerotier.com/network
点击Create创建A***网络,自己起名哈,随便叫什么
3、配置网络
A***网络的network控制台页面,配置private模式
选择自己想要的局域网字段,和其他已有的任何字段应该都没什么联系,但还是尽量别重复。
4、添加host/电脑/其他设备
win:
在 Download – ZeroTier 下载ZeroTier windows版本,双击安装后右下角有
样式的小角标,如果没有的话,重新右键刚刚下载的 ZeroTier One.msi 卸载,然后
重新安装,还是不行的话问度娘。
此时我们安装好了ZeroTier,并且zerotier未加入到任何network,运行验证:
$ zerotier-cli listnetworks
200 listnetworks <nwid> <name> <mac> <status> <type> <dev> <ZT assigned ips>
接下来加入到之前网站上创建的A***网络,运行:
$ zerotier-cli join ****************
200 join OK 【加入成功】
$ zerotier-cli listnetworks 【查看已加入的网络列表】
200 listnetworks <nwid> <name> <mac> <status> <type> <dev> <ZT assigned ips>
200 listnetworks **************** fe:35:**:**:**:** ACCESS_DENIED PRIVATE ztc3qqheov -
**************** 是之前创建的 network ID,如下图
看到zerotier-cli listnetworks的列表里增加了一项,加入网络成功。
linux:
如果是ArchLinux,直接运行:
$ sudo pacman -S zerotier-one
如果是Ubuntu/Debian/CentOS,则运行:
$ curl -s https://install.zerotier.com/ | sudo bash
出现【*** Success! You are ZeroTier address [ ********** ].】
之后启动zerotier,并且让他开机自启动,运行:
$ sudo systemctl start zerotier-one.service
$ sudo systemctl enable zerotier-one.service
此时我们zerotier未加入到任何network,运行验证:
$ sudo zerotier-cli listnetworks
200 listnetworks <nwid> <name> <mac> <status> <type> <dev> <ZT assigned ips>
至此,安装配置完成,接下来加入到之前网站上创建的A***网络,运行:
$ sudo zerotier-cli join ****************
200 join OK 【加入成功】
$ sudo zerotier-cli listnetworks 【查看已加入的网络列表】
200 listnetworks <nwid> <name> <mac> <status> <type> <dev> <ZT assigned ips>
200 listnetworks **************** fe:35:**:**:**:** ACCESS_DENIED PRIVATE ztc3qqheov -
**************** 是之前创建的 network ID,如下图
5、配置host/电脑/其他设备
由于我们之前选的网络模式是,PRIVATE模式,需要手动接受,所以在下图 处打勾授权该host,同时也可以在此处修改异地组网的局域网IP,此处我改为
192.168.192.7
验证配置设置成功:
等待几分钟后,执行ipconfig/ifconfig,会发现本地IP多出一个类似【ztc3qqheov】
这样ztc开头的网卡配置,且ip地址为上图所配置的
(这里我看的是另一个机器的所以是20,正常应该是7)
6、添加route配置
在网页按照下图添加对应机器的配置,Destination写原内网IP网段
右侧写异地组网后想要的内网ip。
7、查看信息和测试
至此,zerotier异地组网完成,尝试使用ping、ssh其他方式测试
【正常情况下官网免费PLAENT节点的ping是几百到上千毫秒不等】
$ sudo zerotier-cli listpeers
200 listpeers <ztaddr> <path> <latency> <version> <role>
200 listpeers 62f865ae71 50.7.252.138/9993;6784;20769 1028 - PLANET
200 listpeers 72454f66f7 - -1 - LEAF
200 listpeers 778cde7190 103.195.103.66/9993;6784;16537 258 - PLANET
200 listpeers a0cbf4b*** ***.***.***.***/21017;1778;1526 -1 1.10.1 LEAF
200 listpeers cafe04eba9 84.17.53.155/9993;6784;1568 210 - PLANET
200 listpeers cafe9efeb9 104.194.8.134/9993;6784;6556 226 - PLANET
200 listpeers f2fcedc*** ***.***.***.***/9993;1778;1736 29 1.10.1 MOON
$ ping 192.168.192.192
PING 192.168.192.192 (192.168.192.192) 56(84) bytes of data.
64 bytes from 192.168.192.192: icmp_seq=1 ttl=64 time=97.7 ms
64 bytes from 192.168.192.192: icmp_seq=2 ttl=64 time=35.1 ms
64 bytes from 192.168.192.192: icmp_seq=3 ttl=64 time=38.5 ms
64 bytes from 192.168.192.192: icmp_seq=4 ttl=64 time=29.9 ms