2026-08-29 · 故障排查 · 约 12 分钟

V2Ray 已连接但无法上网:代理端口、路由模式与 DNS 逐项排查清单

客户端显示已连接却打不开网页,问题往往不在节点本身。按系统代理、本地端口、路由模式、DNS 解析、TUN 冲突的顺序逐项核对,多数情况能在十分钟内定位。

本文速览

这份清单适合 v2rayN、v2rayNG 或 v2flyNG 已显示启动、测速也可能有结果,但浏览器和应用仍无法联网的情况。排查重点是确认流量有没有进入本地代理、监听端口是否可用、路由有没有误拦截域名、DNS 是否返回有效地址,以及 TUN 或其他代理是否争用系统网络入口。

先确认“已连接”具体代表什么

客户端托盘图标变色、运行日志出现启动完成,只能说明核心进程已经加载配置。它不等于浏览器流量已经经过代理,也不等于远端节点完成了有效转发。完整链路至少包含应用、系统代理或 VPN 接口、本地监听端口、路由规则、DNS、出站节点六个环节,任一环节中断都会形成“界面正常、网页打不开”的表象。

先做一个最小化判断:关闭所有额外代理工具,只保留一个 V2Ray 客户端;选中一个已知可用节点;用同一个浏览器分别访问普通网页和需要代理的网页。普通网页也打不开,优先检查本地端口、系统代理和 TUN;普通网页正常而特定网站失败,则重点检查路由、DNS、节点协议参数和远端可达性。

10808
v2rayN 常见本地 SOCKS 起始端口
10809
旧配置中常见 HTTP 代理端口
53
传统 DNS 查询端口
10 分钟
按固定顺序完成基础定位

第一步:核对系统代理与本地监听端口

桌面端最常见的问题是核心已经运行,但系统代理仍为关闭状态。v2rayN 的本地端口负责接收浏览器或应用发来的请求;系统代理则负责告诉支持系统代理的程序把请求送往这个端口。两者必须指向同一组实际监听值,不能只凭默认端口猜测。

如果浏览器安装过独立代理配置,先确认它没有继续指向旧端口。例如客户端已经改为 127.0.0.1:10818,浏览器扩展仍写着 127.0.0.1:10808,请求就会落到不存在的监听器。企业网络工具、调试代理和旧版客户端也可能占用相同端口。

  1. 查看运行状态

    在 v2rayN 主窗口确认当前服务器已选中,核心日志已经完成启动,没有连续重启或立即退出。

  2. 检查监听端口

    打开「设置」→「参数设置」→「基础设置」,记录本地 SOCKS 或混合代理端口。常见值是 10808,但应以当前界面显示为准。

  3. 开启系统代理

    在主窗口「系统代理」菜单选择「自动配置系统代理」,再确认系统设置中的代理服务器指向 127.0.0.1 和当前端口。

  4. 排除端口占用

    退出其他代理与网络调试程序,重新启动 v2rayN。若日志仍提示绑定失败,把本地端口改为 10818 后再次启动。

  5. 重开应用测试

    完全退出浏览器后重新打开,避免旧连接池继续复用直连连接。先测试普通网页,再测试需要代理的目标地址。

报错:failed to listen TCP on 127.0.0.1:10808

原因与解法:本地端口未能建立监听,通常是端口已被其他进程占用。关闭重复运行的客户端,或在「设置」→「参数设置」中换到未占用端口并重启核心。

报错:bind: Only one usage of each socket address is normally permitted

原因与解法:同一地址和端口已存在监听器。检查任务栏是否开了两个 v2rayN 实例,并退出调试代理、旧客户端或占用 10808 的本地服务。

报错:proxy server is refusing connections

原因与解法:浏览器已经尝试连接代理,但对应端口没有可用服务。重新核对系统代理端口与客户端监听端口是否完全一致。

第二步:把路由模式切回可验证状态

路由规则决定一个请求走代理、直接连接还是阻断。规则集过期、自定义域名写错、规则优先级颠倒,都可能让目标网站落入错误出站。故障排查期间不宜同时修改多组规则,应该先切到边界清楚的模式,再通过日志观察目标域名最终匹配了哪条规则。

在 v2rayN 中进入「设置」→「路由设置」,暂时选用客户端提供的基础规则方案,并停用刚添加的自定义规则。若“全局代理”能访问,而“绕过本地网络及常见直连域名”不能访问,说明节点和端口大概率正常,问题集中在分流规则、域名分类或 DNS 返回结果。

结论:全局模式只用于定位

全局代理恢复访问,证明本地监听和节点出站基本可用;下一步应修正规则,而不是长期依赖全局模式。逐条恢复自定义规则,能直接找到导致误分流的那一项。

第三步:检查 DNS 解析与系统时间

DNS 故障通常有三种表现:域名完全解析失败、解析到不可达地址、DNS 请求被错误分流。直接输入服务器地址能够建立连接,但输入域名失败,基本可以把范围缩小到 DNS。节点服务器本身如果使用域名,DNS 失败还会让核心在建立出站之前就终止。

先检查系统日期、时区和自动校时。时间偏差不仅会影响 TLS 证书验证,也可能让订阅中的有效配置表现为握手失败。随后清理系统 DNS 缓存,暂时关闭浏览器内单独设置的加密 DNS,确保测试请求使用同一条解析链路。

  1. 同步系统时间

    打开系统「设置」→「时间和语言」→「日期和时间」,启用自动设置时间与时区,然后立即同步一次。

  2. 查看解析日志

    重新连接节点并打开核心日志,搜索 lookupDNSno such hosttimeout,记录失败域名。

  3. 清理缓存

    以普通故障处理流程刷新系统 DNS 缓存,再退出并重开浏览器,避免继续使用缓存中的旧地址。

  4. 统一解析入口

    排查期间保留一套 DNS 配置,不要同时启用客户端 DNS、浏览器独立 DNS 和其他网络工具的 DNS 接管。

ipconfig /flushdns
nslookup example.com
netstat -ano | findstr 10808

第一条命令清理 Windows DNS 缓存;第二条验证当前系统解析器能否返回地址;第三条检查 10808 是否处于监听状态。若客户端实际端口不是 10808,应替换为「参数设置」中显示的数值。命令有输出不代表链路一定正常,但可以把“没有监听”和“解析失败”快速区分开。

报错:failed to find an available destination

原因与解法:核心没有得到可用目标地址,常见原因是域名解析失败或路由筛选后没有有效地址。检查节点服务器域名拼写,统一 DNS 配置后重启核心。

报错:lookup server.example: no such host

原因与解法:当前 DNS 返回域名不存在。确认订阅没有截断服务器地址,再更换可用解析器并重新更新订阅。

报错:context deadline exceeded

原因与解法:连接或解析在限定时间内没有完成。先区分日志发生在 DNS 阶段还是出站握手阶段,再检查本机网络丢包、节点端口和传输参数。

第四步:排除 TUN、VPN 接口与防火墙冲突

TUN 模式会创建虚拟网络接口,把不读取系统代理的程序也纳入转发。覆盖范围更广,也更容易与其他 VPN 接口、虚拟机网卡、企业安全软件或防火墙规则发生冲突。典型现象是开启系统代理可以浏览网页,一开 TUN 就全部断网,或者关闭客户端后系统仍保留异常路由。

排查时先关闭 TUN,只保留普通系统代理。如果访问恢复,说明节点配置并非首要问题。随后检查虚拟接口是否成功创建、默认路由是否被重复接管、DNS 是否仍指向已经停止的虚拟接口。不要同时开启两个能够修改默认路由的网络工具。

报错:failed to create TUN interface

原因与解法:虚拟接口创建失败,可能是权限不足、驱动状态异常或接口名称冲突。关闭其他虚拟网络工具,重新启动系统后再以合适权限开启 TUN。

报错:access is denied

原因与解法:客户端没有完成网卡或路由操作所需权限。先关闭 TUN 验证普通代理,再检查系统权限与安全软件拦截记录。

结论:普通代理先通,再处理 TUN

关闭 TUN 后恢复联网,就应把排查重点转向虚拟接口、路由表和 DNS 接管。此时继续更换 VMess 或 VLESS 节点通常不会解决本机网络入口冲突。

第五步:安卓端检查 VPN 权限与应用分流

v2rayNG 使用 Xray 内核,v2flyNG 使用 v2fly 内核;两者在安卓端通常通过系统 VPN 接口接管流量。状态栏出现 VPN 标识,只说明接口已申请,不代表所有应用都被正确纳入。若浏览器可用但某个应用不可用,先看应用分流;若所有应用都不可用,则检查 VPN 权限、节点参数、DNS 和电池后台限制。

VMess、VLESS 等配置必须保持服务器地址、端口、用户标识、传输方式、TLS 与路径参数一致。订阅更新后如果服务端参数已变化,旧配置仍可能保留在列表中并显示可选,但连接会在握手阶段超时。此时应更新订阅并重新选择更新后的条目,而不是复制旧节点继续修改。

  1. 重建 VPN 接口

    停止当前连接,等待状态栏 VPN 标识消失,再重新启动连接并确认系统授权对话框已允许。

  2. 关闭应用分流

    进入客户端「设置」→「分应用代理」,排查期间暂时停用白名单或黑名单规则,让浏览器和测试应用使用一致路径。

  3. 更新订阅

    从订阅分组执行更新,确认新节点数量和名称已经刷新,再选择更新后的节点进行连接测试。

  4. 核对节点参数

    检查服务器端口、传输方式、TLS、SNI、Host 与路径,确保没有把另一条节点的参数混入当前配置。

  5. 允许后台运行

    在系统应用设置中允许客户端保持后台活动,避免熄屏后 VPN 进程被电池策略暂停。

节点测速有数字,为什么网页还是打不开?

测速请求与浏览器完整访问路径不一定相同。先停止连接再重连,关闭分应用代理,并检查浏览器流量是否出现在核心日志中。

普通网站能开,部分域名一直转圈怎么办?

切换到全局代理做一次对照。全局模式恢复时,检查该域名命中的路由规则和 DNS 返回地址;全局模式也失败时,再核对节点传输与 TLS 参数。

更新订阅后反而全部超时怎么办?

确认设备时间准确,重新更新一次订阅并选择新生成的节点。若旧节点仍在列表中,先辨认分组和更新时间,不要继续测试过期条目。

只有某个应用不能联网怎么办?

打开「设置」→「分应用代理」,检查该应用是否被排除。排查期间关闭分流,确认恢复后再逐项添加应用规则。

锁屏一段时间后连接失效怎么办?

把 v2rayNG 或 v2flyNG 的电池策略改为允许后台活动,并允许 VPN 持续运行。重新连接后锁屏测试 5 分钟,确认状态栏 VPN 标识仍存在。

十分钟排查顺序:一次只改一个变量

最快的处理方式不是反复换节点,而是保持节点不变,按流量路径从近到远检查。每完成一步就重新测试并记录结果;一旦恢复,回看刚修改的唯一变量,就能确定故障位置。若同时更换节点、端口、DNS 和路由,即使恢复也无法知道真正原因,下次还会重复整套操作。

  1. 第 1 分钟:关闭其他代理工具,确认只运行一个客户端实例。
  2. 第 2 分钟:核对系统代理地址、客户端本地监听端口与浏览器代理端口。
  3. 第 3 至 4 分钟:切换全局代理做对照,根据结果判断是否为路由分流问题。
  4. 第 5 至 6 分钟:同步系统时间,查看日志中的 DNS、lookup 和 timeout 信息。
  5. 第 7 至 8 分钟:关闭 TUN 或分应用代理,用最简单的系统代理或 VPN 路径测试。
  6. 第 9 分钟:更新订阅,核对 VMess 或 VLESS 的端口、传输、TLS、SNI 与路径。
  7. 第 10 分钟:重启客户端和测试应用,保存关键日志,再决定是否更换节点。

最终判断:先看流量停在哪一层

没有本地入站记录,检查系统代理、VPN 权限和端口;有入站但没有出站,检查路由与 DNS;已有出站却持续握手失败,再核对节点参数、系统时间和远端可达性。

查看客户端安装包