Skip to content

Commit a34e2a2

Browse files
authored
Update README.md
1 parent 850efc4 commit a34e2a2

1 file changed

Lines changed: 103 additions & 17 deletions

File tree

README.md

Lines changed: 103 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
# ECH Workers 客户端
22

3-
跨平台的 ECH Workers 代理客户端,支持 Windows 和 macOS
4-
3+
跨平台的 ECH Workers 代理客户端,支持 Windows、macOSLinux(ARM/x86)
4+
tg交流群 https://t.me/+ft-zI76oovgwNmRh
55
## 致谢
66

77
本项目的客户端和 Go 核心程序均基于 [CF_NAT](https://t.me/CF_NAT) 的原始代码开发。
@@ -10,12 +10,15 @@
1010

1111
## 功能特性
1212

13-
- ✅ 服务器配置管理(支持多个服务器配置)
14-
- ✅ 启动/停止代理进程
15-
- ✅ 实时日志显示
16-
- ✅ 系统托盘图标(可选)
17-
- ✅ 开机自动启动
18-
- ✅ 配置自动保存
13+
-**多服务器管理** - 支持多个服务器配置,快速切换
14+
-**一键系统代理** - 自动设置系统代理,支持分流模式
15+
-**智能分流** - 全局代理、跳过中国大陆、不改变代理三种模式
16+
-**中国IP列表** - 自动下载并应用完整的中国IP列表(基于 [mayaxcn/china-ip-list](https://github.com/mayaxcn/china-ip-list)
17+
-**系统托盘** - 最小化到系统托盘,不占用任务栏
18+
-**开机自启** - 支持 Windows 和 macOS 开机自动启动
19+
-**高 DPI 支持** - 完美支持高分辨率显示器
20+
-**实时日志** - 查看代理运行状态和日志
21+
-**配置持久化** - 自动保存配置,下次启动自动加载
1922

2023
## 快速开始
2124

@@ -26,10 +29,13 @@
2629
- **Windows**: `ECHWorkers-windows-amd64.zip`
2730
- **macOS Intel**: `ECHWorkers-darwin-amd64.zip`
2831
- **macOS Apple Silicon**: `ECHWorkers-darwin-arm64.zip`
32+
- **Linux x86_64**: `ECHWorkers-linux-amd64.tar.gz`
33+
- **Linux ARM64**: `ECHWorkers-linux-arm64.tar.gz`
2934

3035
解压后直接运行:
3136
- **Windows**: 双击 `ECHWorkersGUI.exe` 启动 GUI,或运行 `ech-workers.exe` 使用命令行
3237
- **macOS**: 运行 `./ECHWorkersGUI` 启动 GUI,或运行 `./ech-workers` 使用命令行
38+
- **Linux**: 运行 `./ECHWorkersGUI` 启动 GUI,或运行 `./ech-workers` 使用命令行
3339

3440
> **注意**: 预编译版本已包含所有依赖,无需安装 Python 或任何其他软件。
3541
@@ -68,9 +74,10 @@ python3 gui.py
6874

6975
## 系统要求
7076

71-
- **Windows**: Windows 10+
77+
- **Windows**: Windows 10+ (Windows 11 完全支持)
7278
- **macOS**: macOS 10.13+
73-
- **Python**: 3.6+
79+
- **Linux**: Ubuntu 18.04+ / Debian 10+ / CentOS 7+ (支持 x86_64 和 ARM64)
80+
- **Python**: 3.6+ (仅从源码运行时需要)
7481
- **Go**: 1.23+ (仅编译时需要,ECH 功能需要此版本)
7582

7683
## 配置说明
@@ -82,18 +89,45 @@ python3 gui.py
8289

8390
## 使用说明
8491

92+
### 基本使用
93+
8594
1. **配置服务器**
86-
- 点击"新增"添加服务器配置
87-
- 填写服务地址和监听地址
88-
- 可选:填写身份令牌、IP、DNS、ECH 等高级选项
95+
- 点击"新增"添加服务器配置(会创建新配置,不会覆盖现有配置)
96+
- 填写服务地址(如:`your-worker.workers.dev:443`)和监听地址(如:`127.0.0.1:1080`
97+
- 可选:填写身份令牌、优选IP、DOH服务器、ECH域名等高级选项
98+
- 点击"保存"保存当前配置
8999

90100
2. **启动代理**
91-
- 点击"启动代理"按钮
101+
- 点击"启动代理"按钮启动代理服务
92102
- 查看日志区域了解运行状态
103+
- 点击"停止"按钮停止代理服务
104+
105+
3. **设置系统代理**
106+
- 启动代理后,点击"设置系统代理"按钮
107+
- 系统会自动配置代理设置
108+
- 停止代理或关闭程序时会自动清理系统代理
109+
110+
### 分流功能
111+
112+
程序支持三种分流模式:
113+
114+
- **全局代理** - 所有流量都走代理(只绕过本地和内网地址)
115+
- **跳过中国大陆** - 中国网站直连,其他网站走代理
116+
- 自动下载并应用完整的中国IP列表
117+
- 包含常见中国域名(*.cn, *.baidu.com, *.qq.com 等)
118+
- **不改变代理** - 不设置系统代理,手动配置
119+
120+
切换分流模式后,如果已设置系统代理,会自动更新绕过规则。
121+
122+
### 系统托盘
93123

94-
3. **系统托盘**(如果安装了 pystray)
95-
- 应用会在菜单栏显示图标
96-
- 点击图标可以打开/隐藏窗口
124+
- **最小化到托盘** - 关闭窗口时程序会最小化到系统托盘,不会退出
125+
- **显示窗口** - 双击托盘图标或右键菜单选择"显示窗口"
126+
- **退出程序** - 右键托盘图标选择"退出"
127+
128+
### 开机自启
129+
130+
勾选"开机启动"复选框,程序会在系统启动时自动运行并启动代理(如果配置了自动启动参数)。
97131

98132
## 故障排除
99133

@@ -108,6 +142,11 @@ pip3 install --break-system-packages PyQt5
108142

109143
# Windows
110144
pip install PyQt5
145+
146+
# Linux
147+
sudo apt install python3-pyqt5 # Debian/Ubuntu
148+
#
149+
pip3 install PyQt5
111150
```
112151

113152
### 找不到 ech-workers
@@ -117,6 +156,36 @@ pip install PyQt5
117156
go build -o ech-workers ech-workers.go
118157
```
119158

159+
### Windows 11 系统代理问题
160+
161+
如果 Windows 11 系统代理设置失败:
162+
- 确保以管理员权限运行程序
163+
- 检查防火墙设置
164+
- 程序会自动使用正确的代理格式(`127.0.0.1:端口`
165+
166+
### Linux 系统代理设置
167+
168+
Linux 暂不支持自动设置系统代理,需要手动配置:
169+
- 在系统设置中配置 SOCKS5 代理为 `127.0.0.1:端口`
170+
- 或使用环境变量:`export ALL_PROXY=socks5://127.0.0.1:端口`
171+
172+
### 中国IP列表加载失败
173+
174+
如果中国IP列表下载失败:
175+
- 程序会使用默认的主要IP段
176+
- 检查网络连接
177+
- 列表会缓存24小时,过期后自动重新下载
178+
179+
### 删除服务器后列表清空
180+
181+
已修复:删除服务器后会自动切换到其他服务器,无需重启程序。
182+
183+
### bad CPU type in executable (macOS)
184+
185+
如果遇到此错误:
186+
- Intel Mac 请下载 `darwin-amd64` 版本
187+
- Apple Silicon Mac 请下载 `darwin-arm64` 版本
188+
120189
## 开发
121190

122191
### 本地测试
@@ -141,10 +210,27 @@ git push origin v1.0.0
141210

142211
本项目基于 [CF_NAT](https://t.me/CF_NAT) 的原始代码开发。
143212

213+
## 技术细节
214+
215+
### ECH (Encrypted Client Hello)
216+
217+
ECH 是 TLS 1.3 的扩展功能,用于加密 TLS 握手中的 SNI(服务器名称指示),提供更强的隐私保护。这是本程序的**核心功能**,需要 Go 1.23+ 支持。
218+
219+
### 中国IP列表
220+
221+
程序会自动从 [mayaxcn/china-ip-list](https://github.com/mayaxcn/china-ip-list) 下载完整的中国IP列表,用于"跳过中国大陆"分流模式。列表会缓存24小时,过期后自动更新。
222+
223+
### 系统代理设置
224+
225+
- **Windows**: 通过注册表设置系统代理,支持 SOCKS5 代理
226+
- **macOS**: 使用 `networksetup` 命令设置所有网络服务的 SOCKS 代理
227+
- **Linux**: 暂不支持自动设置,需要手动配置
228+
144229
## 相关链接
145230

146231
- **原始项目**: [CF_NAT - 优选IP Telegram 频道](https://t.me/CF_NAT)
147232
- **Telegram**: [@CF_NAT](https://t.me/CF_NAT)
233+
- **中国IP列表**: [mayaxcn/china-ip-list](https://github.com/mayaxcn/china-ip-list)
148234
## Star History
149235

150236
<a href="https://www.star-history.com/#byJoey/ech-wk&type=timeline&logscale&legend=top-left">

0 commit comments

Comments
 (0)