TL;DR|版本:2026-07-26
“无法访问是什么情况”先按 5 层判断:本地网络、DNS、TCP 端口、TLS/SNI、代理客户端。不要先重装客户端。先用命令确认故障点,再决定是换 DNS、换节点、换协议、换网络,还是判断机场挂了。
1. Pre-requisites:先固定测试环境
测试前只保留一个变量。关闭所有代理客户端、浏览器插件、系统 VPN、杀毒软件的 HTTPS 扫描。使用同一台设备、同一个 Wi-Fi 或 4G/5G 网络测试。记录时间,建议精确到分钟,例如 2026-07-26 21:30。
准备 3 个目标:一个国内可访问网站、一个机场官网域名、一个节点订阅域名。下面用 example.com 作为占位符,实际替换成你打不开的域名。
- Windows 10/11:使用 PowerShell 5.1 或 PowerShell 7。
- macOS 13/14/15:使用 Terminal。
- Linux:使用 bash,curl 版本建议 7.68+。
- 客户端:Clash Verge Rev 1.7+、sing-box 1.9+、v2rayN 6.60+ 均可。
Note: 免费机场和免费节点经常共用入口域名,DNS 污染、订阅失效、节点超售同时发生。不要只凭“网页打不开”判断跑路。
2. 第一步:判断是 DNS 问题还是网络问题
DNS 故障的典型表现:浏览器提示 DNS_PROBE_FINISHED_NXDOMAIN、解析到奇怪 IP、同一域名手机流量能开但宽带打不开。先查本机解析结果。
Windows:
nslookup example.com
预期输出:
Server: 192.168.1.1
Address: 192.168.1.1
Non-authoritative answer:
Name: example.com
Address: 93.184.216.34
macOS/Linux:
dig example.com
预期输出:
;; ANSWER SECTION:
example.com. 300 IN A 93.184.216.34
如果返回 0.0.0.0、127.0.0.1、内网 IP、或同一域名多次解析结果完全不一致,先清 DNS 缓存。
Windows:
ipconfig /flushdns
预期输出:
Windows IP Configuration
Successfully flushed the DNS Resolver Cache.
macOS 14/15:
sudo dscacheutil -flushcache; sudo killall -HUP mDNSResponder
预期输出:
No output means success.
Warning: 不要同时改系统 DNS、路由器 DNS、客户端 fake-ip、浏览器 DoH。一次只改一个位置,否则无法回滚。
3. 第二步:测试 TCP 端口和 TLS 握手
DNS 正常不代表能连。机场官网常用 443,订阅接口可能用 8443、2053、2087。先看 TCP 是否通。
Windows:
Test-NetConnection example.com -Port 443
预期输出:
ComputerName : example.com
RemotePort : 443
TcpTestSucceeded : True
macOS/Linux:
curl -Iv https://example.com --connect-timeout 8
预期输出:
* Connected to example.com (93.184.216.34) port 443
* SSL connection using TLSv1.3
< HTTP/2 200
判断规则如下:
| 现象 | 常见原因 | 处理 |
|---|---|---|
| DNS 有 IP,TCP False | 端口被阻断、服务端防火墙、入口挂了 | 换网络或换备用域名 |
| TCP True,TLS timeout | SNI/证书握手被干扰 | 换节点协议或开启 TLS 指纹伪装 |
| HTTP 403/404 | 网站活着,但路径或订阅链接失效 | 重新复制订阅链接 |
| HTTP 502/503 | 后端服务异常 | 等待 10-30 分钟后复测 |
实测经验:如果 3 个不同网络下 443 都超时,且持续超过 30 分钟,大概率不是本地问题。如果只有公司 Wi-Fi 失败,优先怀疑出口防火墙。
4. 第三步:检查代理客户端和订阅内容
很多“VPN 梯子无法访问”不是节点挂了,而是客户端仍在使用旧订阅、系统代理没开、规则模式把目标走直连。先更新订阅,再测节点延迟。
Clash/sing-box 类客户端检查 4 项:系统代理是否开启;TUN 是否和系统 VPN 冲突;订阅更新时间是否小于 24 小时;当前策略组是否选中可用节点。
用 curl 验证本机 HTTP 代理是否工作。Clash 默认端口常见为 7890。
curl -x http://127.0.0.1:7890 -I https://example.com --connect-timeout 8
预期输出:
HTTP/2 200
server: ECS
content-type: text/html
如果输出为:
curl: (7) Failed to connect to 127.0.0.1 port 7890
说明客户端本地代理端口未监听。检查端口:
netstat -ano | findstr 7890
预期输出:
TCP 127.0.0.1:7890 0.0.0.0:0 LISTENING 12345
免费机场常见限制:倍率高峰期 20:00-23:30 拥塞,节点延迟从 80 ms 升到 800 ms;订阅流量用尽后不会明确提示,只表现为连接成功但无数据。高速机场通常会提供多个入口域名、备用订阅、状态页或工单记录,这是机场评测时必须看的指标。
5. 如何确认问题已解决
按以下顺序验收。全部通过才算修好,不要只看浏览器能打开一次。
- DNS 解析稳定:连续 3 次解析返回同一组公网 IP。
- TCP 可达:443 或订阅端口返回
TcpTestSucceeded : True。 - TLS 正常:curl 能看到
SSL connection using TLSv1.3或 TLSv1.2。 - 客户端代理可用:通过
127.0.0.1:7890请求返回 HTTP 200/301/302。 - 节点质量可接受:延迟低于 200 ms,晚高峰测速大于 20 Mbps,丢包低于 2%。
测速时下载一个 50 MB 左右的公开测试文件即可,观察 15 秒平均速度。不要用 1 秒峰值判断高速机场。
curl -x http://127.0.0.1:7890 -o /dev/null -L https://example.com --max-time 15 -w "time=%{time_total}s speed=%{speed_download}B/s\n"
预期输出:
time=1.842s speed=2845120B/s
References
如果你排查后确认是服务端长期不可用,可以把付费机场、免费机场、自建节点、官方客户端都列入候选。roxi.cc(wizzegroup.com)只是众多可选项之一;免费或自建方案同样可行,但需要接受稳定性、维护成本和晚高峰速度的权衡。