v2rayn 设置路由规则:指定网站代理、直连与不生效排查
简答:在 v2rayN 中打开“设置 → 路由设置”,先选择系统代理或 PAC,再新增域名、IP 或进程规则并调整顺序;保存后重启核心,用日志和实际访问确认命中结果。
定义:v2rayN 路由规则是根据域名、IP、端口、协议或进程等条件,把流量交给代理、直连或阻断出口的匹配配置。
先看结论:v2rayn 设置路由规则要改哪几处
如果你已经导入节点,但指定网站没有按预期代理或直连,优先检查三个位置:系统代理是否接管流量、“设置 → 路由设置”中的规则顺序、当前核心是否支持所选规则。v2rayN 官方说明显示,系统代理负责把部分应用的流量送入核心,路由规则再决定流量使用哪个出站连接;只改路由规则而没有启用系统代理,并不能让所有应用自动进入 v2rayN。
本文以 v2rayN 官方 Wiki 的界面说明和 Xray 路由文档为依据。v2rayN 的不同版本、Xray 核心和 sing-box 核心可能存在菜单或字段差异,遇到界面不一致时,应以当前版本实际显示的菜单为准。
- 本文承诺一:给出“设置 → 路由设置”的完整操作闭环。
- 本文承诺二:解释域名、IP、进程名和兜底规则的常用写法。
- 本文承诺三:说明系统代理、PAC 与 TUN 的接管范围。
- 本文承诺四:提供规则不生效时的日志、DNS、IPv6 和优先级排查方法。
| 你的目标 | 建议动作 | 注意点 |
|---|---|---|
| 大多数浏览器流量按规则分流 | 开启“自动配置系统代理”,再配置路由 | 只影响遵循系统代理的应用 |
| 只让某个域名走代理 | 新增 Domain 规则,出口选择 proxy | 规则要放在兜底规则之前 |
| 让局域网地址直连 | 使用 private 域名或 private IP 规则 | 确认 DNS 和局域网网段没有冲突 |
| 覆盖不使用系统代理的应用 | 考虑启用 TUN | 需要管理员权限,并检查路由排除地址 |
进入路由设置并选择接管方式
在 v2rayN 主界面打开设置,进入“设置 → 路由设置”。如果你的目标只是让浏览器或支持系统代理的桌面应用按规则分流,先在系统代理相关选项中选择“自动配置系统代理”。官方 Wiki 还列出了 PAC 模式:PAC 文件会根据规则决定某个请求走本地网络还是转发给核心。
- 启动 v2rayN,并确认已经选择一个可用配置。
- 打开设置 → 系统代理或对应的代理设置区域,选择“自动配置系统代理”;如果只想让部分请求进入核心,可选择 PAC 模式。
- 进入设置 → 路由设置,先查看当前默认规则集。首次使用时,官方说明通常已经生成默认规则集,不必立即重复导入。
- 如果要添加自定义分流,使用路由规则区域中的新增、编辑、导入或导出功能。
- 保存后重新启动核心或重启服务,再进行访问验证。
系统代理不等于 TUN。系统代理主要覆盖浏览器等遵循操作系统代理设置的应用;PAC 是按脚本返回直连或代理;TUN 则通过虚拟网卡接管更广泛的系统流量。若启用 TUN,官方 Wiki 说明 Windows 下通常需要管理员权限;出现无法联网时,还要检查 TUN 的协议栈、MTU 和路由排除地址。
新增规则:域名、IP、进程名分别怎么写
v2rayN 官方自定义规则示例使用 domain、ip、port、network、outboundTag 等字段。界面添加规则时,建议一条规则只填写一种主要匹配条件:域名、IP 或进程名不要混在同一条里,否则容易误判实际命中范围。
| 匹配目标 | 常见写法 | 适用场景 |
|---|---|---|
| 域名及其子域名 | domain:example.com | 让 example.com 及其子域名使用同一出口 |
| 完整域名 | full:example.com | 只匹配完整的 example.com |
| 域名关键词 | keyword:example | 按域名字符串包含关系匹配,范围较宽 |
| 预定义域名集合 | geosite:cn | 按 GeoSite 数据中的分类匹配 |
| 单个 IP 或网段 | 192.0.2.0/24 | 让指定地址段直连或代理 |
| 预定义 IP 集合 | geoip:private | 匹配私有地址、局域网等范围 |
| 应用进程 | process 填写进程名 | 只对某个程序的流量设置出口 |
域名前缀的含义来自 Xray 官方路由文档:domain:匹配域名及子域名,full:匹配完整域名,keyword:按字符串包含关系匹配,regexp:使用正则表达式,geosite:调用预定义域名列表。IP 条件可以使用单个 IP、CIDR 网段或 geoip: 分类。
如果要让某个指定网站走代理,可在新增规则中填写域名,例如 domain:example.com,将出口动作设置为 proxy。如果要让内网地址直连,可使用 geoip:private 或 geosite:private,出口设置为 direct。如果需要阻断某类域名,出口可以设置为 block,但建议先用一个明确、可撤销的域名规则测试。
规则顺序和兜底规则:为什么新增后仍然不生效
路由规则不是“越具体越自动优先”。Xray 官方文档说明,连接会按照规则数组从上到下判断,遇到第一个生效规则后就停止继续匹配;v2rayN 官方 Wiki 也明确提醒,新增规则后需要调整规则先后顺序。
- 把明确的阻断规则放在前面,例如特定广告域名或测试域名。
- 把明确的直连规则放在通用代理规则之前,例如局域网、公司内网或指定国内服务。
- 把指定域名代理规则放在“全部流量代理”这类兜底规则之前。
- 最后再放兜底规则。Xray 文档指出,如果没有任何规则命中,流量默认由第一个 outbound 发出;显式设置兜底规则更容易理解和排查。
一个简化的逻辑顺序可以是:block 特定域名 → direct 局域网 → direct 指定域名 → proxy 指定域名 → proxy 兜底。如果把代理兜底放在第一行,后面的直连规则通常不会再有机会匹配。
另外,多个条件同时填写时通常是“同时满足”才命中。例如同时填写域名、端口和网络类型,必须全部满足;如果只是想按域名分流,不要无意中再填入端口或协议条件。
保存后如何验证:不要只看“已连接”
设置完成后,建议按以下顺序验证,避免把节点连接成功误认为路由规则已经生效:
- 确认当前配置已经启动,并确认系统代理或 TUN 的接管方式确实开启。
- 访问一个明确属于你新增规则的域名,记录页面是否能打开,以及出口地址是否符合预期。
- 再访问一个没有命中自定义规则的域名,用来确认兜底规则是否接管。
- 打开 v2rayN 主界面的信息栏查看核心日志;如果启用了“日志存到文件”,官方 Wiki 说明日志会保存到
guiLogs文件夹。 - 如果规则依赖 IP、GeoIP 或 GeoSite,检查相关数据是否存在、是否过旧,以及当前核心是否按预期解析域名。
如果网页能打开但分流不对,优先检查规则顺序和 DNS 解析策略;如果只有某个应用不受规则影响,先判断它是否遵循系统代理。若该应用完全忽略系统代理,可在确认风险和权限影响后测试 TUN,但不要同时频繁切换多个接管方式,否则很难判断是哪一层配置产生了结果。
路由规则不生效的排查清单
- 规则没有保存:重新打开“设置 → 路由设置”,确认新增条目仍在,并检查启用状态。
- 规则顺序错误:将具体域名、IP 或进程规则移动到通用规则和兜底规则之前。
- 系统代理未开启:浏览器没有进入核心时,路由规则自然不会命中。
- 应用不遵循系统代理:检查该应用自身的代理设置,或使用 TUN 进行单独测试。
- 域名写法过宽或过窄:需要匹配子域名时使用
domain:,只匹配根域名时考虑full:,不要随意使用过宽的keyword:。 - DNS 造成判断偏差:使用 IP 或 GeoIP 规则时,查看 DNS 设置和域名解析策略;Xray 的
domainStrategy会影响是否在匹配 IP 条件时解析域名。 - IPv6 没有纳入规则:如果只写了 IPv4 网段,但目标优先使用 IPv6,补充对应 IPv6 CIDR 或先确认测试环境的地址族。
- QUIC 或 UDP 行为不同:如果规则只写了 TCP,使用 UDP 或 QUIC 的应用可能不会命中;需要时检查
network条件并确认核心支持情况。 - 核心类型不一致:Xray 与 sing-box 的规则集、DNS 和部分字段支持并不完全相同,先确认当前配置实际使用的核心。
排查时一次只改一个变量:先关闭自定义规则验证基础代理,再恢复一条规则;随后逐条增加。这样可以区分是接管范围、规则匹配、DNS 解析还是核心差异导致的问题。
最后核对:2026-10-26
v2rayN 设置路由规则的关键不是复制一份复杂配置,而是完成“选择接管方式 → 新增匹配条件 → 设置出口 → 调整顺序 → 重启核心 → 查看日志和实际访问结果”的闭环。最常见的错误是系统代理没有接管流量、兜底规则放在前面、域名前缀写错,以及把 Xray 的行为直接套用到 sing-box。
本文为第三方使用指南,不是 v2rayN 或任何节点服务的官方页面。若你还需要比较不同线路的延迟、丢包和实际访问表现,可以继续参考站内的节点延迟、下载与丢包测试方法;如果已经连接但网页打不开,可查看代理连接成功但网页打不开的排查步骤。
常见问题
v2rayN 路由规则在哪里设置?
打开 v2rayN 的“设置 → 路由设置”。先确认系统代理、PAC 或 TUN 的接管方式,再在路由规则区域新增、编辑、导入或导出规则。不同版本菜单文字可能略有差异。
为什么新增了域名规则,网站还是直连?
先检查系统代理是否开启,再检查域名规则是否位于通用规则和兜底规则之前。随后确认域名写法,例如需要匹配子域名时使用 domain:,并重启核心后重新访问。
domain、full 和 keyword 有什么区别?
domain:example.com 匹配 example.com 及其子域名;full:example.com 只匹配完整域名;keyword:example 按字符串包含关系匹配,范围更宽,误匹配概率也更高。
系统代理、PAC 和 TUN 应该怎么选?
浏览器等遵循系统代理的应用,通常先用自动配置系统代理;需要按脚本决定直连或代理时使用 PAC;应用不遵循系统代理或需要覆盖更多系统流量时,再考虑 TUN,并检查管理员权限、MTU 和路由排除地址。
v2rayN 路由规则不生效时去哪里看日志?
先看主界面的信息栏;如果开启了保存日志功能,v2rayN 官方 Wiki 说明核心日志会写入 guiLogs 文件夹。结合规则顺序、DNS 解析和当前核心类型一起判断。