搭建EasyTier中继服务器并进行组网

有公网 ip 的服务器上通过官网文档安装好 EasyTier(或者下载好文件)后,修改对应的配置文件:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
# /usr/local/share/easytier/default.conf

instance_name = "kerolt"
# 主机名,用于标识此设备的主机名
hostname = "server"
ipv4 = "10.112.112.1/24"
# 由 Easytier 自动确定并设置IP地址,默认从10.0.0.1开始。警告:在使用 DHCP 时,如果网络中出现 IP 冲突,IP 将自动更改(只做服务器写false)
dhcp = false
listeners = [
	"tcp://0.0.0.0:11010",
	"udp://0.0.0.0:11010",
	"wg://0.0.0.0:11011",
	"ws://0.0.0.0:11011/",
	"wss://0.0.0.0:11012/",
]

exit_nodes = [
]

#[network_identity]
# 网络名称,用于标识 VPN 网络(只做服务器不用填)
#network_name = ""
# 网络密钥,用于验证此节点属于 VPN 网络(只做服务器不用填)
#network_secret = ""

[flags]
relay_network_whitelist = "kerolt" # 之后我其他主机上的 easytier 网络名称都是使用 kerolt,如果需要所有网络都可以通过该服务器进行中继转发,可以将值设置为 "*"

同时,你需要在服务器防火墙中放行 110101101111012 端口

然后通过 systemd 让 easytier 开机自启,编辑 /etc/systemd/system/easytier.service 文件:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
[Unit]
Description=EasyTier Service
After=network.target

[Service]
Type=simple
# 主要是下面这行,取决于你的 easytier-core 和对应配置文件的位置
ExecStart=/usr/local/bin/easytier-core -c /usr/local/share/easytier/default.conf 
Restart=on-failure
RestartSec=5
User=root

[Install]
WantedBy=multi-user.target

执行如下命令,专属于你自己的 easytier 服务器就启动好了:

1
2
3
sudo systemctl daemon-reload
sudo systemctl enable easytier
sudo systemctl restart easytier

之后,在需要进行组网的主机 A上启动 easytier,编辑对应的配置文件

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
instance_name = "kerolt"
ipv4 = "10.112.112.2/24"
dhcp = false
listeners = [
    "tcp://0.0.0.0:11010",
    "udp://0.0.0.0:11010",
    "wg://0.0.0.0:11011",
]

[network_identity]
network_name = "kerolt" # 之前服务器上只配置了 kerolt 这个网络的白名单
network_secret = "xxxx"

[[peer]]
uri = "tcp://your-server-ip:11010"

easytier 就会默认给你这个主机 A分配一个虚拟局域网 ip 为 10.112.112.2/24;同样的,对于另一台主机 B,使用同样的配置文件,只需要修改 ipv4 = "10.112.112.3/24"dhcp = false,或者直接使用 dhcp = true 让 easytier 自动进行 DHCP 分配 ip。

到这里,主机 A(10.112.112.2/24)和主机 B(10.112.112.3/23)已经处于同一虚拟局域网内,即主机 A 和主机 B 已经可以通过虚拟网通信了。

使用 Hugo 构建
主题 StackJimmy 设计