You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
127 lines
2.3 KiB
127 lines
2.3 KiB
2 weeks ago
|
# Wormhole SOCKS5 Client
|
||
|
|
||
|
🌐 功能完整的 SOCKS5 代理客户端,支持多种代理模式
|
||
|
|
||
|
## 快速开始
|
||
|
|
||
|
### 构建和运行
|
||
|
```bash
|
||
|
# HTTP 代理模式
|
||
|
make run-http
|
||
|
|
||
|
# 全局代理模式 (需要管理员权限)
|
||
|
make run-global
|
||
|
|
||
|
# 透明代理模式 (需要root权限)
|
||
|
make run-transparent
|
||
|
```
|
||
|
|
||
|
### 配置
|
||
|
编辑 `configs/client.yaml` 来自定义客户端设置:
|
||
|
|
||
|
```yaml
|
||
|
server:
|
||
|
address: your_server_ip
|
||
|
port: 1080
|
||
|
username: your_username
|
||
|
password: your_password
|
||
|
|
||
|
proxy:
|
||
|
mode: http
|
||
|
localPort: 8080
|
||
|
```
|
||
|
|
||
|
## 功能特性
|
||
|
|
||
|
### 🔄 多种代理模式
|
||
|
- ✅ **HTTP 代理** - 简单易用的HTTP代理
|
||
|
- 🔄 **全局代理** - 系统级全局代理设置
|
||
|
- 🔄 **透明代理** - 透明流量拦截和转发
|
||
|
|
||
|
### 🎯 智能路由
|
||
|
- 🔄 域名/IP分流规则
|
||
|
- 🔄 本地网络绕过
|
||
|
- 🔄 PAC文件支持
|
||
|
- 🔄 自定义路由规则
|
||
|
|
||
|
### 🛡 系统集成
|
||
|
- 🔄 自动DNS配置
|
||
|
- 🔄 系统代理设置
|
||
|
- 🔄 iptables规则管理
|
||
|
- 🔄 网络路由配置
|
||
|
|
||
|
### 🖥 跨平台支持
|
||
|
- ✅ Linux - 完整支持
|
||
|
- 🔄 macOS - 系统代理支持
|
||
|
- 🔄 Windows - WinDivert透明代理
|
||
|
|
||
|
## 使用模式
|
||
|
|
||
|
### HTTP 代理模式
|
||
|
最简单的使用方式,在本地启动HTTP代理:
|
||
|
|
||
|
```bash
|
||
|
make run-http
|
||
|
```
|
||
|
|
||
|
然后配置应用程序使用 `http://127.0.0.1:8080` 作为代理。
|
||
|
|
||
|
### 全局代理模式
|
||
|
配置系统级代理,所有网络流量通过代理:
|
||
|
|
||
|
```bash
|
||
|
sudo make run-global
|
||
|
```
|
||
|
|
||
|
### 透明代理模式
|
||
|
透明拦截网络流量,无需配置应用程序:
|
||
|
|
||
|
```bash
|
||
|
sudo make run-transparent
|
||
|
```
|
||
|
|
||
|
## 迁移状态
|
||
|
|
||
|
此项目是从 [原始 Wormhole 项目](https://github.com/azoic/wormhole) 拆分出的独立客户端。
|
||
|
|
||
|
### ✅ 已完成
|
||
|
- [x] 基础项目结构
|
||
|
- [x] HTTP代理模式框架
|
||
|
- [x] 配置管理系统
|
||
|
- [x] 构建系统
|
||
|
|
||
|
### 🔄 进行中
|
||
|
- [ ] 完整的客户端代码迁移
|
||
|
- [ ] 全局代理功能
|
||
|
- [ ] 透明代理实现
|
||
|
- [ ] 智能路由系统
|
||
|
|
||
|
### 🎯 计划中
|
||
|
- [ ] GUI客户端
|
||
|
- [ ] 移动端支持
|
||
|
- [ ] 浏览器扩展
|
||
|
- [ ] 高级分流规则
|
||
|
|
||
|
## 开发
|
||
|
|
||
|
### 系统要求
|
||
|
- Go 1.21+
|
||
|
- Linux: iptables, ip命令
|
||
|
- macOS: 管理员权限
|
||
|
- Windows: WinDivert驱动
|
||
|
|
||
|
### 添加依赖
|
||
|
```bash
|
||
|
go get package_name
|
||
|
go mod tidy
|
||
|
```
|
||
|
|
||
|
### 运行测试
|
||
|
```bash
|
||
|
make test
|
||
|
```
|
||
|
|
||
|
## 许可证
|
||
|
|
||
|
MIT License - 详见 [LICENSE](LICENSE) 文件
|