vernesong / OpenClash

A Clash Client For OpenWrt
MIT License
15.85k stars 2.95k forks source link

[Bug] Vless 更新订阅 proxy 中 servername 字段缺失或不正确 #3715

Closed yongman closed 3 months ago

yongman commented 6 months ago

Verify Steps

OpenClash Version

v0.45.164-beta

Bug on Environment

Lean

OpenWrt Version

OpenWrt R22.10.10

Bug on Platform

Linux-amd64(x86-64)

Describe the Bug

VLESS 节点通过订阅地址更新获取到的 proxy 配置中 servername 缺失或者和原来订阅信息中的 servername 不一致。

正常的 proxy 配置:

  - {name: xxx1, server: 108.181.xx.xx, port: 443, client-fingerprint: chrome, type: vless, uuid: f6c89xxx-63xx-426b-9faa-5fba7344x7xx, tls: true, tfo: false, servername: 34-21-xx-xx.nhost.00cdn.com, flow: xtls-rprx-vision, skip-cert-verify: true, udp: true}
  - {name: xxx2, server: jp1.xxx.com, port: 443, client-fingerprint: chrome, type: vless, uuid: f6c89xxx-63xx-426b-9faa-5fba7344x7xx, tls: true, tfo: false, servername: 34-21-xx-xx.nhost.00cdn.com, flow: xtls-rprx-vision, skip-cert-verify: true, udp: true}

通过 OpenClash 获取到的 proxy 错误配置:

  - {name: xxx1, server: 108.181.xx.xx, port: 443, client-fingerprint: chrome, type: vless, uuid: f6c89xxx-63xx-426b-9faa-5fba7344x7xx, tls: true, tfo: false, flow: xtls-rprx-vision, skip-cert-verify: true, udp: true}
  - {name: xxx2, server: jp1.xxx.com, port: 443, client-fingerprint: chrome, type: vless, uuid:f6c89xxx-63xx-426b-9faa-5fba7344x7xx, tls: true, tfo: false, servername:  jp1.xxx.com, flow: xtls-rprx-vision, skip-cert-verify: true, udp: true}

其中, 第一条,proxy 中的 server 是 IP,缺少 servername 字段。 第二条,proxy 中的 server 是域名,生成的 servername 和 server 是同一个域名,源配置中 servername 为 34-21-xx-xx.nhost.00cdn.com

To Reproduce

更新订阅,/etc/openclash/config/xxx.yml 配置不正确。

OpenClash Log

OpenClash Config

No response

Expected Behavior

获取到的订阅和源订阅内容一致。

Additional Context

No response

ghost commented 6 months ago

这应该不是启动配置吧? 所以会不会是UA问题?

yongman commented 6 months ago

这个配置/etc/openclash/config/xx.yaml应该是从上游更新下来还未经过转换的配置文件,经过转换的配置文件放在/etc/openclash/xx.yaml。订阅的上游是自建的 subconverter,UA 指定的 clash.meta。

yongman commented 6 months ago

/etc/openclash/config/xx.yaml 文件 servername 字段不对,转换出来的启动配置也是不对的。

ghost commented 6 months ago

对,所以现在有点迷,只下载订阅的话oc应该还没接手修改啊。 之前倒是有过订阅完全出错的


尝试复现不成功 加上下载订阅oc应该还没接手,所以我还是认为非oc的问题

github-actions[bot] commented 4 months ago

This issue is stale because it has been open 60 days with no activity. Remove stale label or comment or this will be closed in 5 days

yongman commented 3 months ago

辛苦,还没有继续深究,暂时用脚本手动更新订阅然后重启 oc,能正常 work。