-
-
Notifications
You must be signed in to change notification settings - Fork 2.5k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
【BUG】切换clash_mode后DNS缓存大概率不会清除 #2277
Labels
bug
Something isn't working
Comments
经过测试在SFA中,如果将上面配置的所有
|
Try 1.11.0-alpha.16 |
刚刚尝试了一下1.11.0-alpha.20版本,问题还是存在,感觉基本上就是并发读写缓存的时候清缓存的时候复现的,但是代码里也加锁了,我这水平就搞不太懂了 |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
操作系统
Android
系统版本
Android 14
安装类型
sing-box for Android 图形客户端程序
如果您使用图形客户端程序,请提供该程序版本。
最新稳定版1.10.1
版本
No response
描述
在1.10.1的SFA中,clash_mode切换后DNS缓存大概率不会清除,windows amd64命令行程序中也能复现。
重现方式
在SFA中使用如下配置
场景1:设置仅让
Termux
和任一浏览器APP经过VPN,启动sing-box后切换clash_mode IPV6
,打开浏览器访问除www.baidu.com外任意内容,关闭浏览器,打开Termux
使用dig @8.8.8.8 +noedns aaaa www.baidu.com
查询dns,再切换clash_mode Rule->IPV6
,再次以同样命令查询dns,日志中显示命中缓存,再切换clash_mode Rule
,发现依然命中缓存,日志如下(时间最新的在上):场景2:设置仅
Termux
经过VPN,进行场景1操作,则dns缓存能正常清除,切换clash_mode Rule->IPV6
后日志中不会命中缓存,最后切回Rule
时日志中会显示策略拒绝不会返回结果。场景3:若在配置中加入
"independent_cache": true
,进行场景1操作,切换clash_mode Rule->IPV6
后日志显示仍然命中缓存,最后切回Rule
时日志中会显示策略拒绝不会返回结果符合独立缓存预期。源码中确实是在切换
clash_mode
后有调用清除dns缓存的函数,不清楚是什么原因影响了清除缓存的操作,还是说本人理解有误。日志
No response
支持我们
完整性要求
The text was updated successfully, but these errors were encountered: