3x-ui节点超时怎么办?面板打不开、连上没网、被墙检测
不翻车编辑部 · 更新于

节点超时,先别急着重装服务器。客户端一般只给两个字“超时”,背后至少有五六种原因,而且多数一眼就能分开:端口超时,多半是防火墙或者被墙;拒绝连接,是端口上没程序在听;端口通了还连不上,是参数对不上,服务器日志会直接写出哪一项错了。2026 年 10 月 8 日,我们在一台测试服务器(Ubuntu 26.04、3x-ui v3.9.0、Xray v26.9.30,VLESS + Reality,目标 www.apple.com)上把常见的毛病一个个故意弄出来,下面的报错全部是原样输出。
这篇有视频版:YouTube 上看《3x-ui 节点超时怎么办》。
几个结论先放这:服务器时间拨快 10 分钟、拨慢将近 3 小时,VLESS + Reality 照样能连,“同步系统时间”治不了它的超时;参数一个没错,sing-box 1.14 连 Xray v26.9.30 照样报 reality verification failed;Xray v26.9.30 起,目标网站选 apple、icloud、microsoft 会在日志里警告“更容易被墙”。
这台服务器怎么装、怎么建节点,见3x-ui 安装和面板配置。
先换个测法:绿色延迟不代表能用
手机上的延迟测试,很多只测“手机到服务器”这一段 TCP 能不能连上。小火箭默认就是 TCP:服务器是 Xray v26.9.30 时,同一个节点 TCP 测出 11 ms、绿色,网页却打不开;把“设置 → 延迟测试方法”改成 CONNECT,直接显示超时(小火箭教程里有截图)。
电脑上,本文用 Mac 上的 Xray v26.9.30 内核做客户端,命令行跑 curl 经节点访问 Google。v2rayN 默认也是 Xray 内核,日志里的报错是同一套。
3x-ui 面板打不开怎么办
第一步,确认地址没记错。 SSH 登上服务器,输入 x-ui settings,端口、路径、完整地址都会列出来:
root@vps:~# x-ui settings
current panel settings as follows:
Panel is secure with SSL
hasDefaultCredential: false
port: 186xx
webBasePath: /(你的路径)/
Database: SQLite (/etc/x-ui/x-ui.db)
Access URL: https://147.125.241.xx:186xx/(你的路径)/
注意是 https。路径是安装时随机生成的,少一段都打不开。
地址对,浏览器还是一直转圈,最后提示“响应时间过长”,多半是防火墙挡了端口。 我们把服务器自带的 ufw 防火墙打开,只放行 SSH:
root@vps:~# ufw allow 22/tcp
Rules updated
Rules updated (v6)
root@vps:~# ufw enable
Firewall is active and enabled on system startup
面板马上打不开了,Chrome 报 ERR_CONNECTION_TIMED_OUT:

还有一种情况:面板用的是 Let’s Encrypt 的 IP 证书(安装脚本默认选项),有效期只有 6 天,靠 80 端口自动续期。80 被防火墙挡住,续期失败,几天以后浏览器会报证书过期。
节点超时:防火墙没放行端口
防火墙挡住面板,也会挡住节点。ufw status 一看,只放行了 22:
root@vps:~# ufw status
Status: active
To Action From
-- ------ ----
22/tcp ALLOW Anywhere
22/tcp (v6) ALLOW Anywhere (v6)
在电脑上用 nc 测节点的 443 端口,超时;客户端访问 Google 也是超时,日志写的是 i/o timeout:
~ % nc -vz -G 5 147.125.241.xx 443
nc: connectx to 147.125.241.xx port 443 (tcp) failed: Operation timed out
~ % curl -x socks5h://127.0.0.1:10808 -o /dev/null -w "%{http_code}\n" https://www.google.com
000
curl: (28) Connection timed out after 70016 milliseconds
客户端日志:
… failed to dial to dest > dial tcp 147.125.241.xx:443: i/o timeout] > common/retry: all retry attempts failed
Windows 上没有 nc,PowerShell 里用 Test-NetConnection 服务器IP -Port 443 看 TcpTestSucceeded 是 True 还是 False。
修法:用到的端口都放行。 节点端口(这里是 443)、面板端口、订阅端口(默认 2096),再加 80 给证书续期:
root@vps:~# ufw allow 443/tcp
root@vps:~# ufw allow 186xx/tcp
root@vps:~# ufw allow 2096/tcp
root@vps:~# ufw allow 80/tcp
~ % nc -vz -G 5 147.125.241.xx 443
Connection to 147.125.241.xx port 443 [tcp/https] succeeded!
~ % curl -x socks5h://127.0.0.1:10808 -o /dev/null -w "%{http_code}\n" https://www.google.com
200
有的云服务商网页后台还有一层“安全组”或“防火墙规则”,在服务器外面,ufw 管不到,规则一样要放行。
拒绝连接:入站没开、端口不对
把面板“入站列表”里的启用开关关掉:

服务器上 ss 一查,443 没有程序在监听;电脑上 nc 立刻返回 Connection refused,不用等:
root@vps:~# ss -lntp | grep xray
LISTEN 0 4096 127.0.0.1:62789 0.0.0.0:* users:(("xray-linux-amd6",pid=29194,fd=4))
LISTEN 0 4096 127.0.0.1:11111 0.0.0.0:* users:(("xray-linux-amd6",pid=29194,fd=8))
~ % nc -vz -G 5 147.125.241.xx 443
nc: connectx to 147.125.241.xx port 443 (tcp) failed: Connection refused
客户端日志:
… failed to dial to dest > dial tcp 147.125.241.xx:443: connect: connection refused] > common/retry: all retry attempts failed
开关打开以后,ss 里多了一行 *:443。
记住这个区别:
| 现象 | 意思 | 先查什么 |
|---|---|---|
| 超时(timed out) | 包在半路被丢了 | 防火墙、安全组,或者被墙 |
| 拒绝连接(refused) | 服务器收到了,端口上没程序 | 入站开没开、端口对不对、Xray 在不在运行 |
Xray 在不在运行,看面板顶上那一块,绿点加“运行中”就是在跑:

reality authentication failed、received real certificate 是什么意思
端口通了还是连不上,就是参数对不上。我们在客户端把参数一项项故意填错,客户端日志分别是:
| 填错的参数 | 客户端日志 |
|---|---|
| 公钥(pbk) | REALITY: received real certificate (potential MITM or redirection) |
| shortId(sid) | 同上 |
| SNI(填成 www.icloud.com) | x509: certificate is valid for www.apple.com.cn, images.apple.com, www.apple.com, not www.icloud.com |
| UUID | 日志里没有报错,连接直接断开(curl 报 SSL_ERROR_SYSCALL) |
received real certificate 的意思是:客户端没通过 Reality 验证,服务器把它当成普通访客,转给了目标网站,客户端收到的是 apple.com 的真证书。
服务器日志写得更清楚,但默认看不到。 3x-ui 的 Xray 日志级别默认是 warning,参数错误一行都不记。先到“Xray 配置 → 日志”,把日志级别改成 info,保存并重启 Xray:

然后在面板首页点“日志”,级别选 Debug:

- 公钥或 shortId 不对:
REALITY: processed invalid connection from …: authentication failed or validation criteria not met - UUID 不对:
proxy/vless/encoding: invalid request user id
修法都一样:别手抄参数。 在面板里重新复制订阅链接或节点链接,客户端更新订阅。查完把日志级别改回 warning,面板也提示日志可能影响服务器性能。
reality verification failed:参数没错也报错
这句报错来自 sing-box 内核。我们用 sing-box 1.14.0 连同一台服务器,参数一个没错:
~ % sing-box version | head -1
sing-box version 1.14.0
~ % curl -x socks5h://127.0.0.1:10809 -o /dev/null -w "%{http_code}\n" https://www.google.com
000
curl: (97) Can't complete SOCKS5 connection to www.google.com. (1)
客户端日志:
ERROR connection: open connection to www.google.com:443 using outbound/vless[0]: reality verification failed
把公钥故意填错,sing-box 报的也是这一句,两种情况从报错上分不出来。原因是 Xray 从 v26.9.8 起,对客户端握手有了新要求,按 Xray 作者在 Xray-core #6714 里的说法,sing-box 目前连不上,前因后果见Xray 和 sing-box 的 REALITY 之争。用 sing-box 内核的客户端碰到这句,先看服务器的 Xray 版本,别在参数上死磕。小火箭的情况见小火箭连不上新版 Reality。
节点超时要同步系统时间吗
网上常见的说法是“节点超时,同步一下系统时间”。我们把服务器时间拨快 10 分钟,再往回拨到比正确时间慢将近 3 个小时,两次都能连:
root@vps:~# timedatectl set-ntp false
root@vps:~# date -s '+10 min'; date -u +%T
01:10:36
~ % date -u +%T
01:00:36
~ % curl -x socks5h://127.0.0.1:10808 -o /dev/null -w "%{http_code}\n" https://www.google.com
200
root@vps:~# date -s '-3 hour'; date -u +%T
22:10:39
~ % date -u +%T
01:00:39
~ % curl -x socks5h://127.0.0.1:10808 -o /dev/null -w "%{http_code}\n" https://www.google.com
200
root@vps:~# timedatectl set-ntp true
依据:
- Xray 官方文档写的是 VMess 依赖系统时间,UTC 误差要在 120 秒以内。
- Reality 有个“最大时间差”(maxTimeDiff)选项,3x-ui 默认是 0;REALITY 源码里 0 表示不检查。
- VLESS 协议本身不校验时间。
所以用 VLESS + Reality,时间不准不是超时的原因。用 VMess 的话,还是要保证时间准。
连上了,网页却打不开:路由规则误伤
连上了,有的网站正常,有的打不开,看服务器的路由。我们在面板配置那期一开始在“阻止域名”里选了 China,结果 iPhone 上 Google 打不开:

原因是 3x-ui 用的域名规则库把 www.gstatic.com、fonts.googleapis.com 这些 Google 的地址也算成了中国域名。新版面板(v3.9.0)的“路由 → 路由测试”能直接查:输入 www.gstatic.com,匹配出站是 blocked。

客户端测一下,Google 和 YouTube 能开,这两个地址失败:
~ % curl … https://www.google.com → 200
~ % curl … https://www.youtube.com → 200
~ % curl … https://www.gstatic.com/generate_204 → 000 SSL_ERROR_SYSCALL
~ % curl … https://fonts.googleapis.com/css2 → 000 SSL_ERROR_SYSCALL
改法:阻止 IP 选 China,阻止域名留空。 测试服务器已经改回去。
怎么判断 VPS 被墙了
被墙的典型样子:面板显示 Xray 运行中,配置没动过,突然所有客户端都超时,国内连服务器 IP 也连不上。
用不翻车的去程回程路由检测,输入服务器 IP,它从国内电信、联通、移动的探针追踪过去。我们这台三家都到了终点:电信 159 ms、联通 287 ms、移动 190 ms,没被墙。

要是三家都停在半路、终点没有回应,而面板显示 Xray 运行中,多半是 IP 被墙了,换 IP 比折腾配置快。有的服务商默认屏蔽 ping,这时工具判断不了,要结合其他现象看。
Xray 新警告:目标网站别选 apple、microsoft
Xray v26.9.30 起,Reality 的目标网站(SNI)含 apple、icloud、microsoft,或者是 .cn、.ru、.ir 结尾,启动时日志里会警告:

意思是这样选,服务器 IP 更容易被墙。我们的测试服务器用的就是 www.apple.com,[面板配置](/guides/3x-ui-panel-setup/)那篇也是这么推荐的。Xray 的 Reality 文档给的最佳做法是“偷”同一个 ASN(同一家机房网络)里网站的证书。目标网站怎么换,见Reality 的 SNI 填什么;手里的候选可以用REALITY 目标网站检测查一遍。
连不上,按这个顺序查
- 用 CONNECT(或电脑上的
nc)测:是超时,还是拒绝连接。 - 面板顶上 Xray 在运行,入站开关开着,端口和客户端一致。
- 服务器防火墙(ufw)和云服务商安全组放行了节点、面板、订阅和 80 端口。
- 日志级别改成 info,看服务器日志里有没有
authentication failed、invalid request user id。 - 客户端能不能连新版 Xray:sing-box 内核、小火箭连 v26.9.8 以后的 Reality 都有问题。
- 用面板的路由测试看规则有没有误伤。
- 用路由检测工具查 IP 是不是被墙。
常见问题
3x-ui 面板打不开怎么办?
先在服务器上运行 x-ui settings 核对完整地址(https、端口、路径)。地址对还是转圈超时,查服务器防火墙和云服务商安全组有没有放行面板端口。浏览器报证书过期,查 80 端口有没有放行(IP 证书靠它续期)。
节点超时是什么原因?
最常见的是端口被防火墙挡了、IP 被墙。用 nc -vz 服务器IP 端口(Windows 用 Test-NetConnection)测,超时就查防火墙;拒绝连接就查入站开关和端口。
reality authentication failed 怎么解决?
这句出现在服务器日志里,意思是客户端的公钥(pbk)或 shortId 和服务器对不上。在 3x-ui 面板里重新复制订阅链接,客户端更新订阅,不要手抄参数。
reality verification failed 是参数错了吗?
不一定。公钥填错时 sing-box 报这句;参数全对、但服务器 Xray 是 v26.9.8 以后的版本时,sing-box 1.14 也报这句。先看服务器 Xray 版本。
节点超时要同步系统时间吗?
VMess 要,误差要在 120 秒以内。VLESS + Reality 不用:我们把服务器时间拨慢将近 3 小时,照样能连。
怎么检测 VPS 有没有被墙?
用去程回程路由检测从国内三网追踪服务器 IP。三家都能到终点就没被墙;都停在半路、终点没回应,而服务器在国外能正常访问,多半被墙了。
资料来源
- Xray 官方文档 VMess 出站:时间误差 120 秒(XTLS/Xray-docs-next,docs/config/outbounds/vmess.md,2026-10-08 查阅)
- Xray 官方文档 REALITY:maxTimeDiff、target 选择建议(docs/config/transports/reality.md,2026-10-08 查阅)
- REALITY 源码 tls.go:
config.MaxTimeDiff == 0 ||时不检查时间(XTLS/REALITY,2026-10-08 查阅) - Xray-core v26.9.30 源码 infra/conf/transport_security.go:目标网站警告的触发条件
- 3x-ui 前端 reality.ts:
maxTimediff默认 0(MHSanaei/3x-ui,2026-10-08) - 3x-ui 安装脚本 install.sh:IP 证书 6 天有效期、80 端口 HTTP-01 续期
- 所有报错:2026-10-08 测试服务器(Ubuntu 26.04、3x-ui v3.9.0、Xray v26.9.30)和 Mac 上的 Xray v26.9.30、sing-box 1.14.0 原样输出,服务器 IP 末段、面板端口和路径已打码
