导入订阅或配置
准备可用的订阅地址或客户端支持的分享链接。在 v2rayN 的“订阅分组设置”中添加来源,保存后执行订阅更新;单个分享链接可从剪贴板导入。菜单位置以实际界面为准。导入完成后检查服务器列表,确认不是空响应或普通网页内容。
v2rayNG 可通过添加入口选择从剪贴板导入或管理订阅。配置中的地址、端口、用户标识和传输参数需要来自同一份有效信息,不能从不同教程中各取一段拼成连接。订阅地址通常包含访问凭据,不宜放进公开截图或问题描述。
先确定操作系统,再确定处理器架构。桌面选择 v2rayN,Android 优先查看 v2rayNG;已有 V2Fly 配置时,可比较 v2flyNG 的适配情况。
Windows 的 v2rayN 桌面版采用跨平台界面,WPF 版保留经典桌面交互。两种界面的菜单位置可能不同,导入订阅、选择服务器与设置系统代理的基本顺序一致。首次使用宜先选定一种界面,避免在两个实例之间反复修改端口和系统代理。安装前确认系统要求;迁移配置时先导出原有设置,再检查新实例实际使用的内核与工作目录。
macOS 用户可在系统的“关于本机”中查看芯片信息,Apple Silicon 与 Intel 对应不同安装入口。Linux 用户需要同时区分发行版的包格式和设备架构:Debian、Ubuntu 系通常使用 deb,Fedora 等发行版通常使用 rpm。安装包格式与处理器架构是两个独立条件,不能仅凭文件后缀判断是否适用。桌面启动方式与依赖处理见平台安装说明。
Android 的 v2rayNG 使用 Xray 内核,适合按 Xray 字段说明理解连接参数;v2flyNG 属于 V2Fly 内核方向的备选。多数较新的设备可选择 arm64,不能确认架构时再查看通用包说明。客户端名称相近并不表示支持的传输组合完全相同,导入已有配置前应确认协议、传输层与安全设置,尤其不要把某个内核的扩展字段直接视为所有客户端都能识别的通用字段。
安装完成只代表程序可以运行,不代表已经具备可用的远端配置。订阅地址、服务器地址及认证参数需要由使用者自行准备。首次导入后先检查配置列表是否出现有效条目,再查看内核日志;不要同时开启多个代理客户端。若列表为空,应先定位导入格式或订阅响应问题,而不是直接修改路由规则。客户端选择的详细差异见三款客户端横向评测。
按流量路径定位字段:应用先连接入站,路由选择出口,出站完成连接。订阅与系统代理属于客户端管理层,不是 JSON 根对象中必然存在的同名字段。
入站定义内核接收连接的方式。应用使用 SOCKS 代理时,需要把地址与端口指向对应入站;仅启动内核不会自动让全部应用改用这个入口。示例监听回环地址,只供本机访问,并用 tag 标记来源,便于后续路由引用。排查连接被拒绝时,先确认端口是否正在监听、是否被其他进程占用,再检查应用填写的代理类型。客户端生成的端口可能不同,应以实际设置为准,不要直接照抄示例数值。
{
"inbounds": [{
"tag": "socks-in",
"listen": "127.0.0.1",
"port": 10808,
"protocol": "socks",
"settings": { "udp": true }
}]
}
阅读入站配置
出站定义内核如何向目标建立连接,可以是远端代理,也可以是直连或阻断。路由中的 outboundTag 必须对应已经声明的 tag,拼写与大小写都要一致。示例只展示直连和阻断,不包含远端连接参数,也不能替代完整代理配置。排查时应把服务器地址、认证信息、传输层和安全设置分开检查。图形客户端通常依据服务器条目生成远端出站,修改原始 JSON 前应确认下一次保存设置是否会覆盖手工内容。
{
"outbounds": [
{
"tag": "direct",
"protocol": "freedom",
"settings": {}
},
{
"tag": "block",
"protocol": "blackhole",
"settings": {}
}
]
}
阅读出站配置
路由将已经进入内核的流量分配给出站。规则从前向后匹配,较宽泛的条件放在前面,可能让后面的细分规则没有机会生效。示例把私有地址交给 direct 出站,依赖对应的出站标签与地理数据文件。domainStrategy 决定路由匹配何时需要解析域名,不等于系统 DNS 设置。验证规则时,应先确定应用连接确实进入客户端,再查看命中的目标和出口;未进入入站的流量不会受这里的规则控制。
{
"routing": {
"domainStrategy": "AsIs",
"rules": [{
"type": "field",
"ip": ["geoip:private"],
"outboundTag": "direct"
}]
}
}
阅读路由规则
dns 段配置内核使用的解析器,并不自动替换所有应用的解析路径。浏览器自带的加密解析、系统解析缓存与应用直接发送的查询,可能沿着不同路径工作。示例只说明 servers 的数组结构,不代表适合所有网络环境。增加按域名选择解析器的规则时,还需理解 domains、expectIPs 与路由之间的关系。遇到域名访问异常,应比较解析结果、连接目标和实际出口,避免只更换解析器却忽略错误的路由条件。
{
"dns": {
"servers": [
"1.1.1.1",
"8.8.8.8"
]
}
}
阅读 DNS 配置
订阅分组由客户端管理,用于区分配置来源和更新范围,不是通用内核 JSON 中的订阅字段。更新失败时,先检查地址是否仍有效、返回内容是否为支持的格式,再判断更新请求是否需要经过已有代理。订阅更新通常只改变服务器条目,不应被理解为自动修复所有路由和 DNS 设置。下面的 JSON 是内核日志片段,可辅助观察导入后启动情况,并非订阅配置。分享日志或截图前,应移除订阅地址及认证信息。
{
"log": {
"loglevel": "warning"
}
}
查看订阅导入步骤
系统代理用于通知遵循系统设置的应用使用本地代理地址,不是内核路由模式,也不保证接管所有程序。客户端中的“设置系统代理”与“清除系统代理”影响系统入口,分流规则则决定流量进入之后的去向。示例展示可承接 HTTP 代理请求的本地入站,不能单凭这段 JSON 修改系统设置。若浏览器可以访问而其他应用失败,应先确认应用是否读取系统代理,或是否需要单独填写地址,而非立即更换服务器。
{
"inbounds": [{
"tag": "http-in",
"listen": "127.0.0.1",
"port": 10809,
"protocol": "http",
"settings": {}
}]
}
查看系统代理说明
这些片段用于识别字段的职责,不是一组可以直接拼接后连接远端的配置。完整文件还需要有效的远端出站、相互对应的标签及适配当前内核的参数。相同根字段应合并到同一个对象或数组,不能把多个 JSON 对象直接首尾相接。标准 JSON 不接受注释和尾随逗号;文本编辑器显示格式整齐,也不代表内核能够识别字段。
使用图形客户端时,优先在相应设置页面修改常用选项,再观察生成结果。直接编辑运行目录里的配置可能只在本次启动有效,下次切换服务器或保存设置后会被重建。需要自定义配置时,应明确文件由谁管理、什么时候加载、错误记录写到哪里。配置参考按结构总览、入站、出站、路由、DNS 与策略逐段展开,适合在已完成首次连接后继续阅读。
打开 JSON 配置参考先建立最小可用配置,再逐项增加分流条件。每次只改一个影响连接的设置,保留可以回退的配置副本。
准备可用的订阅地址或客户端支持的分享链接。在 v2rayN 的“订阅分组设置”中添加来源,保存后执行订阅更新;单个分享链接可从剪贴板导入。菜单位置以实际界面为准。导入完成后检查服务器列表,确认不是空响应或普通网页内容。
v2rayNG 可通过添加入口选择从剪贴板导入或管理订阅。配置中的地址、端口、用户标识和传输参数需要来自同一份有效信息,不能从不同教程中各取一段拼成连接。订阅地址通常包含访问凭据,不宜放进公开截图或问题描述。
在列表中选定要使用的服务器,并确认内核能够启动。桌面端根据应用需求设置系统代理,路由先沿用明确可理解的预设。系统代理控制应用如何进入客户端,路由模式控制进入后的出口;两者需要分别检查,不能把名称相近的选项视为同一开关。
Android 首次启动连接时需要确认系统的 VPN 授权。授权表示允许客户端创建本地流量入口,不表示远端连接已经成功。如果设备上已有其他 VPN 连接,应先处理连接冲突。初次验证阶段避免同时引入复杂自定义规则,以便缩小排查范围。
使用实际需要的应用发起请求,同时查看客户端日志。内核启动成功、服务器可连接和某个应用实际经过代理,是三个不同检查点。若日志中没有对应请求,先检查应用入口;若有请求但连接失败,再检查服务器参数、解析结果与网络可达性。
不要只依据列表里的测试结果判断全部应用是否正常。不同请求可能使用不同协议和解析路径。确认基本连接后,再逐项启用域名分流、应用规则或自动更新。测试结束准备退出桌面客户端时,检查系统代理是否已清除,避免应用继续连接已经停止监听的本地端口。
项目、内核与图形客户端是三个层次。选型先看需要的协议与配置,再看操作系统和管理方式。
Project V 是一组围绕网络通信构建的工具与组件的项目背景,V2Ray 是其中广为使用的核心名称。内核负责接收连接、解析协议、匹配路由并建立出站连接,图形客户端则负责把这些能力组织成可操作的设置界面。日常所说的“安装 V2Ray”,经常实际指安装一个管理内核的客户端。因此,遇到某个菜单或订阅操作问题时,应先确定正在使用哪个客户端,而不是仅根据 V2Ray 这个总称寻找按钮。
这种分层解释了同一份技术文档为何可能需要对应不同界面。内核文档讨论字段是否合法,客户端文档讨论字段如何由界面生成,两者解决的问题不同。一个客户端可以调整内核选择、生成配置并启动进程,但不会因此让不同内核的全部功能自动变得一致。本站把首次安装和常用操作放在使用指南,把原始字段与相互依赖放在配置参考,便于按问题所在层级查阅。
V2Fly 是 V2Ray 社区维护方向的重要组成部分,Xray 则是在相关代码基础上发展出的内核分支。它们共享一部分历史与配置概念,同时各自演进协议实现、传输能力和字段约束。阅读 JSON 示例时,可以先借助 inbounds、outbounds、routing 等共同结构理解职责,再确认具体字段是否属于当前内核支持的范围。不能因为根对象名称相同,就推断内部选项可以任意互换。
选择内核应以现有配置要求为依据,而不是把分支名称当作通用的性能结论。服务端要求的协议、安全层与传输组合需要在客户端内核中得到对应支持;缺少其中一项,界面能够保存条目也不代表可以连接。涉及某个分支扩展功能时,优先阅读对应说明,记录实际运行的内核信息。发生兼容问题时,区分“字段不被识别”和“参数被识别但连接失败”,可以减少无关修改。
v2rayN 面向 Windows、macOS 和 Linux 桌面,提供服务器管理、订阅分组、系统代理与路由设置等操作入口;具体内核选项随客户端功能而定。v2rayNG 面向 Android,采用 Xray 内核;v2flyNG 面向 Android,采用 V2Fly 内核方向。三者均属于开源客户端,但图形界面、权限模型与配置存储方式并不相同。桌面设置截图不能直接作为 Android 菜单位置的依据,迁移时宜核对连接参数而不是照搬整个工作目录。
开源意味着实现与许可条件可以被审阅,并不替代配置判断。客户端软件、内核程序以及运行中使用的数据文件,可能分别遵循不同的开源许可。V2Fly 的 v2ray-core 使用 MIT 许可,Xray-core 使用 MPL-2.0 许可;客户端及其依赖的再分发要求需要分别阅读对应许可文本。使用者关注的重点应是来源、功能范围和配置兼容性,而不是只凭一个开源标签判断所有组件具有相同条件。
客户端更新可能改变界面和配置生成逻辑,内核更新可能改变协议实现与字段要求,订阅更新则主要刷新远端服务器信息。三种更新面向不同对象,不应把“订阅已更新”理解为程序已经更新,也不应期待更新客户端自动修复已失效的订阅地址。更新之前先记录使用中的设置,导出必要配置;更新之后检查启动日志、内核选择与路由数据的加载情况,再进行实际应用请求验证。
下载页集中提供平台入口和安装说明,首页保留稳定的使用路径,不在这里固定客户端版本信息。处理配置问题时,应结合实际安装的客户端、当前运行的内核及服务端要求判断。文档里的 JSON 片段用于说明结构,执行环境中的默认值、生成方式和支持范围仍需逐项确认。理解这些边界后,安装、迁移和排查可以围绕明确的对象进行,而不是在多个设置页面之间反复试错。
围绕桌面部署、订阅维护与 DNS 分流整理操作细节。先完成基础连接,再按具体问题阅读对应记录。
在 Ubuntu、Debian、Fedora 等发行版上用 deb 或 rpm 包安装 v2rayN,处理依赖与权限,并通过桌面自启动项实现登录后自动运行。
阅读文章 →梳理订阅更新失败的常见原因:链接过期、更新时未走代理、证书与时间不同步,并演示在 v2rayN 与 v2rayNG 里设置自动更新。
阅读文章 →讲解 dns 段的 servers、domains、expectIPs 字段,如何配合 geosite 规则让国内外域名分别走不同解析,并减少错误解析结果。
阅读文章 →