Skip to content

架构设计

┌──────────────────────────────────────────────────────────┐
│                   IPv6 子网代理                             │
│                                                           │
│  ┌──────────┐    ┌──────────────────────────────────┐    │
│  │ SOCKS5   │    │    Fastify API (端口 3000)        │    │
│  │ 服务器    │    │  ┌─────┐ ┌──────┐ ┌──────────┐  │    │
│  │(端口 1080)│    │  │用户 │ │子网  │ │会话      │  │    │
│  │           │    │  │路由 │ │路由  │ │路由      │  │    │
│  │ 认证      │    │  └─────┘ └──────┘ └──────────┘  │    │
│  │ (RFC1929) │    │  ┌──────┐ ┌──────┐ ┌────────┐  │    │
│  │           │    │  │流量  │ │限制  │ │审计    │  │    │
│  │ CONNECT   │    │  │路由  │ │路由  │ │路由    │  │    │
│  │ 处理      │    │  └──────┘ └──────┘ └────────┘  │    │
│  └─────┬─────┘    └──────────────────────────────────┘    │
│        │                        │                          │
│        └──────────┬─────────────┘                          │
│                   │                                        │
│        ┌──────────▼──────────┐                             │
│        │      核心模块        │                             │
│        │  ┌──────────────┐   │                             │
│        │  │ IP 分配器    │   │                             │
│        │  │  (sticky/    │   │                             │
│        │  │   random)    │   │                             │
│        │  ├──────────────┤   │                             │
│        │  │  用户管理器   │   │                             │
│        │  ├──────────────┤   │                             │
│        │  │  子网管理器   │   │                             │
│        │  ├──────────────┤   │                             │
│        │  │  速率限制器   │   │                             │
│        │  ├──────────────┤   │                             │
│        │  │  流量统计    │   │                             │
│        │  ├──────────────┤   │                             │
│        │  │  审计日志    │   │                             │
│        │  └──────────────┘   │                             │
│        └──────────┬──────────┘                             │
│                   │                                        │
│        ┌──────────▼──────────┐                             │
│        │  SQLite (WAL 模式)   │                             │
│        │  /data/proxy.db     │                             │
│        └─────────────────────┘                             │
└──────────────────────────────────────────────────────────┘

         ┌──────┐    SOCKS5        ┌────────────┐
         │客户端 │◄───────────────►│  目标服务器  │
         │      │   (IPv6 绑定)    │            │
         └──────┘                  └────────────┘

应用程序为单进程架构,运行两个服务:

  • SOCKS5 服务器(端口 1080)— 接受客户端连接,使用用户名/密码进行认证,从用户绑定的子网中分配 IPv6 地址,并转发流量。
  • REST API 服务器(端口 3000)— 基于 Fastify 的 HTTP 管理 API。除 /health 外,所有端点均需 X-API-Key 头进行认证。

两个服务共享相同的核心模块和 SQLite 数据库。


基于 MIT 许可证发布。