Appearance
网络代理
网络代理是一套把应用流量按规则送到指定出口的系统。它不是某一个客户端,也不是某一种协议,而是由本机接入、规则决策、订阅配置、代理协议、入口网关、远端代理服务、DNS 和运维机制共同组成的链路。
学习网络代理时,先抓住两个面:
- 控制面:生成、分发、更新配置,告诉客户端有哪些节点、哪些规则、如何选择出口。
- 数据面:真实业务流量从应用出发,经本机客户端、远端代理服务,再到目标服务。
阅读路径
| 页面 | 解决什么问题 |
|---|---|
| 基础原理 | 理解代理和 VPN 的边界、本机接入、规则决策、DNS 和数据面链路 |
| 组件链路 | 拆清客户端、订阅、协议、入口网关、远端服务和运维组件分别做什么 |
| 生产实施 | 从需求确认、协议选型、服务端部署、订阅生成到上线验证 |
| Clash Verge 使用 | 解释 Clash Verge 各菜单怎么用、系统代理和 TUN 如何选择 |
| 运维与排查 | 说明日志、容量、证书、凭据、版本和故障排查闭环 |
整体架构
mermaid
flowchart LR
subgraph Local["本机侧"]
App[浏览器 / 应用程序]
Gui[客户端界面<br/>Clash Verge]
Core[代理内核<br/>Mihomo / sing-box]
Rules[规则与 DNS]
App --> Core
Gui --> Core
Core --> Rules
end
subgraph Control["控制面"]
Sub[订阅配置]
Groups[代理组 / 规则集]
Sub --> Groups
Groups --> Core
end
subgraph Remote["远端侧"]
Gateway[入口网关<br/>Nginx / Caddy / LB]
Proxy[远端代理服务]
Exit[出口网络]
Target[目标服务]
Gateway --> Proxy --> Exit --> Target
end
Rules -->|直连| Target
Rules -->|代理| Gateway这张图里,Clash Verge 只是界面,Mihomo 这类内核才真正接收流量和执行规则;订阅配置只负责告诉内核“可选节点和规则是什么”;远端代理服务才是实际出口。入口网关不是必需组件,但在需要统一域名、TLS、WebSocket 或多服务共用 443 端口时很常见。
核心判断
一次代理链路是否真正可用,至少要同时满足三件事:
- 配置能下发:客户端能拉到订阅,节点和规则能被解析。
- 节点能连接:客户端能和远端代理服务建立协议连接。
- 目标能访问:规则、DNS、远端出口和目标服务之间全部可达。
只看到订阅更新成功,不代表代理成功;只看到节点延迟正常,也不代表业务网站一定会按预期走代理。网络代理的稳定性来自整条链路协同,而不是某一个按钮显示绿色。
最小学习路线
先读 基础原理,把“应用流量如何进入客户端、为什么规则能决定直连或代理”搞清楚;再读 组件链路,建立各组件边界;之后按 生产实施 看服务端落地流程。日常使用 Clash Verge 时,可以直接跳到 Clash Verge 使用。遇到问题时,从 运维与排查 的分层排查表开始。
