xiaorouji / openwrt-passwall

7.3k stars 2.66k forks source link

[Bug]: 最近sing-box的geosite项目的提交,导致geosite无法正常工作 #3329

Closed bcseputetto closed 4 months ago

bcseputetto commented 4 months ago

描述您遇到的bug

https://github.com/SagerNet/sing-geosite/commit/c69c0c0cc82ae8433baa8efe3a83590b7d95c37a https://github.com/SagerNet/sing-geosite/commit/9f8a5e7cba4f10cbb65ea2ba2ce81201bdb0595a 从四天前的 20240713050854 开始就存在问题了 手动下载更早的一个版本是可以正常工作的。 如果使用sing-box新编译的 geosite.db ,日志里面会提示一些code不存在

复现此Bug的步骤

使用sing-box分流,确保sing-box的geosite是新版的即可重现这个问题,如果不是新版的geosite.db,可以在passwall高级设置,拉到底部,删除资源文件,passwall会重新下载最新的geosite和geoip

您想要实现的目的

sing-box似乎在抛弃geosite,转而使用rule-set,这样xray和sing-box的分流可能需要两套方式实现,xray继续用v2ray继承来的geosite和geoip,sing-box可能需要考虑新的方式。

日志信息

+0800 2024-07-22 12:27:29 ERROR router: failed to initialize geosite: read geosite: code youtube not exists!
+0800 2024-07-22 12:27:29 ERROR router: failed to initialize geosite: read geosite: code openai not exists!
+0800 2024-07-22 12:27:29 ERROR router: failed to initialize geosite: read geosite: code geolocation-cn not exists!
+0800 2024-07-22 12:27:29 ERROR router: failed to initialize geosite: read geosite: code telegram not exists!
+0800 2024-07-22 12:27:29 ERROR router: failed to initialize geosite: read geosite: code geolocation-!cn not exists!

截图

No response

系统相关信息

passwall 4.78-1

其他信息

以下办法可以暂时解决geosite的问题

cd /tmp/sing-box
#移动到sing-box geo文件的目录
rm geosite.db
#删除geosite
wget https://github.com/SagerNet/sing-geosite/releases/download/20240710044910/geosite.db
#重新下载两周前的geosite.db
SakuraFallingMad commented 4 months ago

更换其他geosite、geoip的项目,比如天灵灵的

bcseputetto commented 4 months ago

更换其他geosite、geoip的项目,比如天灵灵的

是的,更换其它sing-box geosite项目,也可以解决此问题,如果passwall不打算切换到rule-set,那可以考虑修改 sing-box的geosite,geoip的默认下载链接。

lwb1978 commented 4 months ago

@bcseputetto 楼主麻烦测试一下下面这个仓库数据库是否可用,另外如果你还有其他数据库推荐也请发链接上来,方便到时修改默认下载链接,之前小肉鸡提过在sing-box没有正式废除掉geosite、geoip支持之前,暂时不考虑适配rule-set: https://github.com/MetaCubeX/meta-rules-dat/releases/download/latest/geoip.db https://github.com/MetaCubeX/meta-rules-dat/releases/download/latest/geosite.db

lwb1978 commented 4 months ago

更换其他geosite、geoip的项目,比如天灵灵的

天灵灵的貌似只有v2ray的txt和dat格式,没有db格式文件。

bcseputetto commented 4 months ago

@bcseputetto 楼主麻烦测试一下下面这个仓库数据库是否可用,另外如果你还有其他数据库推荐也请发链接上来,方便到时修改默认下载链接,之前小肉鸡提过在sing-box没有正式废除掉geosite、geoip支持之前,暂时不考虑适配rule-set: https://github.com/MetaCubeX/meta-rules-dat/releases/download/latest/geoip.db https://github.com/MetaCubeX/meta-rules-dat/releases/download/latest/geosite.db

@lwb1978 https://github.com/lyc8503/sing-box-rules 这个项目是可用的 你发的 https://github.com/MetaCubeX/meta-rules-dat/ 这个项目也可用

bcseputetto commented 4 months ago

顺便,天灵的项目是这个? https://github.com/1715173329/sing-geosite

bcseputetto commented 4 months ago

测试了一下 天灵的项目也是可以的,我总共测试了三个项目,都是可以的,分别是 lyc8503/sing-box-rules https://github.com/lyc8503/sing-box-rules/releases/latest/download/geoip.db https://github.com/lyc8503/sing-box-rules/releases/latest/download/geosite.db


MetaCubeX/meta-rules-dat https://github.com/MetaCubeX/meta-rules-dat/releases/download/latest/geoip.db https://github.com/MetaCubeX/meta-rules-dat/releases/download/latest/geosite.db


1715173329 的仓库 https://github.com/1715173329/sing-geoip/releases/latest/download/geoip.db https://github.com/1715173329/sing-geosite/releases/latest/download/geosite.db

lwb1978 commented 4 months ago

已经更新代码

naoki66 commented 2 months ago

2024-09-28 17:51:51: 开始更新规则... 2024-09-28 17:51:51: gfwlist 开始更新... 2024-09-28 17:51:52: gfwlist 更新成功,总规则数 6183 条。 2024-09-28 17:51:52: chnroute 开始更新... 2024-09-28 17:51:53: chnroute 更新成功,总规则数 11245 条。 2024-09-28 17:51:53: chnroute6 开始更新... 2024-09-28 17:51:54: chnroute6 更新成功,总规则数 3234 条。 2024-09-28 17:51:54: chnlist 开始更新... 2024-09-28 17:51:56: chnlist 更新成功,总规则数 88368 条。 2024-09-28 17:51:56: geoip 开始更新... 2024-09-28 17:52:01: geoip 更新成功。 2024-09-28 17:52:01: geosite 开始更新... 2024-09-28 17:52:05: geosite 更新成功。 2024-09-28 17:52:05: 重启服务,应用新的规则。

start service: open geoip database: error opening database: invalid MaxMind DB file

lwb1978 commented 2 months ago

sing-box的规则数据并不由PW进行更新,你发这个日志跟sing-box无关,要使用sing-box分流,需要先手动下载好它的规则数据上传到指定位置后再启动sing-box,正常运行后今后sing-box的规则它会自行更新。