跳到正文
不翻车专注 VPN 软件评测

Reality的SNI填什么?别再用apple,偷邻居+在线检测

不翻车编辑部 · 更新于

不翻车 REALITY 目标网站检测结果:和你的服务器同一网络(加分项)合格,都在 AS26666

Reality 的目标网站(3x-ui 里的「目标」和「SNI」)最好选和你服务器在同一个机房网络(同一个 ASN)里的网站,也就是大家说的“偷邻居”。2026 年 10 月 8 日我们在测试服务器(3x-ui v3.9.0、Xray v26.9.30)上把目标从 www.apple.com 换掉:用 Xray 官方的扫描器 RealiTLScanner 在本机扫服务器所在的 /24 网段,55 秒找到 4 个支持 TLS 1.3 和 H2 的邻居,用不翻车 REALITY 目标网站检测逐个检查,只有 2 个能用,其中 1 个和服务器同在 AS26666。

这篇有视频版:YouTube 上看《3x-ui 查找目标为什么有 2 个别用》。

为什么要换:Xray v26.9.30 起,目标网站含 apple、icloud、microsoft,或者以 .cn、.ru、.ir 结尾,启动日志会警告“这样选更容易被墙”。我们面板配置那篇推荐过 www.apple.com,这篇是更正。

3x-ui 面板日志:REALITY: Choosing “www.apple.com” as the target will increase the likelihood of your server’s IP being blocked by the GFW

Reality 的目标网站是干什么的?

Reality 让你的服务器装成另一个网站。没有你密钥的人连过来,服务器会把他原样转给目标网站,他看到的是那个网站的真证书。所以目标网站本身得“正常”。

REALITY 项目说明(README)写的最低标准:国外网站,支持 TLSv1.3 与 H2,域名非跳转用(主域名可能被用于跳转到 www)。加分项:IP 相近(更像,且延迟低)、Server Hello 后的握手消息一起加密、有 OCSP Stapling。Xray 的 REALITY 文档还写了:最佳实践是“偷”同一个 ASN 的证书。

3x-ui 的「查找目标」能直接用吗?

3x-ui v3.9.0 在「目标」旁边加了「扫描」和「查找目标」两个按钮:

3x-ui 入站编辑安全选项卡:目标 www.apple.com:443,旁边有扫描、查找目标两个按钮,SNI www.apple.com

点「查找目标」再点「扫描」,面板从服务器测一组网站,我们这台 10 个全部显示“可用”:

3x-ui REALITY 目标扫描器:10 个默认候选全部可用,标出了 www.microsoft.com 和 www.cloudflare.com 两行

这 10 个是写在 3x-ui 源码里的默认列表(internal/web/service/reality_scan.go 的 defaultRealityScanCandidates,可以在面板设置里改),面板判断“可用”的条件是 TLS 1.3、H2、X25519 和证书有效。它不检查目标在不在 Cloudflare 上,也不管 Xray 的新警告。用REALITY 目标网站检测复查:

不翻车 REALITY 目标网站检测:www.cloudflare.com 不建议用,在 Cloudflare 上,可能被扫到后偷跑流量

不翻车 REALITY 目标网站检测:www.microsoft.com 能用但有提醒,含 microsoft,Xray v26.9.30 起会警告

面板默认候选 我们的工具
www.cloudflare.com 不建议用:在 Cloudflare 上
www.microsoft.com 有提醒:触发 Xray 被墙警告
dl.google.com 有提醒:根路径跳到 www.google.com(下载域名,可以用)
其余 7 个 合格,但没有一个和我们的服务器在同一个网络

更大的问题是:用 3x-ui 的人点开,默认都是这 10 个。

我们原来用的 www.apple.com 也查一下,最低标准全部合格,但有一项黄色提醒:

不翻车 REALITY 目标网站检测:www.apple.com 能用但有提醒,Xray 新版不警告这一项标黄

怎么找邻居网站:RealiTLScanner

Xray 官方的扫描器 RealiTLScanner 会连一段 IP 的 443 端口,把支持 TLS 1.3 和 H2 的网站和它们的证书域名列出来。说明里专门写了:建议在自己电脑上运行,在云服务器上扫可能让服务器被标记。

RealiTLScanner README:It is recommended to run this tool locally, as running the scanner in the cloud may cause the VPS to be flagged

Windows 在 Releases 下载 RealiTLScanner-windows-64.exe(v0.2.3):

RealiTLScanner v0.2.3 下载文件:linux-amd64、linux-arm64、windows-64.exe

在下载目录打开命令行,运行(把 IP 换成你服务器 IP 的前三段):

RealiTLScanner-windows-64.exe -addr 你的IP前三段.0/24 -thread 20 -timeout 5
  • -addr x.x.x.0/24:扫和你服务器同一段的 256 个地址
  • -thread 20:同时扫 20 个
  • -timeout 5:每个最多等 5 秒

结果会同时存到同目录的 out.csv。我们在 Mac 上扫测试服务器所在网段,55 秒找到 4 个(邻居域名中间打了码,原因见下文):

./RealiTLScanner -addr 147.125.241.0/24 -thread 20 -timeout 5
feasible=true ip=147.125.241.10 tls="TLS 1.3" alpn=h2 cert-domain=gem************.com
feasible=true ip=147.125.241.15 tls="TLS 1.3" alpn=h2 cert-domain=m.an**.fun
feasible=true ip=147.125.241.12 tls="TLS 1.3" alpn=h2 cert-domain=mail.yu**.pu******.com
feasible=true ip=147.125.241.21 tls="TLS 1.3" alpn=h2 cert-domain=meet.hi******.online
msg="Scanning completed" elapsed=55.0347695s

(只保留了关键字段,原始输出每行还有曲线、证书长度、签发机构等。)

扫出来的邻居,逐个检查

扫描器是直接连 IP 扫到证书的,这个域名平时解析到哪、能不能直接用,还得一个个查。在检测工具里填域名,再填你的服务器 IP:

邻居 检测结果
1 不建议用:扫描器连的是 IP,但它的域名解析到 Cloudflare
2 不建议用:域名连不上
3 可以用,而且和我们的服务器同在 AS26666,IP 就在隔壁
4 可以用;看名字是一台邮件服务器

不翻车 REALITY 目标网站检测:邻居 1 在 Cloudflare 上,不建议用

不翻车 REALITY 目标网站检测:邻居 3 最低标准全部合格

不翻车 REALITY 目标网站检测:邻居 3 和你的服务器同一网络,都在 AS26666

我们选了第 3 个。邻居的域名我们打了码:你服务器的邻居和我们的不一样,照抄我们的没用(ASN 对不上),用的人一多,这个小网站反而显眼。

改进 3x-ui

入站 → 编辑 → 安全选项卡:

  1. 目标改成 域名:443。
  2. SNI 把 www.apple.com 删掉,填同一个域名(要在证书包含的域名里)。

3x-ui 安全选项卡:目标和 SNI 都改成了邻居域名(已打码)

  1. 点目标旁边的「扫描」,面板从服务器再测一次。我们这次显示可用:TLS 1.3、h2、X25519,证书就是这个域名。

3x-ui 扫描结果:可用,使用的 SNI、TLS 1.3、ALPN h2、密钥交换 X25519、证书和有效期、证书链 3401 B

  1. 保存。

改完:客户端一定要更新订阅

我们先用没更新的旧配置试了一下(SNI 还是 www.apple.com),连不上:

~ % curl -x socks5h://127.0.0.1:10808 -o /dev/null -w "%{http_code}\n" https://www.google.com
000
curl: (35) Recv failure: Connection reset by peer

客户端日志:
… [x509: "meet.hi******.online","YE2","Root YE","ISRG Root X2" certificates do not meet pinning requirements]

服务器把旧 SNI 当成了外人,转给了邻居网站,客户端收到的是邻居的真证书。更新订阅以后,Google 返回 200。

面板首页「日志」里,改之前每次 Xray 启动都有那条被墙警告,改之后只剩一行 core: Xray 26.9.30 started:

3x-ui 面板日志:最新一次启动没有警告,之前两次启动都有 Choosing “www.apple.com” as the target 的警告

两点提醒

  • 用的人越多越显眼。 网上流传的推荐列表、面板的默认列表都别直接照抄,自己扫邻居。
  • 邻居网站会变。 它哪天关了、换了证书,你的节点也会突然连不上。遇到这种情况,先用检测工具再查一次目标网站。想在服务器上复核,用 Xray 自带的 xray tls ping(3x-ui 装的 Xray 在 /usr/local/x-ui/bin/ 下):
root@vps:~# /usr/local/x-ui/bin/xray-linux-amd64 tls ping meet.hi******.online
TLS Version:                       TLS 1.3
TLS Post-Quantum key exchange:     false (X25519)
Certificate chain's total length:  3401 (certs count: 4)
Cert's allowed domains:            [meet.hi******.online]

改完连不上,按节点超时排查一项项查。

常见问题

Reality 的 SNI 填什么好?

填和你服务器同一个机房网络(同 ASN)里、支持 TLS 1.3 和 H2、不跳转的国外网站。用 RealiTLScanner 在自己电脑上扫服务器所在的 /24 网段找候选,再用REALITY 目标网站检测逐个检查。

Reality 目标能用 www.apple.com、www.microsoft.com 吗?

能连,但 Xray v26.9.30 起会在日志里警告“更容易被墙”,规则写在 Xray-core 源码 infra/conf/transport_security.go 里,含 apple、icloud、microsoft 或以 .cn、.ru、.ir 结尾的都会触发。

3x-ui 查找目标显示可用,就能用吗?

不一定。面板只查 TLS 1.3、H2、X25519 和证书有效。我们实测它的默认候选里,www.cloudflare.com 在 Cloudflare 上,www.microsoft.com 会触发 Xray 的警告,而且所有人默认都是同一组 10 个。

RealiTLScanner 可以在 VPS 上跑吗?

官方说明建议在自己电脑上运行,在云服务器上扫可能让服务器被标记。

换了目标网站以后连不上?

客户端要更新订阅。没更新的话,SNI 还是旧的,客户端会报 x509 证书错误。

资料来源

  • REALITY README:目标网站最低标准和加分项(github.com/XTLS/REALITY,2026-10-08 查阅)
  • Xray 文档 REALITY:最佳实践是偷同 ASN 的证书;目标用 Cloudflare 这类 CDN 可能被偷跑流量(XTLS/Xray-docs-next)
  • Xray-core v26.9.30 源码 infra/conf/transport_security.go:目标网站警告的触发条件
  • 3x-ui 源码 internal/web/service/reality_scan.go:查找目标的默认候选和“可用”判断条件(MHSanaei/3x-ui,2026-10-08)
  • RealiTLScanner v0.2.3 README 和 Releases(github.com/XTLS/RealiTLScanner)
  • 扫描、检测、面板和日志:2026-10-08 测试服务器(3x-ui v3.9.0、Xray v26.9.30)和 Mac 上的 RealiTLScanner v0.2.3、Xray v26.9.30 实测;服务器 IP 末段和邻居域名已打码