XTLS / Xray-core

Xray, Penetrates Everything. Also the best v2ray-core, with XTLS support. Fully compatible configuration.
https://t.me/projectXray
Mozilla Public License 2.0
23.07k stars 3.69k forks source link

Reality偷自己本地,可以支持套CDN嘛? #2888

Closed ZqinKing closed 6 months ago

ZqinKing commented 6 months ago

配置文件如下: { "log":{ "loglevel":"error" }, "inbounds":[ { "listen":"0.0.0.0", "port":443, "protocol":"vless", "settings":{ "clients":[ { "id":"xxxxxxxxxx", "flow":"xtls-rprx-vision" } ], "decryption":"none" }, "streamSettings":{ "network":"tcp", "tcpSettings":{ "header":{ "type":"none" }, "acceptProxyProtocol":true }, "security":"reality", "realitySettings":{ "show":false, "dest":"127.0.0.1:8443", "xver":0, "serverNames":[ "oracle.xxxx.com" ], "privateKey":"xxxxxxxxxx", "shortIds":[ "xxxxxxxxxx" ] } }, "sniffing":{ "enabled":true, "destOverride":[ "http", "tls" ], "routeOnly":true } }, { "listen":"0.0.0.0", "port":8443, "protocol":"vless", "settings":{ "clients":[ { "id":"xxxxxxxxxx", "flow":"xtls-rprx-vision" } ], "decryption":"none", "fallbacks":[ { "dest":37212 }, { "alpn":"h2", "dest":37213 } ] }, "streamSettings":{ "network":"tcp", "tcpSettings":{ "header":{ "type":"none" }, "acceptProxyProtocol":true }, "security":"tls", "tlsSettings":{ "serverName":"oracle.xxxx.top", "minVersion":"1.3", "alpn":[ "h2", "http/1.1" ], "certificates":[ { "ocspStapling":3600, "certificateFile":"/usr/local/etc/xray/cert/fullchain.cer", "keyFile":"/usr/local/etc/xray/cert/private.key" } ] } }, "sniffing":{ "enabled":true, "destOverride":[ "http", "tls" ], "routeOnly":true } } ], "routing":{ "domainStrategy":"AsIs", "rules":[ { "type":"field", "domain":[ "geosite:netflix", "geosite:microsoft", "geosite:cloudflare", "geosite:category-games", "regexp:(^|\.)dramasq\.(cc|com|me|net|su|tv|ws|xyz)$", "maxmind.com", "bard.google.com", "ip.gs" ], "outboundTag":"warp" }, { "type":"field", "domain":[ "geosite:cn" ], "outboundTag":"block" } ] }, "outbounds":[ { "protocol":"freedom", "tag":"direct" }, { "protocol":"blackhole", "tag":"block" }, { "protocol":"socks", "settings":{ "servers":[ { "address":"127.0.0.1", "port":40000 } ] }, "tag":"warp" } ] }

ZqinKing commented 6 months ago

使用以上配置文件套了CDN后使用浏览器访问443端口能正常回落到后端的nginx(端口37213)。但是代理功能无法正常使用,请问是哪里配置不对吗?还是不支持使用CDN?

CosecantNeko commented 6 months ago

XTLS 与 CDN 天生不和 因为 XTLS 握手必须由客户端/服务端完成 它不是标准的 TLS 握手

另外 你的 config 我没看 因为太长了 提问时请把你能复现问题的情况下的最简配置发出来 方便其他人为你提供帮助

记得用代码块

{
    "就像": "这样"
}
ZqinKing commented 6 months ago

XTLS 与 CDN 天生不和 因为 XTLS 握手必须由客户端/服务端完成 它不是标准的 TLS 握手

另外 你的 config 我没看 因为太长了 提问时请把你能复现问题的情况下的最简配置发出来 方便其他人为你提供帮助

记得用代码块

{
    "就像": "这样"
}

明白,那应该就是XTLS不能用CDN的原因了。

CosecantNeko commented 6 months ago

那个

"flow":"xtls-rprx-vision"

请注意,是 XTLS 与 CDN 不合 reality 和 XTLS 不一定要搭配使用 刚刚的解释可能会让你误认为 XTLS 必须/总是和 reality 搭配使用 补充下

但是 reality 也是不能搭配 CDN 使用的 因为 CDN 会识别 TLS 上的 SNI,然后将流量送到真实网站 而非你的代理服务器

ZqinKing commented 6 months ago

那个

"flow":"xtls-rprx-vision"

请注意,是 XTLS 与 CDN 不合 reality 和 XTLS 不一定要搭配使用 刚刚的解释可能会让你误认为 XTLS 必须/总是和 reality 搭配使用 补充下

但是 reality 也是不能搭配 CDN 使用的 因为 CDN 会识别 TLS 上的 SNI,然后将流量送到真实网站 而非你的代理服务器

哈哈,感谢。差点弄混了流控和协议。删除流控后,已经能套CDN了。

ZqinKing commented 6 months ago

那个

"flow":"xtls-rprx-vision"

请注意,是 XTLS 与 CDN 不合 reality 和 XTLS 不一定要搭配使用 刚刚的解释可能会让你误认为 XTLS 必须/总是和 reality 搭配使用 补充下

但是 reality 也是不能搭配 CDN 使用的 因为 CDN 会识别 TLS 上的 SNI,然后将流量送到真实网站 而非你的代理服务器

之前弄错了,哪怕是偷本机,去掉流控后reality还是不行。最终还是切成了vless_ws_tls。

KobeArthurScofield commented 4 months ago

哪怕是偷本机,去掉流控后reality还是不行。

REALITY 就算是偷自己也过不了 CDN,因为 REALITY 的握手认证依赖 Client Hello 但是 CDN 不知道 REALITY 这个把戏,最终会当成普通 TLS 来握手。