A. OpenWRT安装Zerotier
Openwrt 汉化
opkg update
opkg install luci-i18n-base-zh-cn
安装zerotier
第一步:
opkg install nano
opkg update && opkg install zerotier
第二步:
配置zerotier
nano /etc/config/zerotier
将option enabled '0'的0改为1,list join '**********'改为你自己的Network ID。
第二步:
重启路由器
第三步:
到官网管理中心勾选对应路由器的【Auth】项
第四步:
添加路由表
第五步:
路由器防火墙设置,在【网络】→【防火墙】→【自定义规则】中添加如下规则,【重启防火墙】
iptables -I FORWARD -i 123 -j ACCEPT
iptables -I FORWARD -o 123 -j ACCEPT
iptables -t nat -I POSTROUTING -o 123 -j MASQUERADE
其中的“123”在不同的路由器中不一样,你可以在路由器ssh环境中用zerotier-cli listnetworks查询
B. docker安装zerotier设置tup
步骤如下:
1.安装DOCKER
在云服务器上安装DOCKER,简单一点的可以先安装宝塔面板,在宝塔面板市场里搜索DOCKER,这个几个docker管理器都可以用,关于如何安装宝塔可以自行网络一下,一天命令,非常简单。
2.部署moon服务
安装dockerzerotier-moon服务打开宝塔终端工具,输入命令dockerpullseedgou/zerotier-moon,在docker上部署zerotier服务dockerrun--namezerotier-moon-d--restartalways-p9993:9993/udp-v/home/zerotier-moon:/var/lib/zerotier-oneseedgou/zerotier-moon-410.0.0.1。运行之后可以在docker面板里看到正常运行的moondocker服务。
注意:在宝塔面板安全里开放9993端口,如果是腾讯云或者其他云服务器记得在防火墙里开放9993端口服务。把刚刚挂载的目录里自动生成moons.d文件夹下载到本地备用
3.配置win客户端
Windows客户端加入moon自建节点将moons.d文件夹整个复制到ZeroTier安装目录下默认路径为:C:ProgramFiles(x86)ZeroTierOne,打开WindowsPowershell,输入命令zerotier-cliorbitxxxxxxxxxxxxxxxxxxxx,将xxxxxxxxxx替换为你的moonid,在服务器终端面板里运行下面命令查看moonid,dockerlogszerotier-moon,WindowsPowershell显示提示200orbitok表示添加moon节点成功此后重启zerotier,完毕。
4.测试服务
查看是否成功加入moon服务器节点,查看节点信息命令zerotier-clilistpeers,当你看到某一行后面带有moon字样,就证明已经加入到moon自建节点中其中PLANET为官方的根服务器。
C. 科研软件QA: 安装ZeroTier后,打开网页卡顿
对于“远程SSH连接服务器”,通常采用以下两种方案:
在个人电脑部署ZeroTier后经常会出现,浏览网页卡顿的情况,打开网页,总感觉会卡几秒,然后迅速打开。
链接:Win10无法调整网卡顺序
继续找办法……
点击“高级”→“高级设置”
PS:这个网卡根据你们实际使用的网卡名,自己选择即可。
D. 在Truenas中搭建Zerotier内网穿透
提到内网穿透,我了解的免费或者性价比高的方案有frp、nps、Ngrok、蒲公英、Zerotier。大部分方案都有限流、不稳定、部署难度大等问题。其中Zerotier各方面表现良好,部署难度低,客户端兼容三大主流平台、两大手机系统、常见NAS系统、路由器、Docker(WINDOWS、MAC OS、APPLE IOS、ANDROID、LINUX (DEB/RPM)、FREE BSD、Synology、QNAP、WD MyCloud、 Community OpenWRT Port 、 DOCKER ),个人认为是覆盖日常家用的全场景。而且在国内使用的场景通过搭建Zreotier moon,可以大幅度降低延迟。
但是用Turenas或者Freenas用户应该会有这样的烦恼,版本11.2-RELEASE之后,Zerotier在系统自带命令行、Jail环境下都部署失败,或者出现难以解决的BUG。
翻阅大量资料都没有Truenas或Freenas系统成功解决问题的方案。机缘巧合下看到司波图的视频。尝试通过Truenas安装docker环境,然后docker部署Zerotier实现内网穿透,自建虚拟局域网。
最后发现该方案实现难度低、系统运行稳定。通过Zerotier,将虚拟局域网内24H运行的机器作为网关,顺利使用(手机电脑平板)外网连接家里局域网上任意主机(路由器、NAS、PC)。
这里引用知乎 Lulus 的教程
https://zhuanlan.hu.com/p/83849371
https://my.zerotier.com/
(1)Advanced中添加局域网网段。待Turenas或其它主机安装完Zerotier客户端后,添加对应Zeroyier分配的具体的主机ip(本地局域网网段 via Zerotier分配主机ip)
(2)Zerotier分配主机ip需要打开Allow Ethernet Bridging
Truenas里面安装CentOS 7 docker环境。
这里引用B站司波图的教程。一步步安装完CentOS 7及Portainer
https://www.bilibili.com/video/BV1JN411R7Gs
通过FinalShell,登录到CentOS7。安装zerotier-one-docker dockers应用
这里用Github里 henrist / zerotier-one-docker 提供的命令行
https://github.com/henrist/zerotier-one-docker
docker run \ -d \ --restart unless-stopped \ --name zerotier-one \ --device /dev/net/tun \ --net host \ --cap-add NET_ADMIN \ --cap-add SYS_ADMIN \ -v /var/lib/zerotier-one:/var/lib/zerotier-one \ henrist/zerotier-one
docker exec zerotier-one zerotier-cli status
docker exec zerotier-one zerotier-cli join NETWORK-ID
docker exec zerotier-one zerotier-cli listnetworks
写入内核
vi /etc/sysctl.conf
添加 net.ipv4.ip_forward = 1
sysctl -p
CentOS 7防火墙放通转发
iptables -I FORWARD -i 网卡名 -j ACCEPT
iptables -I FORWARD -o 网卡名 -j ACCEPT
iptables -t nat -I POSTROUTING -o 网卡名 -j MASQUERADE
#网卡名可以在CentOS7中用 docker exec zerotier-one zerotier-cli listnetworks 或者 ifconfig 查询zt开头的网卡名
iptables -I FORWARD -j ACCEPT
iptables -A FORWARD -d 本地局域网网段 -j ACCEPT
iptables -t nat -A POSTROUTING -s 本地局域网网段 -j MASQUERADE
iptables -t nat -A POSTROUTING -d 本地局域网网段 -j MASQUERADE
#添加本地局域网网段(192.168.1.0/24)
iptables -A FORWARD -d ZeroTier分配网段 -j ACCEPT
#添加 ZeroTier分配网段到iptables(10.147.17.0/24)
iptables-save
#保存iptables配置到文件,否则重启规则会丢失
待续
参考链接:
https://zhuanlan.hu.com/p/83849371
https://www.bilibili.com/video/BV1JN411R7Gs
https://github.com/henrist/zerotier-one-docker
E. Koolshare之Openwrt上安装zerotier
Koolshare二次开发的Openwrt路由系统有很多丰富实用的软件,很值得推荐和使用。这里介绍下zerotier的安装和使用。
1、打开酷软中心,安装zerotier软件。
2、登录zerotier官网,注册账号,创建私人局域网,获取Network ID。
3、打开酷软中心已经安装好的zerotier软件,填入Network ID,点击“开始运行”。
4、修改/etc/config/zerotier配置文件(若ssh中运行zerotier-cli join ID出错就直接修改并保存此配置文件),将option enabled ‘0’的0改为1。
Tip:可以先删除文件,然后将修改好的zerotier配置文件通过上传的方式完成修改。
同时在zerotier个人中心将该设备加入到对于的虚拟局域网中。
5、查询选择zerotier接口
6、配置防火墙,防火墙都选择接受,添加自定义规则:
iptables -I FORWARD -i 虚拟接口名称 -j ACCEPT
iptables -I FORWARD -o 虚拟接口名称 -j ACCEPT
iptables -t nat -I POSTROUTING -o 虚拟接口名称 -j MASQUERADE
示例:
iptables -I FORWARD -i ztrfybhxfe -j ACCEPT
iptables -I FORWARD -o ztrfybhxfe -j ACCEPT
iptables -t nat -I POSTROUTING -o ztrfybhxfe -j MASQUERADE
7、重启防火墙,重启路由器,重新打开zerotier软件,选择zerotier接口,保存并应用。
8、测试通过,收工!
最后附上常用命令:
加入网络 zerotier-cli join ****
节点查看 zerotier-cli peers
命令查询 zerotier-cli -h