Reality 协议 · 2026 年终极指南#

Reality 是 XTLS/Xray 项目原创的 TLS 伪装技术(2023 年初推出,至今仍是最高级别抗主动探测方案)。

核心目标:让流量在主动探测时完全像访问正常网站,从根本上解决 SNI 白名单封锁、TLS in TLS 特征、Server Hello 指纹等问题。

2026 年现状

  • Reality + xtls-rprx-vision + uTLS 仍是直连环境下的首选组合
  • 支持 XHTTP / raw / TCP 等多种下层传输
  • 与 Vision 流控结合可获得极致性能 + 隐蔽性
  • gRPC / WS 等多路复用场景下仍推荐 fallback 到 TLS(非 Reality)

一、Reality 核心原理(简明版)#

  1. 客户端 发送真实的 TLS ClientHello(带 SNI = serverName,如 www.microsoft.com
  2. 服务端 不使用自己的证书,而是主动去目标网站(dest) 抓取真实的 ServerHello + 证书链
  3. 服务端把抓到的 ServerHello 原封不动 返回给客户端
  4. 后续握手、服务端密钥由 Reality 自己用 X25519 完成(shortId 用于区分客户端)
  5. 探测方看到的是完全真实的 TLS 流量(指纹、证书、ALPN 全部来自 dest 网站)

→ 结果:主动探测几乎无法区分(除非 dest 网站本身被封或行为异常)

关键参数

  • dest:目标伪装网站(格式 domain:443),Xray 会去拨这个地址拿 TLS 响应
  • serverNames:服务端允许的 SNI 列表(客户端必须填其中之一,不支持 * 通配)
  • shortIds:短 ID(0-16 位十六进制),用于多客户端区分,可为空
  • privateKey / publicKey:X25519 密钥对(服务端私钥,客户端公钥)
  • fingerprint(客户端):uTLS 模拟的浏览器指纹(chrome / firefox / safari / edge 等)

二、2026 年推荐组合对比#

组合 隐蔽性 速度/吞吐 多路复用 CDN 支持 推荐场景 维护难度
VLESS + TCP + Reality + Vision ★★★★★ ★★★★★ × × 直连主力、游戏/视频首选
VLESS + XHTTP + Reality ★★★★☆ ★★★★☆ √(部分) 弱网/移动端、需多路复用 中高
VLESS + gRPC + Reality ★★★★☆ ★★★★ √√ × 高并发但不追求极致隐蔽
VLESS + WS + TLS (非 Reality) ★★☆☆☆ ★★★★ √√ 必须过 CDN、隐蔽性次要

结论(2026 年 3 月)
直连环境 → 首选 VLESS + TCP + Reality + xtls-rprx-vision
需 CDN 或多路复用 → 考虑 XHTTP + Reality 或纯 TLS + CDN

三、最简服务端配置模板(推荐 2026 版)#

文件:/usr/local/etc/xray/config.json

{
  "log": {
    "loglevel": "warning"
  },
  "inbounds": [
    {
      "listen": "0.0.0.0",
      "port": 443,
      "protocol": "vless",
      "settings": {
        "clients": [
          {
            "id": "你的UUID(xray uuid 生成)",
            "flow": "xtls-rprx-vision",
            "email": "[email protected]"
          }
        ],
        "decryption": "none"
      },
      "streamSettings": {
        "network": "tcp",
        "security": "reality",
        "realitySettings": {
          "show": false,
          "dest": "www.microsoft.com:443",          // 2026 常用:microsoft / apple / nvidia / akamai 等大站
          "xver": 0,
          "serverNames": [
            "www.microsoft.com",
            "www.bing.com"                           // 可多填几个,客户端任选其一
          ],
          "privateKey": "你的私钥(xray x25519 生成)",
          "shortIds": [
            "",                                      // 允许 empty shortId
            "a1b2c3d4", "e5f67890"                 // 多客户端区分用
          ]
        }
      },
      "sniffing": {
        "enabled": true,
        "destOverride": ["http", "tls"]
      }
    }
  ],
  "outbounds": [
    {
      "protocol": "freedom",
      "tag": "direct"
    },
    {
      "protocol": "blackhole",
      "tag": "block"
    }
  ]
}

生成密钥对 & UUID(在服务器执行):

xray uuid                  # UUID
xray x25519                # 得到 privateKey & publicKey

四、客户端配置模板(Nekoray / v2rayN / sing-box 等)#

出站(outbound)部分示例:

{
  "protocol": "vless",
  "settings": {
    "vnext": [
      {
        "address": "你的服务器IP",
        "port": 443,
        "users": [
          {
            "id": "你的UUID",
            "flow": "xtls-rprx-vision",
            "encryption": "none"
          }
        ]
      }
    ]
  },
  "streamSettings": {
    "network": "tcp",
    "security": "reality",
    "realitySettings": {
      "fingerprint": "chrome",               // 2026 推荐:chrome / firefox / safari_auto / edge
      "serverName": "www.microsoft.com",     // 必须是 serverNames 列表中的一个
      "publicKey": "你的公钥",
      "shortId": "a1b2c3d4",                 // 或留空,如果服务器允许
      "spiderX": "/"                         // 可改成 /s /api 等,增加区分度
    }
  }
}

五、2026 年最佳实践 & 避坑经验#

dest 网站选择(重要!)

  • 首选:www.microsoft.com:443 / www.apple.com:443 / www.nvidia.com:443

  • 次选:www.bing.com:443 / www.akamai.com:443 / play.google.com:443

  • 避免:国内网站(延迟高、易被墙)、已知被大量滥用的(如某些小众游戏站)

  • fingerprint 选择(客户端)

    • chrome > firefox > safari_auto(最稳)
      • 避免一直用 random(部分版本探测特征更明显)

shortId 多客户端管理#

  • 每个客户端用不同 shortId,便于服务端日志区分 / 封禁单个服务器留一个 “"(空)作为备用

常见报错处理#

  • REALITY: failed to dial dest → dest 网站被墙或 VPS 网络问题,换一个 dest
    • processed invalid connection → shortId / serverName 不匹配
    • XTLS only supports TLS and REALITY → flow=xtls-rprx-vision 只支持 tcp/reality,不能用 grpc/ws

性能优化#

  • 开启 BBR(服务器)
  • 客户端开启 mux(但 Vision 本身已很强,mux 收益有限)