贤者云 | xianzhey.shop

v2rayN 路由规则设置:国内直连、指定代理与 TUN 排查

更新于 2026-11-13 · xianzhey.shop

简答:v2rayN 路由规则设置先按场景选入口:只让浏览器分流,用“自动配置系统代理 + 绕过大陆”;只代理少数网站,用黑名单或自定义规则;软件不读取系统代理时,再启用 TUN。国内直连、其余代理的 Xray 规则应把 geosite:cn 和 geoip:cn 放在前面,最后用 proxy 兜底。

定义:v2rayN 路由规则是由当前使用的 Xray 或 sing-box 核心,根据域名、IP、端口、网络类型等条件,把连接交给代理、直连或阻断出站的分流配置。

先选场景:三种设置直接照做

本文只讲 Windows 桌面版 v2rayN 的路由规则设置,不展开 Linux、macOS、Android 或 iOS 的界面步骤。本站是第三方使用指南站,不是 v2rayN 官方页面;菜单名称和选项可能随版本变化,但下面的入口名称、规则逻辑和验证方法以已检索到的官方资料为依据。

v2rayN 路由设置快速选择
你的目标先这样设置规则重点验证方法
浏览器国内直连、其他目标代理主界面系统代理选择“自动配置系统代理”;路由功能选择“绕过大陆”使用预置规则,先不要导入自定义规则浏览器访问国内与外部各一个目标,再查看主界面日志
只让少数网站走代理系统代理选择“自动配置系统代理”;路由进入自定义规则指定域名规则放前面,最后用 direct 兜底查看目标域名是否出现在日志,以及出站标签是否正确
应用不读取系统代理打开“设置 → Tun 模式设置”,再按权限要求启用 TUN确认虚拟网卡、自动路由和 DNS 接管状态检查应用流量是否出现在 v2rayN 日志

v2rayN 官方 Wiki 将系统代理和核心路由分为两层:系统代理把部分应用流量送入核心,核心路由再决定连接走哪个出站;官方给出的常规组合是“自动配置系统代理”加“绕过大陆”。查看 v2rayN 系统代理和路由说明

  1. 先确认核心。打开“设置 → Core 类型设置”,查看当前配置使用的是 Xray 还是 sing-box。下面的数组模板按 Xray 自定义路由格式书写,不能直接当作 sing-box 配置。
  2. 先选系统代理入口。普通浏览器测试时,打开主界面底部或托盘菜单中的系统代理选项,选择“自动配置系统代理”。如果其他软件已经设置过系统代理,先关闭重复入口。
  3. 再选路由模式。只需要常见分流时,在主界面底部的路由功能下拉框选择“绕过大陆”;只代理少数域名时,进入“设置 → 路由设置”使用自定义规则。
  4. 保存后重新载入。修改规则后点击保存或应用,再重新启动当前核心。不同版本按钮文字可能不同,但必须让新配置重新生成后再测试。

v2rayN 全局、绕过大陆和黑名单怎么区分

预置模式的实际行为应以当前规则列表和默认出站为准,不要只根据模式名称猜测。v2rayN 官方资料明确说明,路由规则按列表顺序匹配,前面规则命中后,后面的规则不再处理;Xray 在没有规则匹配时会使用第一个出站作为默认路径。查看 v2rayN 自定义路由规则说明 查看 Xray Routing 官方文档

常见模式的使用判断
模式适合场景操作判断
全局代理先验证节点和代理入口未被更具体规则匹配的连接通常倾向代理;仍需检查默认出站
绕过大陆常见国内直连、其他目标按代理策略处理适合先验证浏览器分流,不建议一开始叠加大量自定义规则
黑名单大部分目标直连,只代理少量指定域名指定域名的 proxy 规则必须放在 direct 兜底之前
自定义规则需要精确控制域名、IP、端口或 UDP由用户维护顺序、出站标签和核心兼容性

如果只是浏览器分流,建议先完成“自动配置系统代理 + 绕过大陆”这一步;如果浏览器测试成功,再新增一条指定域名规则。这样可以把入口问题和规则问题分开。

三步设置自定义规则:国内直连、指定代理和广告拦截

操作路径可以按“主界面 → 设置 → 路由设置 → 添加或编辑规则”执行。v2rayN 官方界面说明还提供从文件、剪贴板和订阅 URL 导入规则的入口;远程规则内容可能变化,导入前应保存原规则,订阅 URL 也不要公开粘贴或截图。查看 v2rayN 界面与路由设置说明

  1. 先确认出站标签。打开当前配置的出站或导出配置,确认是否真的存在名为 proxy、direct、block 的标签。标签不存在时,把模板中的名称替换成当前配置里的实际名称。
  2. 从剪贴板导入或逐条添加。如果使用官方 Wiki 的 JSON 数组格式,可复制完整数组后选择“从剪贴板导入规则”;如果只修改一条,使用界面添加规则更容易回退。
  3. 按具体到宽泛的顺序排列。局域网直连和指定域名规则放前,国内域名和 IP 规则放中间,广告拦截按需要放在前部,最终兜底规则放最后。

模板 A:国内直连,其余目标代理。此模板兑现“国内直连、其他走代理”的场景。使用前必须确认当前 geosite.dat 和 geoip.dat 中存在对应分类;如果分类文件缺失或版本不匹配,结果需核实。

[{"remarks":"局域网IP直连","enabled":true,"ip":["geoip:private"],"outboundTag":"direct"},{"remarks":"局域网域名直连","enabled":true,"domain":["geosite:private"],"outboundTag":"direct"},{"remarks":"国内IP直连","enabled":true,"ip":["geoip:cn"],"outboundTag":"direct"},{"remarks":"国内域名直连","enabled":true,"domain":["geosite:cn"],"outboundTag":"direct"},{"remarks":"未匹配目标代理","enabled":true,"network":"tcp,udp","outboundTag":"proxy"}]

验证方法:先访问一个已知国内域名和一个需要代理的测试域名,分别查看主界面日志中的目标与出站标签。如果国内域名仍走 proxy,先查规则顺序、域名解析和 geosite 文件;如果外部目标走 direct,检查最后的 proxy 兜底是否被其他规则截断。

模板 B:指定网站强制代理,其余直连。把 example.com 换成你要测试的域名。domain:匹配该域名及子域名,full:只匹配完整域名。

[{"remarks":"指定域名代理","enabled":true,"domain":["domain:example.com"],"outboundTag":"proxy"},{"remarks":"指定登录域名代理","enabled":true,"domain":["full:login.example.com"],"outboundTag":"proxy"},{"remarks":"未匹配目标直连","enabled":true,"network":"tcp,udp","outboundTag":"direct"}]

验证方法:把测试规则临时放到规则列表最前,访问 https://example.com,再查看日志。如果日志没有该连接,先查系统代理或 TUN 是否接管应用;如果日志有连接但标签错误,查规则顺序和出站名称。

模板 C:广告域名拦截和 UDP 443 拦截。这是 v2rayN 官方自定义规则示例中出现的两类写法。UDP 443 常与 QUIC 相关,但阻断 UDP 443 只代表阻断匹配到的 UDP 443 连接,不等于所有 HTTP/3 或 QUIC 流量都能被识别。查看官方自定义规则示例

[{"remarks":"阻断UDP443","enabled":true,"port":"443","network":"udp","outboundTag":"block"},{"remarks":"阻断广告域名","enabled":true,"domain":["geosite:category-ads-all"],"outboundTag":"block"},{"remarks":"未匹配目标直连","enabled":true,"network":"tcp,udp","outboundTag":"direct"}]

验证方法:先只启用广告规则,访问一个明确会加载第三方资源的页面并查看日志;广告分类是否完整取决于当前规则文件,不应把“未命中”直接判断为客户端故障。启用 UDP 443 规则后,TCP 测试不能证明 UDP 或 QUIC 的行为。

Xray 与 sing-box 字段对照:不要直接混用

v2rayN 可以使用 Xray 或 sing-box 核心,但两者的路由结构不是同一种 JSON。Xray 的规则常用 outboundTag、domain、ip;sing-box 的 Route Rule 使用 outbound、domain_suffix、domain_keyword、domain_regex 和 rule_set 等字段。查看 Xray RuleObject 官方文档 查看 sing-box Route Rule 官方文档

Xray 与 sing-box 常用字段对照
需求Xray 写法sing-box 写法注意
指定出站outboundTag":"proxy""action":"route","outbound":"proxy"sing-box 新版将 outbound 放到 route action;旧写法需按版本核对
完整域名full:example.com"domain":["example.com"]sing-box 的 domain 表示完整域名匹配
域名及子域名domain:example.com"domain_suffix":[".example.com"]sing-box 使用 domain_suffix 表达后缀
关键词keyword:example"domain_keyword":["example"]关键词范围可能较宽,先用单域名验证
正则regexp:\\.example\\.com$"domain_regex":["^.*\\.example\\.com$"]正则转义和大小写规则需按核心文档检查
地区分类geosite:cn、geoip:cn新版优先使用 rule_set;geosite 和 geoip 已标注为弃用规则集名称和来源必须在当前配置中存在
进程匹配process,Windows 和 Linux 支持process_name 或 process_path进程匹配能力与平台、核心版本有关

sing-box 官方文档将 geosite 和 geoip 标为弃用,并建议使用 rule-set 体系;因此,切换到 sing-box 后不要把 Xray 的 geosite:cn 数组直接粘贴进去。应在“设置 → 路由设置”中检查当前 sing-box rule-set 来源,再使用对应的规则集标签。查看 sing-box Route 配置

系统代理与 TUN:什么时候关闭,什么时候同时用

系统代理和 TUN 是不同的流量入口。系统代理主要影响会读取 Windows 代理设置的应用;TUN 通过虚拟网卡和路由接管更多应用流量。v2rayN 官方界面说明显示,TUN 设置位于“设置 → Tun 模式设置”,其中包括协议栈、MTU、自动路由和路由排除地址等选项;Windows 使用 TUN 通常需要管理员权限运行,具体权限行为以当前版本提示为准。查看 v2rayN Tun 模式设置说明

  1. 只排查浏览器:先不要开 TUN。路径是“主界面 → 系统代理 → 自动配置系统代理”,路由选“绕过大陆”。这样变量较少,便于确认规则是否命中。
  2. 软件不读取系统代理:关闭系统代理或将其恢复为不改变系统代理,再使用“设置 → Tun 模式设置”启用 TUN。启用前保存当前网络状态,按 Windows 弹出的管理员权限提示操作。
  3. 需要同时使用时:只有在明确需要系统代理处理浏览器、TUN 处理不读取代理的应用时才同时开启。若开启后出现重复代理、连接循环或 DNS 异常,先关闭系统代理,仅保留 TUN 做单变量验证。
  4. 检查 TUN 结果:确认 TUN 开关处于运行状态、虚拟网卡已出现、自动路由已启用,并检查“路由排除地址”是否误排除了目标网段。

sing-box 官方 TUN 文档说明,自动路由会把默认路由指向 TUN;Windows 的严格路由还会影响 DNS 和部分虚拟化软件。因此,启用 TUN 后浏览器测试结果不能与只开系统代理时简单等同。查看 sing-box TUN 官方文档

规则不生效:按入口、配置、DNS、日志四层排查

  1. 先看入口。如果主界面日志完全没有目标域名或连接记录,优先查系统代理是否开启、应用是否设置了独立代理,以及 TUN 是否真的运行。只修改路由规则,不能让未进入核心的流量自动出现。
  2. 再看规则顺序。将一条测试规则临时移动到列表顶部。若移动后命中,说明原先被更宽泛的规则截断。兜底规则必须放在最后。
  3. 检查 outboundTag。确认 proxy、direct、block 只是示例标签,实际名称以当前生成配置为准。标签拼写、大小写和核心类型都要一致。
  4. 检查生成配置和日志。主界面日志面板通常直接显示核心日志;如果在“设置”中开启“启用日志存到文件”,v2rayN 官方界面说明称日志会保存到 guiLogs 文件夹。配置文件可通过“设置 → 打开存储所在的位置”定位,核心生成的 config.json、预处理配置和测试配置应只用于核对,不要直接覆盖原文件。查看日志和存储位置说明
  5. 检查 DNS 和域名解析策略。在“设置 → 路由设置”查看“域名解析策略”,在“设置 → DNS 设置”检查直连 DNS、远程 DNS 和代理目标解析策略。v2rayN 官方界面说明指出,Xray 的 DNS 配置在路由阶段可用于 IP 规则匹配;sing-box 的直连 DNS 和远程 DNS 还参与节点域名、直连目标或代理目标的解析。
  6. 按核心检查策略。Xray 的 AsIs 不主动解析域名,IPIfNonMatch 在没有其他规则命中后再解析,IPOnDemand 遇到 IP 条件时解析。若使用“国内 IP 直连、其他代理”,可先从 IPIfNonMatch 开始验证;若当前规则集或 DNS 结构不同,改动前应保存原值,最终行为以日志为准。查看 Xray domainStrategy 官方说明
  7. 检查 IPv6、UDP 和 QUIC。域名可能同时解析出 IPv4 和 IPv6;只写 network:tcp 的规则不会匹配 UDP。阻断 UDP 443 后,应用可能回退到 TCP,也可能直接失败,不能把 TCP 页面打开当作 UDP 已验证。
  8. 最后排除应用自身设置。浏览器扩展、应用独立代理、进程级代理和安全软件都可能改变入口。若使用 TUN,确认应用进程没有被“路由排除地址”或其他排除设置绕过。

最小回退方案是:只保留一条指定域名规则和一条 network:tcp,udp 兜底规则,关闭 TUN,仅开自动配置系统代理;确认日志命中后,再一次只增加一个条件。

地区规则和规则文件:不要默认所有分类都存在

如果读者不在中国大陆,或只是想按其他地区分类分流,不应直接把 geosite:cn 和 geoip:cn 当作全球通用答案。Xray 官方文档说明,geosite: 使用本地 geosite.dat 中的预定义域名分类,分类名称必须实际存在;不同规则文件的标签覆盖范围可能不同。查看 Xray 预定义域名列表说明

例如,配置中若实际存在 geoip:ir 或 geosite:category-ru,可以把它们作为示例地区分类;但当前资料无法证明每个安装包或每份规则文件都包含这些标签,因此使用前请在当前配置或规则文件中核对,未找到时写“需核实”,不要直接导入。sing-box 则应优先检查当前可用的 rule_set 名称,而不是照搬 Xray 分类。

区域化配置的通用写法仍然是:目标地区域名规则放前、目标地区 IP 规则放后、局域网规则优先、最后放明确的代理或直连兜底。规则文件更新后要重新检查标签,因为远程规则来源、分类命名和内容都可能变化。

结论:先验证入口,再验证规则

v2rayN 路由规则设置可以固定成四层:系统代理或 TUN 是否把流量送进核心;规则是否按从上到下顺序匹配;出站标签是否真实存在;DNS、IPv6、UDP 和核心字段是否与当前配置一致。浏览器分流先用“自动配置系统代理 + 绕过大陆”,需要国内直连、其他代理时使用 geosite:cn、geoip:cn 加最后的 proxy 兜底;指定少数网站时,把 domain: 或 full: 规则放在 direct 兜底前。

切换 sing-box 后,不要直接粘贴 Xray 的 outboundTag、geosite:cn 或数组结构,应按 sing-box Route Rule 和 rule-set 文档重新组织。保存原配置、一次只改一个变量,并用日志确认目标与出站,是最小可回退的排查方式。

完成路由设置后,可继续用本站的 v2rayN 节点测速 页面区分节点问题与分流问题;如果浏览器整体打不开,再查看 连接问题排查。

常见问题

v2rayN 路由规则在哪里设置?

Windows 版通常可从主界面底部的路由功能下拉框选择预置模式,也可以进入“设置 → 路由设置”添加、编辑或导入规则。不同版本菜单文字可能变化,进入后应确认页面标题和当前核心类型。

v2rayN 国内直连、其他走代理怎么设置?

先确认当前使用的是 Xray 核心,并确认出站标签中存在 direct 和 proxy。自定义规则中把 geoip:cn、geosite:cn 指向 direct,最后添加 network: tcp,udp 指向 proxy;规则顺序必须是国内规则在前、proxy 兜底在后。分类文件是否包含这些标签需要在当前配置中核对。

只想让一个网站走代理,应该用什么规则?

使用 domain:example.com 可匹配 example.com 及其子域名;使用 full:login.example.com 只匹配完整域名。把规则指向实际存在的 proxy 出站,并放在 direct 兜底规则之前。

v2rayN 规则命中了,为什么应用还是直连?

先看主界面日志有没有该应用的连接记录。没有记录时,优先检查应用是否读取系统代理、是否设置了独立代理,以及 TUN 是否启用并接管流量;有记录但出站错误时,再检查规则顺序、标签和核心类型。

v2rayN 要不要同时开启系统代理和 TUN?

普通浏览器分流先只开系统代理,便于排查。应用不读取系统代理时再启用 TUN。只有明确需要浏览器使用系统代理、其他应用由 TUN 接管时才考虑同时开启;若出现循环代理或 DNS 异常,先关闭系统代理,仅保留 TUN 做单变量测试。

Xray 规则可以直接导入 sing-box 吗?

不能默认直接导入。Xray 常用 outboundTag、domain、ip 和 geosite,sing-box 使用 action、outbound、domain_suffix、domain_keyword、domain_regex 和 rule_set 等结构。切换核心后应按对应官方文档重新编写。

v2rayN 的域名解析策略选哪个?

Xray 中 AsIs 不主动解析域名,IPIfNonMatch 在未匹配后再为 IP 条件解析,IPOnDemand 遇到 IP 条件时解析。对于需要国内 IP 分流的场景,可先保存原值并尝试 IPIfNonMatch;最终应以当前规则、DNS 设置和日志结果为准。

广告拦截和 UDP 443 规则怎么写?

Xray 可使用 geosite:category-ads-all 指向 block,并用 port 443 加 network udp 指向 block。广告分类是否完整取决于当前规则文件;UDP 443 规则也不能代表所有 QUIC 流量都被识别。

相关阅读

参考资料

  1. GitHub - 2dust/v2rayN:桌面客户端与项目仓库
  2. Description of system proxy routing - 2dust/v2rayN Wiki
  3. Description of custom routing rules - 2dust/v2rayN Wiki
  4. Description of some ui - 2dust/v2rayN Wiki
  5. Routing RuleObject - Project X / Xray 官方文档
  6. Routing - Project X / Xray 官方文档
  7. Route Rule - sing-box 官方文档
  8. Route - sing-box 官方文档
  9. Tun - sing-box 官方文档