EasyTier - 简单、安全、去中心化的组网方案

Tip

自建服务器最好采用隐私模式


  • EasyTier 是一款简单、安全、去中心化的内网穿透和异地组网工具,适合远程办公、异地访问、游戏加速等多种场景。无需公网 IP,无需复杂配置,轻松实现不同地点设备间的安全互联。 软件即可通过命令行使用,也可以通过图形界面操作。下载后可直接使用,无其他任何依赖。

  • 官网:https://easytier.cn/

  • Github:https://github.com/EasyTier/Easytier

服务端安装 (命令行程序)

通过 Docker Compose 安装

  • docker-compose.yaml
    services:
      easytier:
        image: easytier/easytier:latest # 国内用户可以使用 m.daocloud.io/docker.io/easytier/easytier:latest
        hostname: easytier
        container_name: easytier
        restart: unless-stopped
        network_mode: host
        cap_add:
          - NET_ADMIN
          - NET_RAW
        environment:
          - TZ=Asia/Shanghai
        devices:
          - /dev/net/tun:/dev/net/tun
        volumes:
          - /etc/easytier:/root
          - /etc/machine-id:/etc/machine-id:ro # 映射宿主机机器码
          - /etc/easytier/config.conf:/etc/easytier.conf:ro # 映射启动配置,提前写好
       command: -c /etc/easytier.conf #以写好的配置启动

配置见2. 一键安装脚本处配置。

一键安装脚本(仅 Linux)

注意:一键脚本依赖 unzip,请提前下载并安装。

wget -O /tmp/easytier.sh "https://raw.githubusercontent.com/EasyTier/EasyTier/main/script/install.sh" && sudo bash /tmp/easytier.sh install --gh-proxy https://ghfast.top/

脚本执行成功后,EasyTier 的二进程程序会安装到 /opt/easytier 目录下,配置文件位于 /opt/easytier/config/default.conf。 进入/opt/easytier/config 修改配置文件。

  • default.conf

    instance_name = "名称"
    instance_id = "e1f58469-5e32-4447-9464-374c568bbabc" #实例的uuid
    ipv4 = "11.11.11.0/24"   ##网段,自己设置,例如192.168.1.0/24
    dhcp = false
    listeners = [
        "tcp://0.0.0.0:11010",
        "udp://0.0.0.0:11010",
        "wg://0.0.0.0:11011",
    ]
    rpc_portal = "0.0.0.0:0"
    
    [network_identity]
    network_name = "房间名"
    network_secret = "房间密码"
    
    [[proxy_network]]
    cidr = "11.11.10.0/24"
    
    [flags]
    private_mode = true
    
  • 各项参数意义如下:

  • instance_name:实例名称,尽量复杂点,避免和其他人冲突。

  • instance_id :实例的 uuid,搜索 UUID 生成器生成即可。

  • ipv4 :当前设备的虚拟局域网 IPv4 地址,如果你需要手动为设备指定虚拟局域网的 IPv4 地址,则需要此项,否则可删除。

  • dhcp : 如果你需要手动为当前设备指定虚拟局域网 IPv4 地址,并已经包含了 ipv4 的参数项,则此项填写为 false,如果你希望自动为当前设备分配虚拟局域网 IPv4 地址,则填写 true。

  • listeners : 一般情况下无需改动。如果你希望使用不同的端口,则自行修改端口并对端口进行防火墙放行。

  • rpc_portal : 默认端口为 0,在官方文档中表示默认会尝试使用 15888,但实际并没有使用,EasyTier 启动后无法通过 easytier-cli 进行数据获取,报错信息如下所示。所以建议修改监听端口为 15888。

  • network_name:虚拟局域网的名称。EasyTier 是通过 network_name 和 network_secret 进行网络的识别与连接确认,所以需要客户端的 network_name 和 network_secret 完全一致。建议使用复杂一些的网络名称。

  • network_secret :虚拟局域网的网络密钥。

  • uri :节点地址,可使用官方提供的节点(tcp://public.easytier.cn:11010),如果你自建了 VPS 节点,也可填写 tcp://IP:PORT ,默认端口为 11010。也可以查看 EasyTier 公共服务器列表,选择最适合自己网络环境的公共服务器节点。

  • enable_kcp_proxy :是否开启 KCP 代理,将 TCP 流量转换为 KCP 流量,提升传输速度与降低延迟。建议开启。

  • latency_first : 延迟优先,建议开启。

  • enable_exit_node:是否设置当前节点为出口节点。目前建议关闭,由于 EasyTier 无法进行 DNS 劫持,所以暂时无法像 Tailscale 或者 Zerotier 使用出口节点进行翻墙等科学上网操作。

  • dev_name :设置 tun 网卡名称,如果你的设备具有多个程序在使用 tun 设备,那么建议修改一下名称,避免产生冲突。

  • proxy_forward_by_system : 使用系统转发替代 EasyTier 内置转发。相对来说性能会有所提高,但是你需要对防火墙有一定的了解,或者你的节点部署在局域网环境内,没有开启防火墙。

  • bind_device : 没有在配置项中列出的部分。即是否绑定物理设备,如果你的机器使用了很多的虚拟网络设备,建议删除该项,使其绑定物理网卡,避免产生无法连接问题。

  • use_smoltcp : 是否使用用户态协议栈,避免操作系统防火墙导致的无法子网代理 / KCP 代理。个人目前是删除了该项,因为暂时没有发现因防火墙导致的无法子网代理问题,同时在开启用户态时,性能损耗较为严重。

  • relay_all_peer_rpc : 转发所有对等节点的 RPC 数据包,帮助非当前虚拟局域网的其他节点建立连接。为了安全以及流量考虑,建议关闭或删除。

  • enable_encryption : 是否禁用加密。false 为禁用加密,true 为启用加密,默认为 false。启用加密会增加 CPU 占用。

EasyTier 默认监听端口为 11010 ,如果你使用系统防火墙,需要对端口进行放行。同时如果部署在家庭网络内,需要在路由器的防火墙对 11010 端口也需要进行放行操作(Forward)。

EasyTier 会被注册为系统服务,可以通过以下命令管理:

  • easytier@.service

    [Unit]
    Description=EasyTier Service
    Wants=network.target
    After=network.target network.service
    StartLimitIntervalSec=0
    
    [Service]
    Type=simple
    WorkingDirectory=/opt/easytier
    ExecStart=/opt/easytier/easytier-core -c /opt/easytier/config/%i.conf #配置文件位置
    Restart=always
    RestartSec=1s
    
    [Install]
    WantedBy=multi-user.target
  systemctl start easytier@default

以下是与 systemctl start easytier@default 配套的其他常用命令:

基本操作命令

功能命令
启动服务sudo systemctl start easytier@default
停止服务sudo systemctl stop easytier@default
重启服务sudo systemctl restart easytier@default
查看状态systemctl status easytier@default
重新加载配置sudo systemctl reload easytier@default(需服务支持)

开机自启管理

功能命令
设置开机自启sudo systemctl enable easytier@default
取消开机自启sudo systemctl disable easytier@default
检查是否开机自启systemctl is-enabled easytier@default

修改配置后重载

如果你修改了服务的配置文件,需要让 systemd 重新读取:

sudo systemctl daemon-reload

NAS端安装

通过 Docker Compose 安装

  • docker-compose.yaml

    services:
      easytier:
        image: easytier/easytier:latest # 国内用户可以使用 m.daocloud.io/docker.io/easytier/easytier:latest
        hostname: easytier
        container_name: easytier
        restart: unless-stopped
        network_mode: host
        cap_add:
          - NET_ADMIN
          - NET_RAW
        environment:
          - TZ=Asia/Shanghai
        devices:
          - /dev/net/tun:/dev/net/tun
        volumes:
          - /share/CACHEDEV2_DATA/Container/easytier:/root
          - /share/CACHEDEV2_DATA/Container/easytier/machine-id:/etc/machine-id:ro # 映射宿主机机器码
          - /share/CACHEDEV2_DATA/Container/easytier/config.conf:/etc/easytier.conf:ro # 映射启动配置,提前写好
       command: -c /etc/easytier.conf #以写好的配置启动
  • 注意:事先在映射文件夹中写好配置

电脑端安装

EasyTier 游戏联机启动器

简介

EasyTierGame 游戏联机启动器,由nuxt3 typescript rust tauri 开发 具有简易的界面,附带最新版 easytier 内核,联机游玩的时候无论是心理上和使用上都能给予您最舒服的体验,同时支持自定义配置文件启动,满足各种需求

下载

Github Releases: https://github.com/EasyTier/EasytierGame/releases

  • 只有绿色zip包,个人不喜欢安装包各种写注册表,解压即用就行,目录清爽干净

game-step1

使用教程

  • 第一次使用,输入一个“主机名”点击启动联机即可,后续可以自建服务器或者使用爱心群友提供的服务器 game-step2

game-step3

  • 高级选项里有一些特殊配置,可以自行选择 game-step4
  • 如果还是无法满足您的需求,可以使用配置文件进行启动,具体如何配置,可以查看文档配置文件
  • game-step5
  • easytier内核升级后,可以点击更新插件按钮就可以进行更新,但是需要出国,如果无法更新,可以在群里获取
  • game-step6

特性

  • 基于easytier组网工具开发,界面清晰简单
  • 自带“更新”按钮,在easytier组网工具发布新版本时,点击更新即可(需要出国工具)
  • 第一次使用,输入一个“主机名”点击启动联机即可,后续可以自建服务器或者使用群友的服务器
  • 配置简单,也含有高级功能,同时也支持自定义配置文件启动
  • 默认开启 WinIPBroadcast 不再怕联机找不到房间(例如:无主之地3)
  • 已经测试 艾尔登法环学习版无主之地3深岩银河怪物猎人世界 等都可稳定联机游玩

AstralGame 游戏联机工具

预览

manage-step1manage-step1manage-step1manage-step1manage-step1

使用教程



⚙️ 基础设置

完成安装后,让我们进行一些基础设置,确保 Astral 能够正常工作。

🔥 重要:关闭防火墙

Section titled “🔥 重要:关闭防火墙”

Windows 防火墙设置

Section titled “Windows 防火墙设置”

  1. 打开 Astral 软件
  2. 点击下图红色方框中的按钮,临时关闭防火墙

关闭防火墙

为什么需要关闭防火墙?

Section titled “为什么需要关闭防火墙?”

  • 🚫 阻止连接:防火墙会拦截 P2P 网络的连接请求
  • 🔒 端口限制:限制应用使用必要的网络端口
  • 影响性能:可能导致网络延迟增加
🏷️ 设置用户名称

Section titled “🏷️ 设置用户名称”

启动 Astral 应用后:

  1. 在主界面找到用户信息区域

  2. 输入一个唯一的用户名

  3. 确保名称符合以下要求:

    • ✅ 与其他用户不重复
    • ✅ 能区分出房主和房员

用户名设置

📡 选择服务器

Section titled “📡 选择服务器”

Step 1: 点击左侧菜单的**“服务器”选项 Step 2: 点击右下角的地球图标**🌍

服务器选择

Step 3: 选择列表中最上方的三个服务器Step 4: 点击**“启用”**按钮

服务器启用

Step 5: 点击“启用”按钮右边的**“编辑服务器”**,确保勾选 TCPUDP 协议

服务器调整

如何选择服务器?

Section titled “如何选择服务器?”

  • 🏃‍♂️ 延迟优先:选择延迟最低的服务器
  • 🌍 地理位置:选择离您最近的服务器
🔧 网络优化设置

Section titled “🔧 网络优化设置”

  1. 进入**“设置”**页面
  2. 找到**“网络设置”**
  3. 开启**“延迟优先”**选项

网络设置

这个设置可以:

  • ⚡ 优化网络路由
  • 📈 减少连接延迟
  • 🎯 提升游戏体验
✅ 验证设置

Section titled “✅ 验证设置”

完成以上设置后,检查:

  • 防火墙已关闭
  • 用户名已设置且能区分房主和房员
  • 服务器已选择并启用
  • TCP/UDP 协议已启用
  • 延迟优先已开启
🎯 下一步

Section titled “🎯 下一步”

基础设置完成后,您可以:

  1. 创建房间 - 建立您的第一个虚拟网络
  2. 加入房间 - 连接到朋友的网络

特性

  • 内置 EasyTier:将 EasyTier 直接编译到 AstralGame 中,无需额外安装,也不会保留任何后台进程。
  • 即开即用:联机时启动应用,结束后关闭即可,操作简单便捷。
  • 活跃维护:作者积极更新,随时修复问题并优化功能(上班摸鱼成果)。

联系我们 & 功能建议

手机端安装

AstralGame

EasyTier 支持 Windows,Linux,macOS,Android。

推荐使用AstralGame,具体教程见电脑端AstralGame

其他客户端

其他客户端可以到 这里 下载。