libnyanpasu / clash-nyanpasu

Clash Nyanpasu~(∠・ω< )⌒☆​
https://nyanpasu.elaina.moe
GNU General Public License v3.0
9.36k stars 586 forks source link

clash-rs 内核 切换节点时不会自动关闭链接 #445

Closed ningsibuqu closed 2 months ago

ningsibuqu commented 8 months ago

复现步骤 / Step to reproduce

切换至clash-rs 内核

切换节点 例如从 日本1 切换到 日本2

活动链接没有自动断开

mihomo premium 都正常断开全部活动链接

预期行为 / Expected behaviour

预期在连接那里会关闭全部链接 然后切换到日本2

实际行为 / Actual Behaviour

活动链接没有自动断开

应用日志 / App logs

No response

备注 / Addition details

No response

Clash Nyapasu 版本号 / Clash Nyapasu

1.4.5

是否为 Pre-release / Is pre-release version

操作系统及版本 / OS version

Windows 10

自查步骤 / Verify steps

greenhat616 commented 8 months ago

试一下 dev build 看看?

ningsibuqu commented 8 months ago

试一下 dev build 看看?

一样 [76bbd23]

切换到新加坡后到连接里查看 日本连接没自动断开 依旧保留

mihomo premium 无此问题 image

greenhat616 commented 8 months ago

稍晚如果我的笔电正常的话。我调查一下看看是上游内核的问题,还是这里的问题。

ningsibuqu commented 8 months ago

稍晚如果我的笔电正常的话。我调查一下看看是上游内核的问题,还是这里的问题。

而且我发现运行一段时间后切换节点,想手动点击「关闭全部 」关闭链接 是没有反应的

greenhat616 commented 8 months ago

看起来像是内核的 api 实现问题。

我的笔电故障了,目前还没有线索确定到底是何原因导致的。

ningsibuqu commented 8 months ago

看起来像是内核的 api 实现问题。

我的笔电故障了,目前还没有线索确定到底是何原因导致的。

话说可以复现吗?

greenhat616 commented 8 months ago

cc @4o3F

4o3F commented 8 months ago

我这里使用1.4.5无法复现,但是最新开发版没法切clash-rs内核....

ningsibuqu commented 8 months ago

我这里使用1.4.5无法复现,但是最新开发版没法切clash-rs内核....

测试了1.4.6最新开发版,现在情况是这样,选择切换节点后还得切换到其他页面(连接)再切换回代理,才能显示切换成功,但先前的连接没有自动关闭,反复操作几次后,最后点击连接页面中的关闭连接(没录到右上角,我此时一直点,第三十八秒开始)是完全没有反应了

https://github.com/LibNyanpasu/clash-nyanpasu/assets/51028975/6d25c5d8-09b6-484c-a21c-d2e1fb89985e

ningsibuqu commented 8 months ago

1.5.0 问题依旧

ningsibuqu commented 8 months ago

v0.1.15

手动更新了内核,也一样

greenhat616 commented 8 months ago

您好,FAQ 已经更新,能否将内核日记级别修改到 Debug,App Log level 修改到 Trace。然后将日记文件提交上来?

https://nyanpasu.elaina.moe/zh-CN/others/faq.html#_2-clash-nyanpasu-%E5%BA%94%E7%94%A8-%E6%97%A5%E8%AE%B0%E7%9B%AE%E5%BD%95%E5%9C%A8%E5%93%AA%E9%87%8C

ningsibuqu commented 8 months ago

您好,FAQ 已经更新,能否将内核日记级别修改到 Debug,App Log level 修改到 Trace。然后将日记文件提交上来?

https://nyanpasu.elaina.moe/zh-CN/others/faq.html#_2-clash-nyanpasu-%E5%BA%94%E7%94%A8-%E6%97%A5%E8%AE%B0%E7%9B%AE%E5%BD%95%E5%9C%A8%E5%93%AA%E9%87%8C

我不确定有木有敏感信息 先发你邮箱了?谢谢

操作步骤和前面视频一样

ningsibuqu commented 8 months ago

您好,FAQ 已经更新,能否将内核日记级别修改到 Debug,App Log level 修改到 Trace。然后将日记文件提交上来?

https://nyanpasu.elaina.moe/zh-CN/others/faq.html#_2-clash-nyanpasu-%E5%BA%94%E7%94%A8-%E6%97%A5%E8%AE%B0%E7%9B%AE%E5%BD%95%E5%9C%A8%E5%93%AA%E9%87%8C

有收到我发的日记文件吗 谢谢

greenhat616 commented 8 months ago

有收到,这几天处理。您提交的日记目前没发现明显问题。接下来我的任务是排除前端缓存还是clash rs 的问题。

发自我的iPhone

------------------ 原始邮件 ------------------ From: ningsibuqu @.> 发送时间: 03/11/2024, 11:30 To: LibNyanpasu/clash-nyanpasu @.> 抄送: Jonson Petard @.>, Comment @.> Subject: Re: [LibNyanpasu/clash-nyanpasu] clash-rs 内核 切换节点时不会自动关闭链接 (Issue #445)

您好,FAQ 已经更新,能否将内核日记级别修改到 Debug,App Log level 修改到 Trace。然后将日记文件提交上来?

https://nyanpasu.elaina.moe/zh-CN/others/faq.html#_2-clash-nyanpasu-%E5%BA%94%E7%94%A8-%E6%97%A5%E8%AE%B0%E7%9B%AE%E5%BD%95%E5%9C%A8%E5%93%AA%E9%87%8C

有收到我发的日记文件吗 谢谢

— Reply to this email directly, view it on GitHub, or unsubscribe. You are receiving this because you commented.Message ID: @.***>

greenhat616 commented 7 months ago

切换内核不关闭链接应该是 202 状态码导致的。 image Nyanpasu 认为 202 是不正确的状态码,所以之后的刷新逻辑都没有触发。配置的更新是每十秒我们的定时任务出发的,所以切换你会感到一个很长的延时。

image 链接那里 close 之后 connection 不清理,目前判断下来应该是 clash-rs 的 bug 居多,在不修改 config 和 rule selector 下关闭是正常的,但是切换之后会出现问题。当然也不排除是前端报错后,导致一直无法出发刷新。

这个等我这段时间忙完之后,看看能不能去上游修复这个问题吧。最近是没时间了。

greenhat616 commented 2 months ago

看起来最新 Clash Rust 版本已经修复这个问题了。如果还有问题请重新创建问题。