本文速览
适合已经取得订阅地址、但不确定该粘贴到哪里或导入后看不到节点的用户。全文分别说明 v2rayN 与 v2rayNG 的菜单路径、分组方式、更新动作和格式边界,并给出从网络请求到内核配置的逐级排查方法。
先分清订阅链接、分享链接与配置文件
订阅链接通常是一个以
https:// 开头的网络地址。客户端访问该地址后,服务端返回一组节点记录;再次更新时,客户端会重新请求同一地址,并用新结果刷新对应订阅分组。它不是某个节点本身,也不等同于客户端启动后交给内核运行的最终配置。vmess://、vless://、trojan:// 和 ss:// 属于单条分享链接。一条链接一般描述一个出站节点,其中包含服务器地址、端口、认证信息、传输方式以及 TLS、REALITY 等参数。它们应通过“从剪贴板导入批量 URL”一类入口添加,而不是放进订阅地址输入框。原生 JSON 则更接近内核配置。它可能同时定义入站、出站、DNS、路由分流和日志选项,结构与聚合订阅不同。只有当订阅服务明确为 v2rayN 或 v2rayNG 提供兼容输出时,才应把接口地址作为订阅导入;网页控制台地址、登录页地址或下载到本地的普通 JSON 文件不能直接当作订阅使用。
3 类
订阅、分享链接、原生配置
200
正常接口常见 HTTP 状态
10808
v2rayN 常见本地 SOCKS 端口
60 分钟
桌面端自动更新示例间隔
| 输入内容 | 常见开头或结构 | 应使用的入口 | 更新特征 |
|---|---|---|---|
| 聚合订阅 | https:// 地址,响应为多条节点记录 |
订阅分组设置 | 可重复拉取并刷新列表 |
| 单条分享链接 | vmess://、vless://、trojan://、ss:// |
从剪贴板导入 | 不会自动跟随服务端变化 |
| 原生 JSON | 包含 inbounds、outbounds 或路由字段 |
导入自定义配置或交由内核读取 | 通常由用户自行维护 |
| 网页地址 | 打开后出现登录、套餐或管理页面 | 不能直接导入 | 客户端只会得到 HTML 文本 |
v2rayN:添加订阅分组并执行首次更新
v2rayN 6.x 与 7.x 的界面布局存在差异,但订阅管理逻辑一致:先建立订阅分组并保存地址,再主动更新该分组。只保存地址不会自动把节点写入主列表,因此“地址已经添加但列表为空”往往只是漏了首次更新。
在常见桌面界面中,可进入「订阅分组」→「订阅分组设置」,点击新增按钮后填写别名和订阅地址。别名建议按用途或来源命名,例如“日常线路”或“测试分组”,不要直接复制一长串地址作为名称。多个地址应建立为多个分组,这样更新失败时能快速定位具体来源。
复制完整地址
从订阅服务提供的客户端配置区域复制完整https://地址,确认开头、查询参数和末尾字符都没有缺失。新建订阅组
打开 v2rayN,进入「订阅分组」→「订阅分组设置」→「添加」,填写备注与订阅地址。保存设置
确认分组处于启用状态后保存。若界面提供自动更新间隔,可先填60分钟,完成首次手动更新后再按需要调整。更新当前组
返回主界面,依次选择「订阅分组」→「更新当前订阅」;需要一次刷新全部来源时选择「更新全部订阅」。选择活动节点
节点出现后双击目标条目,或通过右键菜单设为活动服务器,再开启「系统代理」或按需求启用 TUN 模式。
首次更新建议先使用直连更新。若当前网络无法访问订阅接口,而客户端中已有可用节点,可改用菜单里的“通过代理更新”选项。此动作只改变订阅请求的网络路径,不会修改节点的 VMess、VLESS、Trojan 或 Shadowsocks 参数。
自动更新适合地址长期有效且节点列表经常调整的情况。路径通常位于「订阅分组」→「订阅分组设置」→选中分组→「自动更新间隔(分钟)」。设为
60 表示每小时尝试一次,但实际执行仍受客户端运行状态、休眠和网络连接影响;关机期间不会补跑所有错过的轮次。- 只有一个订阅来源时,也建议保留独立分组,便于以后增加第二个来源。
- 更新前正在使用的节点若被服务端删除,更新后应重新选择活动节点。
- 开启系统代理后,常见本地 SOCKS 监听端口为
10808,部分旧版配置还会使用10809作为 HTTP 端口;以「设置」→「参数设置」中的实际值为准。 - 切换 Xray 内核相关设置时,可检查「设置」→「参数设置」→「Core 类型」,保存后重启内核,使新配置完整载入。
v2rayNG:在安卓端添加订阅并刷新配置
v2rayNG 使用 Xray 内核处理 VMess、VLESS、Trojan、Shadowsocks、REALITY 等配置。订阅管理位于侧边菜单的「订阅分组设置」;不同 1.10.x 小版本的按钮位置可能位于页面右上角或底部,但新增、保存、更新三个动作没有变化。
进入「订阅分组设置」后点击加号,填写备注与地址并保存。返回配置列表,再从右上角菜单选择「更新订阅」或「更新当前订阅组」。更新完成后,配置列表才会显示服务端返回的节点。点击某条配置使其成为当前项,然后使用主界面的连接按钮启动本地 VPN 服务。
推荐方案:桌面端与安卓端共用同一订阅来源
桌面端(v2rayN)
- 按来源建立订阅分组
- 设置 60 分钟更新示例间隔
- 用系统代理或 TUN 模式接管流量
安卓端(v2rayNG)
- 添加同一条订阅地址
- 打开客户端后手动刷新
- 按需要配置分应用代理
两端分别请求同一订阅接口,节点名称和协议参数通常保持一致;路由规则、当前选中节点与本地端口仍由各端独立保存。
安卓系统对后台任务有电量与网络限制,因此不要把“已设置自动更新”等同于“任意时刻都能后台拉取”。更可靠的做法是在准备切换节点或发现原节点不可用时,打开 v2rayNG 主界面并手动执行更新。更新过程结束后,观察页面提示是成功、超时、解析失败还是返回空内容。
若订阅只能通过现有代理访问,应先连接一条仍可用的配置,再在订阅设置中启用“通过代理更新”或同义选项,然后重新拉取。若列表中已经没有任何可用配置,可临时改用能够访问订阅接口的网络完成一次直连更新。
- 打开侧边菜单,进入「订阅分组设置」。
- 确认目标分组已启用,地址首尾没有空格或换行。
- 返回配置列表,执行「更新订阅」。
- 更新成功后点选目标节点,再启动连接。
- 需要限制应用范围时,进入「设置」→「分应用代理」,选择绕过或仅代理指定应用。
订阅格式要求与兼容边界
常见聚合订阅会返回经过 Base64 编码的多行分享链接,也可能直接返回逐行排列的明文 URI。v2rayN 与 v2rayNG 会先识别响应,再解析其中的协议记录。Base64 只是内容编码方式,不负责加密,也不会修复缺失字段。
VMess 记录通常包含地址、端口、用户标识、传输方式和 TLS 等字段;VLESS 还可能带有
flow、security、sni、fp、pbk 与 sid 等参数。使用 REALITY 与 XTLS Vision 时,客户端和内核都必须认识对应参数,否则可能出现节点被导入但启动时报配置错误的情况。| 响应情况 | 客户端表现 | 处理方法 |
|---|---|---|
| Base64 聚合内容 | 正常解析出多条分享链接 | 直接作为订阅分组地址保存 |
| 明文 URI 列表 | 兼容时可直接生成节点 | 确认每行都是完整协议 URI |
| 单份原生 JSON | 可能提示格式不支持或只生成一项 | 使用对应的自定义配置导入方式 |
| HTML 登录页 | 解析失败、内容为空或没有节点 | 重新复制客户端专用订阅接口 |
| 其他客户端专用 YAML | 无法按 VMess、VLESS 等分享链接解析 | 在服务端选择 V2Ray 或通用链接输出 |
| HTTP 401 或 403 | 更新失败或得到空响应 | 检查令牌有效期、账户状态和访问限制 |
另一个常见边界是重定向。订阅地址可能先返回
301 或 302,再跳转到真正的内容地址。客户端一般能够跟随标准重定向,但如果跳转目标要求浏览器登录、验证码或额外 Cookie,客户端就无法完成交互。此时应回到订阅服务的客户端配置区域重新生成专用地址。节点名称中的中文、空格和特殊符号也可能暴露编码问题。服务端应使用 UTF-8 输出;分享链接的查询参数和备注部分需要正确进行 URL 编码。若只有个别节点消失,可先检查该行是否被意外换行,再检查协议字段是否完整,而不是反复删除整个订阅分组。
- 地址必须完整保留查询参数,尤其是问号后的令牌和客户端类型参数。
- 响应应包含客户端支持的 VMess、VLESS、Trojan 或 Shadowsocks 记录。
- 节点端口应为
1至65535范围内的整数。 - REALITY 配置应同时核对服务器名称、公钥、短标识和指纹字段。
- 订阅更新不会自动覆盖客户端自己的路由分流、DNS 与本地监听设置。
导入后节点列表为空:按顺序排查
列表为空时,应先确认“请求有没有成功”,再判断“返回内容能不能解析”,最后才检查节点参数。直接重装客户端通常不能解决接口返回登录页、令牌失效或格式不兼容等问题。
第一步查看客户端更新提示或日志。如果是连接超时、域名解析失败或连接被拒绝,问题发生在网络请求阶段;如果显示更新成功但新增数量为零,则应重点检查响应格式和分组筛选。若提示无法解析 URI,则通常是内容编码、换行或协议字段不符合要求。
保存地址后为什么还是空列表?
保存只会建立订阅分组。v2rayN 还要执行「订阅分组」→「更新当前订阅」,v2rayNG 需要返回配置列表并选择「更新订阅」。
更新订阅一直提示超时?
先确认系统时间与网络正常,再尝试直连更新。已有可用节点时,先连接该节点并启用“通过代理更新”,同时检查本地
10808 端口是否被其他程序占用。提示成功却没有新增节点?
检查当前显示的订阅分组是否正确,并确认接口没有返回空白、HTML 页面或不兼容格式。若旧节点被同名新记录覆盖,新增数量也可能显示为零。
节点导入了但连接立即失败?
打开核心日志,依次核对服务器域名、远端端口、用户标识、TLS、SNI、传输方式和 REALITY 参数。导入成功不代表远端服务当前可达。
两台设备的节点数量不同?
确认两端使用的是完全相同的地址和同一订阅分组,并在两端分别手动更新。随后比较客户端版本、内核支持范围以及是否启用了节点筛选。
核对分组
确认当前查看的是刚添加的订阅组,分组处于启用状态,客户端没有只显示其他分组。检查请求
根据日志区分超时、DNS 失败、HTTP401、403、404与服务器错误,避免把网络问题误判成格式问题。确认响应
检查接口返回的是节点列表而非登录页、公告页或空文本;不要在公开环境展示完整订阅地址。验证格式
确认内容包含完整的 VMess、VLESS、Trojan 或 Shadowsocks 记录,且没有被聊天软件截断或插入换行。查看核心日志
节点出现但无法连接时,重启内核并查看日志,重点处理端口占用、字段缺失、DNS 和握手错误。重新建组
仅在地址与响应都确认正常后,新建一个测试分组重新导入,用于排除旧分组筛选或缓存状态的影响。
如果同一地址在 v2rayN 可以更新,而在 v2rayNG 中为空,应比较两端的客户端版本与内核支持范围,并检查安卓端是否限制了后台网络、私有 DNS 或分应用代理。反过来只有安卓端成功时,则应查看桌面端系统代理、DNS、证书环境以及订阅更新是否错误地走了失效代理。
订阅恢复后,先选择一个节点进行连通性测试,再恢复自动更新和复杂路由规则。排查期间保持变量单一:不要同时修改订阅地址、Core 类型、DNS、TUN 模式和路由分流,否则日志中的错误来源会变得难以判断。
日常更新与多订阅管理建议
长期使用时,分组名称、更新间隔和失败处理比一次导入更重要。建议每个来源单独建组,并保留能说明用途的短名称。不要把多个来源拼接成一条手工文本后再导入,否则某个来源失效时,很难判断是哪一段返回了异常内容。
v2rayN 可按变化频率设置自动更新。节点调整较少时,每
1440 分钟更新一次即可;需要及时同步时可设为 60 至 360 分钟。过短的间隔会增加重复请求,也不能解决服务端本身不可用的问题。v2rayNG 更适合在准备连接前或节点异常时手动刷新。- 更新前记录当前活动节点名称,避免该节点被删除后仍误以为客户端正在使用原配置。
- 多个分组出现同名节点时,为分组设置清晰备注,不依赖节点名称判断来源。
- 订阅失效先检查 HTTP 状态和账户侧有效期,再决定是否删除本地分组。
- 修改订阅地址后立即手动更新一次,确认新地址确实返回兼容内容。
- 路由分流、Mux、DNS 与本地端口属于客户端设置,应与订阅更新问题分开处理。
对于同时使用 v2rayN 与 v2rayNG 的情况,两端可以保存同一条订阅地址,但不会同步本地偏好。桌面端的系统代理模式、安卓端的分应用代理、当前活动节点和路由规则都需要分别配置。订阅解决的是节点列表同步,不是完整客户端状态迁移。
如果安卓端需要使用 v2fly 内核而不是 Xray 内核,可选择 v2flyNG;导入逻辑仍是添加订阅地址、更新列表、选择节点和启动连接。涉及 REALITY、XTLS Vision 等能力时,应先确认所选客户端与内核对协议字段的支持情况,不能只依据节点名称判断兼容性。