V2Ray、Xray路由分流策略全解

V2Ray、Xray路由分流策略全解
沧浪同学驾驭流量的艺术:V2Ray/Xray 路由分流策略全解 (以 V2RayN 为例)
前言
在科学上网的世界里,”能连上”只是温饱线,”连得快、分得清”才是小康水平。
很多新手在使用 V2RayN 等客户端时,往往只知道开启 “自动配置系统代理” 或 “全局模式”。但你是否遇到过这样的尴尬:挂着梯子下载国内资源速度慢如蜗牛?访问公司内网或学校教务系统打不开?想看 Netflix 却提示使用了代理?
这一切的根源,都在于——路由分流(Routing)。
本文将带你从零开始,深入理解 V2Ray/Xray 的路由机制,掌握从语法到策略的全部细节,打造一套专属于你的完美网络分流方案。
第一章:技术考古与演进 —— 从 PAC 到 智能路由
要理解现在的路由策略,我们必须先回头看看它是如何进化而来的。
1.1 远古时代:全局与 PAC
在 Shadowsocks 早期,分流主要依靠 PAC (Proxy Auto-Config) 文件。
- 全局模式:就像一刀切,所有流量(无论是访问百度还是谷歌)全走代理。缺点显而易见:访问国内网站慢,浪费服务器流量,且无法访问本地局域网设备。
- PAC 模式:通过一个 JS 脚本(PAC文件),里面包含了一个长长的域名列表(通常是 GFWList)。浏览器在访问网址前先查表,表里有的走代理,没有的直连。
- 局限性:PAC 仅作用于浏览器 HTTP/HTTPS 层,对电脑上的游戏客户端、即时通讯软件(非 HTTP 协议)往往无效。
1.2 近代革命:V2Ray 的路由功能 (Routing)
V2Ray 的出现带来了一场革命。它不再依赖系统层面的 PAC,而是在内核层面内置了一个强大的路由引擎。
- 全协议接管:V2Ray 作为一个核心(Core),可以接管 TCP、UDP 等所有流量。
- 多维匹配:不再仅仅依据域名,还可以依据 IP、端口、协议类型、源地址等进行判断。
- Geosite/Geoip 概念诞生:这是 V2Ray 对业界的巨大贡献。它将成千上万个域名和 IP 按“类别”或“国家”打包成
.dat文件。你不需要写baidu.com,只需要写geosite:cn,即可包含数万个中国网站域名。
1.3 现代巅峰:Xray 的增强与性能优化
Project X (Xray) 从 V2Ray 分叉出来后,进一步强化了路由性能:
- **MPT (Multi-Pattern Search)**:Xray 优化了匹配算法,即使有几十万条规则,也能在微秒级完成匹配,几乎不消耗 CPU。
- 更丰富的语法:引入了逻辑非、属性匹配等高级玩法。
第二章:核心逻辑 —— 流量的奇幻漂流
在使用 V2RayN 编写规则前,你必须在脑海中建立起流量处理的流程图。
2.1 这里的 “路由” 不是 路由器
家里的路由器(Router)是将数据包从 WAN 口转发到 LAN 口。V2Ray 的路由(Routing)是指:根据预定义的规则,决定一个数据包应该由哪个“出站代理(Outbound)”发出。
2.2 V2Ray/Xray 的三要素
- **Inbound (入站)**:数据从哪里来?(比如来自你浏览器的 SOCKS5 请求)。
- **Routing (路由)**:大脑。判断数据去哪里。
- **Outbound (出站)**:数据去哪里?
proxy(代理):发给 VPS。direct(直连):不走代理,直接由本机网卡发出。block(阻断):直接丢弃(如屏蔽广告)。
2.3 最关键的难点:域名解析策略 (DNS)
这是 90% 的人配置失败的原因。
当你在浏览器输入 www.google.com 时,V2RayN 截获了这个请求。此时路由引擎面临一个抉择:我是根据“域名”分流,还是根据“IP”分流?
策略 A:只看域名 (
AsIs)- 规则写了
google.com-> 走代理。 - 引擎一看是 Google,直接扔给代理出站。
- 优点:速度快,不需要在本地进行 DNS 解析。
- 规则写了
策略 B:IP 优先 (
IPOnDemand)- 规则写了
geoip:cn(中国 IP) -> 直连。 - 引擎拿到
www.google.com,它不知道这个域名是不是中国 IP。 - 动作:引擎必须先在本地进行一次 DNS 解析,得到 IP(比如
142.250.x.x)。 - 然后判断:这个 IP 是
cn吗?不是。 - 结果:走默认规则(代理)。
- 缺点:如果本地 DNS 被污染(比如解析 Google 得到了一个假 IP),可能导致连接失败或分流错误。
- 规则写了
黄金法则:
在 V2RayN 中,我们通常希望先匹配域名(因为域名准确且快),匹配不到域名时,再解析 IP 进行匹配。这在配置中被称为IPIfNonMatch策略。
第三章:语法百科全书 —— 规则怎么写?
这是本文的重点。无论是在 V2RayN 的 GUI 中,还是直接手写 config.json,核心语法是一致的。
3.1 基础匹配模式
在 V2RayN 的规则编辑器中,每一行代表一个规则。一个规则通常包含:匹配类型:匹配内容
1. 域名匹配 (Domain)
这是最常用的方式。
子域名匹配 (
domain:)- 语法:
domain:baidu.com - 含义:匹配
baidu.com及其所有子域名(如www.baidu.com,map.baidu.com)。 - 推荐指数:⭐⭐⭐⭐⭐
- 语法:
完整匹配 (
full:)- 语法:
full:www.google.com - 含义:必须完全一模一样,少一个字母都不行。
- 用途:精准控制某个特定页面。
- 语法:
预定义域名列表 (
geosite:) —— 神器- 语法:
geosite:category - 含义:引用 V2Ray/Xray 自带的
geosite.dat文件中的列表。 - 常用代码:
geosite:cn:包含了绝大多数中国大陆网站。geosite:google:Google 旗下所有域名(YouTube, Drive 等)。geosite:category-ads-all:包含了全球常见的广告域名(用于去广告)。geosite:netflix:Netflix 相关的域名。geosite:openai:ChatGPT 相关的域名。
- 语法:
正则表达式 (
regexp:)- 语法:
regexp:\\.goo.*\\.com$ - 含义:使用标准正则表达式匹配。
- 警告:性能开销大,且容易写错,非专家不建议使用。
- 语法:
2. IP 匹配 (IP)
当域名规则都没匹配上,或者请求直接就是个 IP 地址时,会用到这个。
具体 IP 或网段
- 语法:
1.1.1.1或192.168.0.0/16 - 用途:公司内网分流,或特定服务器直连。
- 语法:
预定义 IP 列表 (
geoip:) —— 神器- 语法:
geoip:code - 含义:引用
geoip.dat文件。 - 常用代码:
geoip:cn:所有中国大陆的 IP 地址。geoip:private:私有局域网 IP (192.168.x.x, 10.x.x.x, 127.0.0.1 等)。必须设置为直连,否则无法访问局域网。geoip:us:美国 IP。
- 语法:
3. 其他高级匹配
port:80:匹配目标端口。protocol:http:匹配协议类型(http, tls, bittorrent)。
第四章:实战 —— 在 V2RayN 中配置分流
打开你的 V2RayN (建议升级到 6.0 以上版本),我们将抛弃傻瓜式的“绕过大陆”,手搓一套精细化规则。
4.1 认识 V2RayN 的路由设置界面
点击主界面的 “设置” (Settings) -> **”路由设置” (Routing Setting)**。
你会看到几个预设策略:
- **基础功能 (Basic)**:这里只能选简单的“一键绕过”。
- **高级功能 (Advanced)**:这里才是我们发挥的地方。
在 V2RayN 中,路由规则通常被抽象为三个动作:
- **Direct (直连)**:对应
outboundTag: direct - **Proxy (代理)**:对应
outboundTag: proxy - **Block (阻断)**:对应
outboundTag: block
4.2 手把手编写:万能通用规则
我们来创建一个新的规则集,目标是:去广告 + 国内直连 + 局域网直连 + 剩下的全走代理。
步骤:
- 点击 “添加” (Add) 规则。
- **别名 (Remark)**:填写 “MySmartRule”。
- **默认出站 (Default Outbound)**:选择 “代理 (Proxy)”。
- 解释:这意味着,如果下面所有的规则都没匹配上,默认就走代理(即白名单模式,适合翻墙)。
- **域名解析策略 (Domain Resolution Strategy)**:选择
IPOnDemand或IPIfNonMatch。- 建议:选
IPIfNonMatch。
- 建议:选
接下来是填写具体的规则列表 (Rule List):
(V2RayN 的规则编辑通常是双击进入编辑框,或者是拖拽排序,这里展示逻辑内容)
规则一:阻断广告 (Block Ads)
- outboundTag:
block - domain:
geosite:category-ads-all - 解释:遇到广告列表里的域名,直接掐断,节省流量且清净。
规则二:直连私有地址 (Direct Private)
- outboundTag:
direct - ip:
geoip:private - 解释:确保 192.168.x.x 这种局域网请求不走代理,否则你会打不开路由器后台或 NAS。
规则三:直连中国域名 (Direct CN Domain)
- outboundTag:
direct - domain:
geosite:cn - 解释:百度、淘宝、B站等,直接连接,速度最快。
规则四:直连中国 IP (Direct CN IP)
- outboundTag:
direct - ip:
geoip:cn - 解释:如果域名列表漏了,或者直接访问 IP,只要是中国 IP,也直连。避免腾讯会议等软件走代理导致卡顿。
规则五:特殊应用代理 (Optional - 如 OpenAI)
虽然默认是走代理,但有时我们需要指定特定的节点(如果你有多个代理节点)。
- outboundTag:
proxy(或者指定某个特定的 tag) - domain:
geosite:openai, geosite:netflix
4.3 完整的 JSON 视角 (V2RayN 最终生成的配置)
为了让你理解 V2RayN 到底干了什么,下面展示一份标准的 Xray routing 配置 JSON 片段。你可以在 V2RayN 的安装目录下的 config.json (临时生成的) 中看到类似的结构:
1 | "routing": { |
第五章:进阶技巧 —— 解决疑难杂症
5.1 为什么我设置了 geosite:cn 直连,有些国内网站还是慢?
原因:DNS 泄露或污染。
路由规则的判断依赖于“你访问的域名解析出来的 IP”。
如果你的 V2RayN 内部 DNS 设置不当,在判断 IP 规则时,可能会将国内域名解析成错误的 IP,导致 geoip:cn 匹配失败。
解决方法:
在 V2RayN 的 DNS 设置中,配置分流 DNS。
- 国外域名 -> 使用
8.8.8.8(通过代理查询 -fakedns或remote) - 国内域名 -> 使用
223.5.5.5(直接查询)
5.2 如何指定 Netflix 走特定的“美国节点”,其他走“香港节点”?
这就涉及到了 **多出站 (Multiple Outbounds)**。
- 在 V2RayN 中配置多个服务器节点。
- 在配置文件(需要手动修改 Core 配置或使用 V2RayN 的高级自定义配置)中,给不同的节点设置不同的
tag。例如:Tag “US-Proxy” 和 Tag “HK-Proxy”。 - 写路由规则:
domain: geosite:netflix->outboundTag: "US-Proxy"domain: geosite:google->outboundTag: "HK-Proxy"
5.3 调试:怎么知道我的规则生效了没?
V2RayN 底部有一个状态栏,或者你可以开启控制台日志。
- 设置日志级别为
info或debug。 - 访问一个网站。
- 查看日志输出,你会看到类似这样的条目:
[Info] [12345] proxy/socks: TCP connection to www.baidu.com:443 matches rule [geosite:cn] -> direct
这就说明,百度匹配到了geosite:cn规则,走了direct(直连)。
第六章:常用规则语法速查表 (Copy-Paste 专用)
为了方便大家直接在 V2RayN 的自定义规则框里粘贴,以下提供纯文本格式的常用组合。
场景 A:极简白名单(适合绝大多数人)
逻辑:国内直连,广告屏蔽,其他全代理。
1 | # 阻断广告 |
场景 B:针对性代理(适合只用代理上谷歌的人)
逻辑:默认直连,只有特定网站走代理。
1 | # 代理 谷歌、油管、推特、电报 |
场景 C:BT 下载防吸血
如果你开着 V2RayN 还要下载 BT,务必配置此条,否则你的梯子流量会瞬间跑光!
1 | # 阻断 BitTorrent 协议 |
第七章:技术总结与未来展望
7.1 总结
V2Ray/Xray 的路由功能是其最强大的武器。
- Geosite/Geoip 是基石,利用社区维护的庞大数据库,省去了我们手动维护 IP 表的痛苦。
- DomainStrategy 是关键,理解 “先域名后 IP” 的逻辑能避免很多连接问题。
- V2RayN 是工具,它将复杂的 JSON 配置文件可视化,但底层的逻辑依然遵循 Xray 的内核文档。
7.2 扩展阅读:Routing vs Shunting
现在的技术流已经开始探索基于 ASN (自治系统号) 的分流,或者基于进程 (Process Name) 的分流(例如:让 chrome.exe 走代理,让 wechat.exe 直连)。V2RayN 也支持基于进程的规则(app:),这为精细化控制提供了无限可能。
希望这篇文章能帮你彻底搞懂 V2RayN 的路由策略。不再做一个只会点“开启”的工具人,而是成为掌控网络流量的极客。
注:本文基于 2024-2025 年主流 V2RayN 版本与 Xray-core 编写。技术迭代较快,具体 UI 布局可能会有微调,但核心 Routing 语法逻辑长期保持稳定。

