# Easytier 完全自建指南:从零搭建你的私人“全球局域网”
你是否曾想过,无论身在何处,都能像在家里一样,安全、快速地访问你的 NAS、远程桌面、或家庭网络里的任何设备?Easytier,一个使用 Rust 语言编写的、简单高效的 P2P VPN 组网工具,就能帮你实现这个愿望。
本教程将手把手带你完成从零开始搭建 Easytier **,并将 Windows 电脑、NAS (或其他 Linux 服务器)、OpenWrt 软路由、甚至安卓手机全部连接进来,组建一个属于你自己的、不受任何第三方限制的“全球局域网”。
本教程的核心模式:手动配置文件模式 (Peer to Peer)。
这种模式下,所有配置由我们自己掌握,不依赖任何第三方 Web 服务,稳定、可靠且隐私性最高。
## 目录
1. 准备工作:你需要什么?
1. 第一部分:核心服务器搭建 (在云服务器上)
1. 第二部分:Windows 客户端连接
1. 第三部分:NAS / Linux 服务器客户端连接
1. 第四部分:OpenWrt 软路由客户端连接 (打通全家网络)
1. 第五部分:安卓 (Android) 客户端连接
1. 常见问题与优化 (FAQ)
准备工作:你需要什么?
- 一台拥有公网 IP 的云服务器 (VPS): 这是我们网络的心脏和中转站。最低配置(1核1G内存)即可。本教程以 Debian/Ubuntu 系统为例。
- 需要组网的设备:
- 一台 Windows 电脑
- 一台 NAS 或其他 Linux 设备 (如 PVE 虚拟机、飞牛OS 等)
- 一台 OpenWrt 软路由
- 一部安卓手机
- 基础的命令行操作能力: 我们会用到 SSH 和一些简单的 Linux 命令。
- 耐心和细心: 跟着步骤一步步来,注意细节,你一定能成功!
- 可以关注我的个人网站,学习更多知识。
第一部分:核心服务器搭建 (在云服务器上)
服务器不仅负责帮助各个节点“互相认识”(P2P 打洞),也是在 P2P 失败时的最终中转站 (Relay)。
1. 登录服务器并下载 Easytier
通过 SSH 登录你的云服务器。
# 更新软件源并安装必要工具
sudo apt-get update
sudo apt-get install -y wget unzip
# 进入临时目录
cd /tmp
# 从 GitHub 下载最新的 Easytier ZIP 包 (请到官网确认最新版本,替换v2.4.1)
wget https://github.com/EasyTier/EasyTier/releases/download/v2.4.1/easytier-linux-x86_64-v2.4.1.zip
# 解压
unzip easytier-linux-x86_64-v2.4.1.zip
# 进入解压后的目录
cd easytier-linux-x86_64
# 复制文件
sudo cp easytier-core /usr/local/bin/
sudo cp easytier-cli /usr/local/bin/
# 赋予执行权限
sudo chmod +x /usr/local/bin/easytier-core
sudo chmod +x /usr/local/bin/easytier-cli```
### **3. 创建服务器配置文件**
这是最关键的一步,我们将定义我们的私有网络。
```bash
# 创建配置目录
sudo mkdir -p /etc/et
# 使用编辑器创建配置文件
sudo nano /etc/et/config.toml
将以下完整内容复制粘贴到编辑器中:
部分一:Easytier 服务器配置 (config.toml)
# =======================================================
# Easytier Server Configuration (config.toml)
# =======================================================
# 实例名,方便识别
instance_name = "MyCloudServer"
# 服务器的虚拟IP地址,通常设为网络的第一个地址
ipv4 = "10.0.0.1"
# dhcp 服务端,为客户端分配IP地址
dhcp = true
# ⚠️【重点】服务器必须监听端口,才能被客户端找到!
# 如果端口10010已被占用,你可以换成其他任意未被使用的端口
listeners = [
"tcp://0.0.0.0:10010",
"udp://0.0.0.0:10010"
]
# --- 网络身份认证 ---
# 这是你整个网络的“钥匙”,所有设备必须一致!
[network_identity]
# ⚠️【重点】请将 "your_network_name" 替换为您自己的网络名称,例如 "my_vpn_network"
network_name = "your_network_name"
# ⚠️【重点】请将 "YourStrongPassword" 替换为您自己的复杂强密码!
# 这是网络安全的关键,请务必设置得足够复杂!
network_secret = "YourStrongPassword"
# --- 其他配置,保持默认即可 ---
[flags]
latency_first = true
保存并退出 (Ctrl+X, Y, Enter)。
部分二:防火墙设置与服务启动
4. 设置防火墙
这是最常见的失败点! 必须确保云服务器的防火墙放行了我们配置的监听端口。
5. 创建并启动服务
为了让 Easytier 在后台稳定运行并开机自启,我们为它创建一个 systemd 服务。
# 创建服务文件
sudo nano /etc/systemd/system/easytier.service
粘贴以下内容:
[Unit]
Description=Easytier Service
After=network-online.target
Wants=network-online.target
[Service]
Type=simple
User=root
ExecStart=/usr/local/bin/easytier-core -c /etc/et/config.toml
Restart=on-failure
RestartSec=5s
[Install]
WantedBy=multi-user.target
启动服务:
# 重载、启动、并设置开机自启
sudo systemctl daemon-reload
sudo systemctl start easytier
sudo systemctl enable easytier
# 检查服务状态
sudo systemctl status easytier
看到绿色的 active (running) 就代表你的核心服务器已经成功运行了!
第二部分:Windows 客户端连接
-
下载并安装:
-
配置连接:
- 打开 Easytier GUI 程序。
- 点击 “+ 添加新网络”。
- 网络方式: 选择 手动。
- 网络名称: ⚠️【重点】 填写您在服务器上设置的 network_name,例如 "your_network_name"。
- 网络密码: ⚠️【重点】 填写您在服务器上设置的 network_secret,例如 "YourStrongPassword"。
- 服务器/对等节点: 在文本框中输入你服务器的地址,然后点击下拉框中的条目来添加:
tcp://你的公网服务器IP:10010 (请替换为你的实际IP和端口)
- 虚拟IPv4地址: 保持默认勾选 DHCP。
- 点击 “运行网络”。
-
验证:
切换到 “运行中” 标签页,你应该能看到节点列表,并且与服务器的连接状态为 p2p。


第三部分:NAS / Linux 服务器客户端连接
这个过程和搭建服务器非常相似,只是配置文件不同。适用于任何基于 Debian/Ubuntu 的系统,如 NAS、PVE 虚拟机、飞牛OS 等。
-
安装程序:
- 参考 第一部分 的 1、2 步,完成 easytier-core 和 easytier-cli 的下载、解压和安装。
-
创建客户端配置文件:
sudo nano /etc/et/config.toml
粘贴以下客户端专用的配置:
# Easytier Linux Client Configuration
# 为这台设备起一个容易识别的名字
instance_name = "MyNAS" # 例如:MyNAS, PVE-VM1, FlyOS-Office
# ⚠️【重点】为每个客户端生成一个独一无二的ID,避免冲突。
# 可以使用 'uuidgen' 命令生成一个,例如:instance_id = "a1b2c3d4-e5f6-7890-1234-fedcba987654"
instance_id = "" # 请在这里填写生成的UUID
# 客户端使用DHCP自动获取虚拟IP
dhcp = true
# ⚠️【重点】客户端可以不监听端口,以应对严格的防火墙。
# 但如果想获得最佳的P2P效果,可以取消注释并做端口转发(推荐)
# listeners = ["udp://0.0.0.0:23010"] # 端口号请自行选择一个未被占用的
listeners = []
# --- 网络身份认证 ---
[network_identity]
network_name = "your_network_name" # ⚠️【重点】必须和服务器完全一致!
network_secret = "YourStrongPassword" # ⚠️【重点】必须和服务器完全一致!
# --- 服务器节点 ---
[[peer]]
uri = "tcp://你的公网服务器IP:10010" # ⚠️【重点】必须和服务器完全一致!
-
创建并启动服务:
- 参考 第一部分 的第 5 步,创建完全相同的 easytier.service 文件,然后启动并设置开机自启。
-
验证:
- 在客户端执行 ip a,应该能看到一个 et0 网卡和 10.0.0.x 的IP。
- 执行 ping 10.0.0.1 应该能通。
- 在你的 Windows 客户端上,应该能看到这个新设备上线。
第四部分:OpenWrt 软路由客户端连接
将 OpenWrt 接入,可以让你整个局域网的设备都无缝访问虚拟网络。
- 确认架构并下载 IPK:
- SSH 登录 OpenWrt,执行 opkg print-architecture 查看你的设备架构(如 aarch64_cortex-a53)。
- 去 Easytier 的 GitHub Releases 页面 下载架构匹配的 easytier_....ipk (核心程序) 和通用的 luci-app-easytier_....ipk (LuCI 插件)。
- 安装:
- 将两个 .ipk 文件上传到 OpenWrt 的 /tmp 目录。
- 执行 opkg install /tmp/*.ipk 进行安装。
- 通过 LuCI 界面配置:
- 登录 OpenWrt 网页后台,进入 “服务” -> “Easytier”。
- 启用: 勾选。
- 启动方式: 选择 配置文件。
- 配置文件文本框: 将 第三部分 中我们为 Linux 客户端准备的 toml 配置内容,完整地复制粘贴到这个文本框里。
- 点击 “保存并应用”。
- 配置防火墙 (可选但推荐):
- 为了让你局域网的电脑能访问虚拟网络,需要设置防火墙。
- 网络 -> 接口 -> 添加新接口...: 名称 EASYTIER, 协议 不配置, 设备 et0。
- 网络 -> 防火墙 -> 添加: 名称 easytier_fw, 覆盖网络 EASYTIER, 允许转发到 lan, 允许从 lan 转发。
- 保存并应用。

第五部分:安卓 (Android) 客户端连接
Easytier 目前没有官方的 Google Play 版本,你需要从 GitHub 下载 apk 文件手动安装。
- 下载并安装:
- 访问 Easytier 的 GitHub Releases 页面。
- 找到 easytier-gui-....apk 文件并下载到你的手机上进行安装。
- ⚠️【重点】 安卓系统可能会警告此应用来源未知,你需要允许安装。
- 配置:
- 安卓版的配置界面和 Windows GUI 完全一样。
- 参考 第二部分 的第 2 步 进行配置即可。
- 网络方式: 手动
- 网络名称: ⚠️【重点】 填写您在服务器上设置的 network_name,例如 "your_network_name"。
- 网络密码: ⚠️【重点】 填写您在服务器上设置的 network_secret,例如 "YourStrongPassword"。
- 服务器地址: tcp://你的公网服务器IP:10010 (请替换为你的实际IP和端口)
- 点击 “运行网络”。
- 授予权限:
- 安卓系统会弹出请求建立 VPN 连接的权限,请选择 “允许”。
- 为了保证后台稳定连接,建议在应用的电池优化设置中,将其设置为 “无限制” 或 “允许后台运行”。
常见问题与优化 (FAQ)
- Q: 为什么我的设备连接状态是relay (中继) 而不是p2p?
- A: 这是最常见的问题,意味着 P2P 打洞失败。主要原因是客户端所在的网络 NAT 类型过于严格(如对称型 NAT)或防火墙阻止了 UDP 通信。
- 解决方案:
- 开启路由器 UPnP: 登录你客户端所在网络的路由器,开启 UPnP 功能。
- 手动端口转发: 在客户端配置文件中设置一个固定的监听端口 listeners = ["udp://0.0.0.0:端口号"] (请自行选择未被占用的端口),然后在路由器上为该设备的局域网 IP 做一个 UDP 端口转发。
- Q: 速度很慢怎么办?
- A: 首先确保连接是 p2p。如果是 p2p 还慢,瓶颈在于你物理网络的上行带宽。虚拟网络的速度不可能超过文件发送方的上传速度。
- Q: 如何确认我的配置是否正确?
- A: 在任何 Linux 客户端上,手动执行 _usr/local/bin/easytier-core -c /etc/et/config.toml_,如果程序没有立刻报错退出,而是开始打印日志,说明配置文件格式和内容是正确的。
- Q: 我可以不用公网服务器吗?
- A: 理论上可以,但你需要有一个节点拥有公网 IP 或能通过端口转发被公网访问,并作为所有其他节点的 peer。云服务器是最稳定、最简单的方案。
至此,你已经拥有了一个完全由自己掌控的、跨越地理限制的私有网络。现在,开始享受随时随地访问你所有设备的自由吧!