Easytier组网: 服务端 + 客户端配置

Easytier组网: 服务端 + 客户端配置

EasyTier 本身是去中心化 P2P 组网,没有严格意义上的服务端 / 客户端架构;日常说的「服务端」= 有公网 IP、对外监听的中继引导节点;「客户端」= 内网无公网、只主动连别人、不对外开放端口的终端节点。主要差异在 listeners[[peer]]DHCP端口放行四大块。

本文中服务端代指公网节点客户端代指内网节点,这都不重要,个人习惯。

服务端

使用公共节点可以跳过服务端搭建,节点信息自行查找,我没有用过。

下载

首先,要有一台有公网IP的计算机作为服务端。这里以手动下载命令行程序、创建systemd服务的方式搭建服务节点。

GitHub发布页面下载最新版本的easytier-linux-arch-version.zip,如 easytier-linux-x86_64-v2.6.4.zip,上传至服务器或者直接在服务器使用wget下载。然后按照下边的步骤操作:

这里都是使用root用户操作的,如果不是,记得加sudo。

安装

# 1. 进入easytier压缩包所在目录
cd /root
# 2. 创建easytier目录
mkdir /usr/local/easytier
# 3. 查看压缩包结构,最外层是否有目录
unzip -l easytier-linux-x86_64-v2.6.4.zip 
# 4.1 如果输出结果最外层有easytier-linux-x86_64
unzip unzip -j easytier-linux-x86_64-v2.6.4.zip -d /usr/local/easytier
# 4.2 如果没有外层目录,直接解压
unzip easytier-linux-x86_64-v2.6.4.zip -d /usr/local/easytier
# 5. 添加执行权限
chmod +x /usr/local/easytier/easytier-*
# 6. 创建链接,添加到环境变量(可跳过)
ln -s /usr/local/easytier/easytier-core /usr/local/sbin/easytier-core

创建配置文件

创建easytier配置文件目录和文件:

mkdir /etc/easytier

编辑配置文件(不存在会自动创建):

vim /etc/easytier/config.toml

在文件中写入以下内容

instance_name = "easytier"
instance_id = "eb391670-6258-48b8-b80d-538bb5ac28b6"
ipv4 = "10.0.0.1"
dhcp = false
listeners = [
    "tcp://0.0.0.0:11010",
    "udp://0.0.0.0:11010",
]
exit_nodes = []
peer = []
rpc_portal = "0.0.0.0:15889"

[network_identity]
network_name = "your_network_name"
network_secret = "you_network_secret"

编辑完成后保存退出。

配置说明

instance_name: 实例别名;

instance_id: 实例ID,可以使用 uuidgen命令生成;

ipv4: ipv4地址,配合dhcp = false使用;

dhcp: 是否使用dhcp,为true时不用填写ipv4地址,会自动获取;

listeners: 监听端口,0.0.0.0表示监听所有IP;

network_name: 组网名称,所有组网设备保持一致;

network_secret: 密钥,同上。

创建systemd服务

vim /etc/systemd/system/easytier.service 

在文件中写入以下内容:

[Unit]
Description=EasyTier SD-WAN Mesh Network
After=network.target
Wants=network-online.target

[Service]
Type=simple
User=root
# 使用 -c 指定外部配置文件
ExecStart=/usr/local/sbin/easytier-core -c /etc/easytier/config.toml
Restart=on-failure
RestartSec=5
StandardOutput=journal+console
StandardError=journal+console

[Install]
WantedBy=multi-user.target

设置开机自启

systemctl enable --now easytier

客户端

Windows

GitHub发布页面下载最新版本的Windows安装包并安装,如 easytier-gui_2.6.4_x64-setup.exe

安装后创建新网络:

image-1783675857514.png

初始节点的ip和端口和服务端一致,运行网络即可。

Linux

同服务端,仅配置文件有些不同。

config.toml

instance_name = "node1"
instance_id = "48a91933-0bb4-40b7-8e30-69a9f08d6989"
ipv4 = "10.0.0.20"
dhcp = false
listeners = [
    "tcp://0.0.0.0:11010",
    "udp://0.0.0.0:11010",
]
exit_nodes = []
[[peer]]
uri = "tcp://服务端IP:11010"

[[peer]]
uri = "udp://服务端IP:11010"

rpc_portal = "0.0.0.0:15889"

[network_identity]
network_name = "your_network_name"
network_secret = "you_network_secret"