Easytier异地组网是一个简单、安全、去中心化的异地组网方案,每一个实例都可以是一个节点或者是一个客户端,同时也可以协助非网内设备完成组网工作,在某些情况下将可打通nat4-nat4
官网:
特点
去中心化:无需依赖中心化服务,节点平等且独立。
安全:支持利用 WireGuard 加密通信,也支持 AES-GCM 加密保护中转流量。
高性能:全链路零拷贝,性能与主流组网软件相当。
跨平台:支持 MacOS/Linux/Windows/FreeBSD/Android,未来将支持 IOS。可执行文件静态链接,部署简单。
无公网 IP 组网:支持利用共享的公网节点组网,可参考 配置指南
NAT 穿透:支持基于 UDP 的 NAT 穿透,即使在复杂的网络环境下也能建立稳定的连接。
子网代理(点对网):节点可以将可访问的网段作为代理暴露给虚拟网,允许其他节点通过该节点访问这些子网。
智能路由:根据流量智能选择链路,减少延迟,提高吞吐量。
TCP 支持:在 UDP 受限的情况下,通过并发 TCP 链接提供可靠的数据传输,优化性能。
高可用性:支持多路径和在检测到高丢包率或网络错误时切换到健康路径。
IPV6 支持:支持利用 IPV6 组网。
比较建议直接二进制文件部署,并不怎么建议使用docker部署,即使映射了网卡,或多或少有性能损耗。
因为其是去中心化的,不启动监听时,可为客户端,启用了监听,既可以是客户端,也可以是服务端。并且,多个服务端如果组成了个虚拟网,并且开启了辅助打洞功能,其他设备可以连接任意一台服务端,也可以通过其组成一个内网;服务端如果开启了转发,将在打洞失败时,转发虚拟网流量。
通过守护进程
前往githubRelease界面获取二进制文件,也可以在官网下载界面获取。
命令行程序的压缩包中包含四个可执行程序:
easytier-core:EasyTier 的核心程序easytier-cli:EasyTier 管理程序,启动 easytier-core 后,可以使用 easytier-cli 查看虚拟网信息easytier-web: 用于自建 EasyTier 的 Web 控制台后端,一般情况下无需自建,使用官方提供的 Web 控制台即可easytier-web-embed: 用于自建 EasyTier 的 Web 控制台后端,自带web界面,避免还需要单独放置web界面文件

守护进程可以使用linux通用的,也可以使用各种面板提供的(1panel和宝塔都有提供),主要的就是设置好运行目录、运行用户以及运行指令,这里不多做赘述。
运行目录就是easytier-core所在目录。
一键安装脚本(linux)
wget -O /tmp/easytier.sh "https://raw.githubusercontent.com/EasyTier/EasyTier/main/script/install.sh" && bash /tmp/easytier.sh install本方法使用了基于systemd系统服务运行,通过读取在/opt/easytier文件夹下对应easytier实例配置文件实现。配置文件可以通过官网的配置文件生成器生成。或者修改服务配置文件传递指令运行,注意,如果读取了配置文件,则其他指令都将被忽略。
Docker Compose
services:
watchtower: # 用于自动更新easytier镜像,若不需要请删除这部分
image: containrrr/watchtower
container_name: watchtower
restart: unless-stopped
environment:
- TZ=Asia/Shanghai
- WATCHTOWER_NO_STARTUP_MESSAGE
volumes:
- /var/run/docker.sock:/var/run/docker.sock
command: --interval 3600 --cleanup --label-enable
easytier:
image: easytier/easytier:latest # 国内用户可以使用 m.daocloud.io/docker.io/easytier/easytier:latest
hostname: easytier
container_name: easytier
labels:
com.centurylinklabs.watchtower.enable: 'true'
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 # 映射宿主机机器码
command: -i <ip> --network-name <用户> --network-secret <密码> -p tcp://<服务器地址>:11010 #这一块可自定义传递指令详细的指令配置
详细的指令可以通过--help 获取,也可前往官网查看
可视化界面
可视化界面目前共有四个
官方的easytier-gui
可在官网下载界面或者GithubRelease界面获取。对应的文件前缀为easytier-gui
Easytier管理器
下载:Github Releases: https://github.com/xlc520/easytier-manager/releases
各个包说明
exe:安装程序,安装后才可使用zip:免安装,解压即可使用easytier-manager-win_2.0.0.exe:64、32位 Windows 系统通用安装包easytier-manager-win-x64_2.0.0.exe:64位 Windows 系统安装包easytier-manager-win-ia32_2.0.0.exe:32位 Windows 系统安装包easytier-manager-win7-x64_2.0.0.exe: 64位 Windows 7 系统安装包tar.gzdebrpmAppImage:Linux系统上使用(尚未测试)
Easytier游戏联机启动器
Github Releases: https://github.com/EasyTier/EasytierGame/releases
只有绿色zip包,个人不喜欢安装包各种写注册表,解压即用就行,目录清爽干净。
AstralET 游戏联机工具
这个现在是我主力使用的GUI界面,足够简单的配置,但因是偏向于游戏,配置不如官方GUI详细,但也足够使用。
内置 EasyTier:将 EasyTier 直接编译到 AstralET 中,无需额外安装,也不会保留任何后台进程。
即开即用:联机时启动应用,结束后关闭即可,操作简单便捷。
活跃维护:作者积极更新,随时修复问题并优化功能(上班摸鱼成果)。
评论