系统代理决定应用是否把连接送入本机代理端口,路由模式决定进入内核后的连接从哪里出去。本文以 Windows 上的 v2rayN 为主要操作示例,说明日常分流、临时全局测试和局域网访问如何配置,并给出按入口、规则、出站逐层排查的方法。
先分两层:应用入口与内核出站
启动 v2rayN、选中服务器,并不代表浏览器已经使用代理。客户端需要先启动内核,应用还要通过系统代理、应用自己的代理设置或 TUN 等入口,把连接交给内核。只有到达内核的连接,才会接受内核路由规则的判断。
Windows 的系统代理是一组供应用读取的网络设置,不是接管所有网络流量的开关。通常遵循系统代理的浏览器会使用它;自带代理设置的工具、部分游戏和命令行程序可能不读取它。路由里的“全局”不能改变这些应用的入口行为。
第一层:系统代理
- 设置位置
- v2rayN 托盘菜单 →「系统代理」
- 控制对象
- 遵循系统代理的应用
- 目标入口
- 本机监听地址与端口
- 不负责
- 选择 direct 或 proxy 出站
先确认请求进入内核,再讨论路由是否命中。
第二层:路由模式
- 设置位置
- v2rayN 主窗口底部「路由」选择区
- 控制对象
- 已经进入内核的连接
- 常见出站
- direct、proxy、block
- 不负责
- 强制所有应用使用代理入口
具体预设名称、规则内容和出站标签以当前配置为准。
例如,本机代理监听在 127.0.0.1:10808,浏览器把请求送到该端口后,内核仍可把国内目标交给 direct。这里的端口只是说明用的数值,不是所有版本的默认值;HTTP、SOCKS 或混合监听类型必须与应用填写的代理类型一致。
全局与绕过大陆:差别在路由,不在开关
常说的“全局代理”容易混淆两件事:让应用使用系统代理,以及让内核把连接交给代理出站。这里讨论的是后一种路由策略。全局路由通常把未被例外规则匹配的连接交给代理,但是否保留局域网直连或阻断规则,要打开当前预设查看,不能只看名称判断。
绕过大陆:日常分流
推荐常见规则把局域网地址和中国大陆域名、IP 集合交给直连,其他连接交给代理。国内服务通常沿本地网络访问,海外目标按规则进入节点。结果取决于规则顺序、数据文件和 DNS 设置。
适合:同时访问国内服务和海外网站,且希望减少不必要的代理流量。
全局:统一代理出站
把进入内核、且未命中保留例外的连接交给代理出站。国内目标也可能经过远端节点,访问延迟、服务识别的出口地区及节点流量消耗都会随之变化。
适合:临时排查分流误判,或需要让特定测试会话统一使用节点出口。
“绕过大陆”识别的是规则集合中的目标,不是根据网页显示的中文判断。一个中文网站可能使用海外服务,同一个网页也可能同时连接国内图片域名和海外接口。因此,一次页面加载出现多种出站结果是正常现象,不等于规则失效。
| 目标类型 | 常见绕过大陆策略 | 常见全局策略 |
|---|---|---|
| 匹配大陆域名集合 | 直连 | 代理,除非有更早的直连规则 |
| 未匹配直连规则的海外目标 | 代理 | 代理 |
| 局域网地址,如 192.168.1.1 | 通常直连 | 取决于是否保留局域网例外 |
| 没有进入内核的应用连接 | 不受该路由控制 | 不受该路由控制 |
v2rayN 操作:先接通入口,再选路由
以下路径以 Windows 的 v2rayN 界面为例。不同版本的分组位置和菜单措辞可能调整;先认准“系统代理”和“路由”两组设置,不要把“自动配置系统代理”理解为自动挑选节点或自动生成分流规则。
-
启用服务器
在主窗口服务器列表中选中可用条目,右键选择「设为活动服务器」。确认内核启动,没有端口占用或配置加载失败提示。
-
记录监听端口
打开「设置」→「参数设置」,查看本地监听端口及监听类型。若当前版本分别显示 HTTP 和 SOCKS 端口,应分别记录,不要把两种协议的端口混用。
-
设置系统代理
右键任务栏通知区域的 v2rayN 图标,选择「系统代理」→「自动配置系统代理」。在 Windows「设置」→「网络和 Internet」→「代理」中核对写入的本机地址与端口。
-
选择路由
回到主窗口底部的「路由」选择区,选择当前列表中的绕过大陆预设。先保持其他设置不变;排查时再切换全局预设作对照。
-
验证并恢复
重新打开待测页面,查看内核访问日志里的目标和出站标签。完成全局对照测试后恢复日常路由;停止使用系统代理时,选择「系统代理」→「清除系统代理」。
分流命中还受规则顺序与 DNS 影响
V2Ray 和 Xray 的路由规则按顺序匹配,先命中的规则决定该连接的出站。前面若有一条覆盖全部目标的代理规则,后面的大陆直连规则便没有机会处理这些连接。修改前先备份配置,再检查规则位置。
- 域名集合:
geosite:cn表示数据文件中的域名集合,不是一份实时更新的地域查询结果。具体收录范围取决于所加载的数据。 - IP 集合:
geoip:cn用于匹配目标 IP。是否需要先解析域名、何时解析,与路由的域名策略有关。 - 局域网:
geoip:private常用于私有地址直连。只代理网页却打不开路由器管理页时,应同时检查系统代理绕过列表与内核直连规则。 - 默认出站:没有规则命中时,内核的默认出站行为也会影响结果。不要只截取一条直连规则,就认定整个配置是绕过大陆。
域名规则需要内核拿到域名信息。应用若只交给代理一个 IP,域名规则就可能无法直接匹配;协议嗅探在满足条件时可以补充目标信息,但不能保证恢复所有域名。浏览器的加密 DNS、应用自身解析和内核 DNS 也可能形成不同路径。
两种使用环境:浏览器代理与 TUN 接管
如果目标只是让遵循系统代理的浏览器访问网站,系统代理通常足够。若某个应用不读取系统代理,可以先找该应用自己的 HTTP 或 SOCKS 设置;需要更广的网络接管范围时,再评估 TUN。TUN 是另一种入口,不是“全局路由”的别名。
按应用入口选择方案
浏览器为主
- 启用系统代理,确认浏览器读取系统设置。
- 日常选择绕过大陆路由。
- 检查浏览器扩展或独立代理设置是否覆盖系统设置。
- 排查时只临时切换全局,保留其他变量。
需要 TUN 的应用
- 按客户端说明确认权限、虚拟网卡和路由接管状态。
- 单独检查 DNS、UDP 及局域网访问。
- 仍需选择内核路由,不把 TUN 当成全局出站。
- 测试期间避免多个网络接管工具同时运行。
入口负责把连接送进来;无论采用哪种入口,分流结果仍要看实际加载的路由。
Android 上的 v2rayNG 使用 Xray 内核,v2flyNG 使用 v2fly 内核。它们通常通过系统 VPN 服务建立接管入口,与 Windows 写入系统代理的方式不同。分应用选择会先决定哪些应用进入该入口,随后才轮到内核路由;VMess 或 VLESS 是节点协议,不替代入口设置,也不决定是否绕过大陆。
常见误配:用同一个请求逐层验证
排查时固定一个目标,只改一项设置。若使用命令行作对照,可以显式指定代理,避免把“命令没有读取系统代理”误判成节点故障。以下示例假定本机确实有 HTTP 或兼容 HTTP 的混合监听端口 10808;不一致时先按实际配置修改。
curl --proxy http://127.0.0.1:10808 --connect-timeout 10 --max-time 20 -I https://example.com
这个命令把连接明确送往本机代理,连接超时为 10 秒,总超时为 20 秒。它只能验证该次请求的路径,不能证明所有应用、所有域名或 UDP 都正常。访问日志若未启用,可临时开启并在测试后恢复;对外分享日志前移除订阅地址、认证信息与个人访问记录。
选了全局,为什么某个程序仍然直连?
先查该程序是否使用系统代理。若程序有独立代理设置,填入与监听类型匹配的本机地址和端口;再从内核访问日志确认请求是否出现。没有进入内核,切换路由不会改变结果。
绕过大陆打不开,全局却能打开,怎么查?
在两种模式下访问同一目标,比较实际出站标签。如果绕过大陆命中 direct、全局命中 proxy,优先检查直连链路、DNS 结果和误命中的规则。确认目标后再增加范围尽量小的代理规则,不要直接删除全部直连规则。
国内网页变慢,是不是节点不够快?
先看它是否在全局模式下经过代理。恢复绕过大陆,再检查网页的主域名和接口域名分别走哪个出站。只有确认连接经过节点后,节点性能比较才有意义。
代理开着,却打不开 192.168.1.1?
核对路由器的真实管理地址,检查系统代理绕过列表以及内核的私有地址直连规则。远端节点通常不能访问家庭路由器的私有地址,因此不应把这类目标交给远端代理。
关闭 v2rayN 后网页全部打不开,怎么办?
打开 Windows「设置」→「网络和 Internet」→「代理」,检查是否仍保留指向本机的手动代理。可重新启动 v2rayN,执行「系统代理」→「清除系统代理」,再关闭客户端并重新测试。
日常选择与恢复检查
对同时使用国内和海外服务的桌面环境,可以从“系统代理开启、路由绕过大陆”开始。只有遇到明确的分流问题,再临时切到全局作对照。全局不是更高等级的连接模式,绕过大陆也不保证每个目标都被正确分类;两者都需要可用节点、正确入口和符合需求的规则。
- 保存当前活动服务器、监听端口和路由预设名称,便于恢复。
- 验证国内目标、海外目标和局域网地址,不只检查一个网页。
- 测试结束后恢复日常预设,关闭临时详细日志。
- 不再使用代理时清除系统代理;使用 TUN 的环境还要确认接管已停止。