zerotier 搭建 moon中转服务器 及 自建planet

news/2024/11/8 15:14:31/

搭建moon 服务器

环境准备

# 安装依赖
yum install wget gcc gcc-c++ git -y
yum install json-devel -y# 下载及安装
curl -s https://install.zerotier.com/ | sudo bash

节点ID
在这里插入图片描述

配置

配置moon.json文件

cd /var/lib/zerotier-one/# 导出依赖
zerotier-idtool initmoon identity.public >>moon.json# 编辑配置文件 编辑 stableEndpoints配置项(ip地址和端口): "ip/9993"
vim moon.json

在这里插入图片描述

生成.moon文件并进行配置

# 创建 moon 服务器文件
zerotier-idtool genmoon moon.json# 创建moons.d文件夹
mkdir /var/lib/zerotier-one/moons.d# 复制到moons.d 文件夹下
cp 000000951a0ea9af.moon ./moons.d/ # 重启 zerotier 服务
systemctl restart zerotier-one

其它节点加入到 moon 服务中

注意,需要将云服务器的UDP: 9993端口打开,加入配置文件后,需要重启ZeroTier或者重启系统生效

将.moon 放入到指定的文件夹中,如果没有moons.d 文件夹,则自己手动创建一个


MacOS: /Library/Application Support/ZeroTier/One/moons.d
# 注意 ProgramData 是隐藏文件,需要手动打开显示
Windows: C:\ProgramData\ZeroTier\One\moons.d Linux: /var/lib/zerotier-one/moons.d

如何使配置生效

MacOS
# mac 重启ZeroTier
cat /Library/Application\ Support/ZeroTier/One/zerotier-one.pid | sudo xargs kill
Windows

在服务中重启ZerotierOne 服务

在这里插入图片描述

Linux
systemctl restart zerotier-on

在这里插入图片描述

# 查询是否生效

MacOS, Windows, Linux 都可以使用此命令进行查询

# 查询是否生效
zerotier-cli peers

在这里插入图片描述

使用mood中转服务器后的速度

在这里插入图片描述

自建planet

参考: https://key-networks.com/ztncui/
打开防火墙 3000(http)端口和 3443(https) 端口

安装及配置

# 安装
sudo yum install https://download.key-networks.com/el7/ztncui/1/ztncui-release-1-1.noarch.rpm -ysudo yum install ztncui -y# 配置(/opt/key-networks/ztncui/.env 是配置文件,可以直接手动修改)
sudo sh -c "echo ZT_TOKEN=`sudo cat /var/lib/zerotier-one/authtoken.secret` > /opt/key-networks/ztncui/.env"# 设置 3443端口
sudo sh -c "echo HTTPS_PORT=3443 >> /opt/key-networks/ztncui/.env"# 添加运行外部ip访问(不加这一行的话,就只允许本机访问)
sudo sh -c "echo HTTP_ALL_INTERFACES=yes >> /opt/key-networks/ztncui/.env"sudo sh -c "echo NODE_ENV=production >> /opt/key-networks/ztncui/.env"sudo chmod 400 /opt/key-networks/ztncui/.env# 配置服务自动启动
sudo systemctl enable ztncui# 重启服务
sudo systemctl restart ztncui

配置网络

访问3000端口进入管理页面
默认账号是: admin
密码是: password

在这里插入图片描述

创建一个网络

在这里插入图片描述

配置网段

在这里插入图片描述

在这里插入图片描述

将对应ID复制到本机的 zerotier 终端,加入即可

在这里插入图片描述

其它问题

Nov 22 21:31:42 VM-20-12-centos ztncui[26843]: Error: /lib64/libstdc++.so.6: version `GLIBCXX_3.4.20’ not found (required b

使用的系统是 Centos7,启动时出现了

Nov 22 21:31:42 VM-20-12-centos ztncui[26843]: Error: /lib64/libstdc++.so.6: version `GLIBCXX_3.4.20' not found (required b

在这里插入图片描述

解决方案
# 先检查本地库是否存在GLIBCXX_3.4.20
find / -name "libstdc++.so*"

在这里插入图片描述

# 使用以下命令查询是否有`GLIBCXX_3.4.20`
strings /usr/lib64/libstdc++.so.6 | grep GLIBCXX

在这里插入图片描述

如果本地存在,那就直接替换

# 将存在的版本拷贝到 /usr/lib64
cp libstdc++.so.6.0.26 /usr/lib64
cd  /usr/lib64# 查看 /usr/lib64下libstdc++.so.6链接的版本
ls -l | grep libstdc++# 删除原先的软连接(不放心可以备份)
rm libstdc++.so.6# 使用最新的库建立软连接
ln -s libstdc++.so.6.0.26 libstdc++.so.6# 查看新版本
strings /usr/lib64/libstdc++.so.6 | grep GLIBCXX

如果说本地都不存在GLIBCXX_3.4.20,那就需要下载一个

cd /usr/local/lib64/# 下载最新版本的`下载最新版本的libstdc.so_.6.0.26`
wget http://www.vuln.cn/wp-content/uploads/2019/08/libstdc.so_.6.0.26.zip# 解压
unzip libstdc.so_.6.0.26.zip# 将下载的最新版本拷贝到 /usr/lib64
cp libstdc++.so.6.0.26 /usr/lib64
cd  /usr/lib64# 查看 /usr/lib64下libstdc++.so.6链接的版本
ls -l | grep libstdc++# 删除原先的软连接(不放心可以备份)
rm libstdc++.so.6# 使用最新的库建立软连接
ln -s libstdc++.so.6.0.26 libstdc++.so.6# 查看新版本
strings /usr/lib64/libstdc++.so.6 | grep GLIBCXX

http://www.ppmy.cn/news/1251728.html

相关文章

第十三章 python之爬虫

Python基础、函数、模块、面向对象、网络和并发编程、数据库和缓存、 前端、django、Flask、tornado、api、git、爬虫、算法和数据结构、Linux、设计题、客观题、其他 第十三章 爬虫 1. 写出在网络爬取过程中, 遇到防爬问题的解决办法。 在网络爬取过程中,可能会遇…

Vue学习笔记-模块化+命名空间

目的 让代码更好维护,让多种数据分类更加明确(不同的模块挤在一个index.js中显得臃肿且不方便管理) 实现方式 修改store/index.js(也可以将不同模块分别写在不同的js文件中) const countAbout {//开启命名空间namespaced:true,actions:{..…

Mendix组件推荐:灵活的在线表格

- 视频 mendix在线表格.mp4 20.95MB - 客户需求 如果你是一个中小型企业的负责人,你可能面临着: 多人协作录入数据展示数据库中的数据对数据安全有要求、希望本地离线部署并且IT人员配置有限等挑战 为了更好地管理你的业务数据,你需要一个…

reversed函数(python)

在Python中,reversed()是一个内置函数,用于将序列(如字符串、列表、元组等)进行反转。它返回一个反向迭代器对象,可以使用list()函数将其转换为一个列表。 语法: reversed(sequence)参数: se…

拼图 游戏

运行出的游戏界面如下:按住A不松开,显示完整图片;松开A显示随机打乱的图片 User类 package domain;/*** ClassName: User* Author: Kox* Data: 2023/2/2* Sketch:*/ public class User {private String username;private String password;p…

Vue 重写push和replace方法,解决:Avoided redundant navigation to current location

当我们使用编程式路由导航跳转路径时,如果我们两次携带同样的参数进行跳转,会进行页面报错: 那产生这个问题的原因是什么呢? 我们接收并输出调用push方法返回的结果: 会发现这是一个Promise对象 我们都知道&#xff…

python pytorch实现RNN,LSTM,GRU,文本情感分类

python pytorch实现RNN,LSTM,GRU,文本情感分类 数据集格式: 有需要的可以联系我 实现步骤就是: 1.先对句子进行分词并构建词表 2.生成word2id 3.构建模型 4.训练模型 5.测试模型 代码如下: import pandas as pd im…

封装一些可能会用到的JS的Dom操作方法(非JS自带的方法)

1. 父元素节点下的子元素节点逆序 HTMLElement.prototype.childRevers function () {var all_num this.childElementCount;if (all_num) {while(all_num--){this.appendChild(this.children[all_num]);}} } // 获取 ul 父节点对象 var oul document.getElementsByTagName(u…