拓扑与规划

Node A: Linux 小主机 (Ubuntu 24.04)  → 10.144.0.1
Node B: Windows 游戏机             → 10.144.0.2
Node C: OpenWrt 路由器             → 10.144.0.3
网络名: home-net
子网: 10.144.0.0/16

子网规划(用 子网冲突检查器 验证过无冲突)

节点VPN IP局域网 IP角色
A - Linux10.144.0.1192.168.1.50种子节点
B - Win10.144.0.2192.168.1.100普通节点
C - OpenWrt10.144.0.3192.168.1.1网关+中继

Node A:Linux 配置

# /etc/easytier/config.toml
network_name = "home-net"
peer_name = "linux-node"
subnet = "10.144.0.0/16"
node_ip = "10.144.0.1"
listen_port = 11010
encryption = "aes-gcm"
password = "your-strong-password-here"

# 对端列表
[[peers]]
ip = "10.144.0.2"
port = 11010

[[peers]]
ip = "10.144.0.3"
port = 11010

# Web API 仅绑回环
[web_api]
enabled = false
bind = "127.0.0.1"
port = 11211

启动:

sudo systemctl enable --now easytier
sudo systemctl status easytier
# 看日志
journalctl -u easytier -f

Node B:Windows 配置

下载 EasyTier GUI 安装包,安装后:

  1. 打开 EasyTier GUI → Normal Mode
  2. 网络名填 home-net
  3. 本节点 IP 填 10.144.0.2
  4. 对端填 10.144.0.1:11010
  5. 密码填和 Linux 一样的
  6. 不要勾选"启用 Web 控制台"(安全)
  7. 点连接

Node C:OpenWrt 配置

OpenWrt 装 easytier 包:

opkg update
opkg install easytier

配置 /etc/config/easytier

config easytier 'main'
    option enabled '1'
    option network_name 'home-net'
    option peer_name 'openwrt-gw'
    option subnet '10.144.0.0/16'
    option node_ip '10.144.0.3'
    option listen_port '11010'
    option encryption 'aes-gcm'
    option password 'your-strong-password-here'
    option peer_list '10.144.0.1:11010,10.144.0.2:11010'

防火墙放行(关键!):

# /etc/firewall.user
iptables -I INPUT -p udp --dport 11010 -j ACCEPT
iptables -I FORWARD -i tun0 -j ACCEPT
iptables -I FORWARD -o tun0 -j ACCEPT

验证连通

在 Linux 上:

ping 10.144.0.2  # → Win
ping 10.144.0.3  # → OpenWrt
# 从 Win 也能 ping 通 Linux 和 OpenWrt

踩坑记录

进阶:让 OpenWrt 当网关,全家设备自动走 VPN

在 OpenWrt 上加静态路由 + NAT:

# 让 LAN 设备访问 10.144.0.0/16 走 tun0
ip route add 10.144.0.0/16 dev tun0

# NAT 出
iptables -t nat -A POSTROUTING -o tun0 -j MASQUERADE

这样家里手机/电视连 WiFi 就能直接访问 Linux 上的服务,无需每台设备安装 EasyTier。