# 前言
EasyTier 是一个开源的虚拟局域网软件,可以实现异地组网,没有公网 IP 也能实现局域网内互访。
这里我将记录下如何 docker-compose 部署 EasyTier
# 实现目标
家里的 N1 盒子上的 linux 系统,部署 EasyTier
并在公司电脑安装 Easytier 实现异地组网
windows 有很多第三方客户端
推荐使用 EasytierGame,小巧免安装。
# 部署
EasyTier 支持使用共享公共节点快速组网 (无公网 IP) 和去中心化组网(有公网 IP)。
当您没有公网 IP 时,可以使用 EasyTier 社区提供的免费共享节点。
这里我使用的共享公共节点是 tcp://public.easytier.top:11010
其他公共服务器 https://easytier.gd.nkbpal.cn/status/easytier
下面我将以共享公共节点为例进行部署
--bind-device false #关闭仅使用物理网卡
不加这个参数时,会报错,不清楚具体原因
connect to peer error. dst: tcp://public.easytier.cn:11010, ip_version: V4, err: Err (Timeout (Elapsed (())))
# 配置文件
# 创建 docker-compose.yml 文件,内容如下 | |
vi docker-compose.yml |
docker-compose.yml
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 # 映射 tun 设备 | |
volumes: | |
- /etc/machine-id:/etc/machine-id:ro # 映射宿主机机器码 | |
command: -d --network-name 网络名称 --network-secret 网络密钥 --bind-device false -p tcp://public.easytier.top:11010 |
# 启动
# 首次启动,在 docker-compose.yml 所在目录执行 | |
docker-compose up -d | |
# 查看日志 查看是否启动成功 | |
docker logs -f easytier |
# 配置 EasytierGame
- 下载 EasytierGame
- 双击运行,输入相同的网络名称和网络密钥
- 点击连接即可
# 注意事项
如果连接成功,但是无法访问局域网内的设备,可能是因为防火墙等问题。