OpenClash icon indicating copy to clipboard operation
OpenClash copied to clipboard

[Bug] 运行到第七步后卡住

Open boywwb opened this issue 1 year ago • 9 comments

Verify Steps

  • [X] Tracker 我已经在 Issue Tracker 中找过我要提出的问题
  • [X] Latest 我已经使用最新 Dev 版本测试过,问题依旧存在
  • [X] Core 这是 OpenClash 存在的问题,并非我所使用的 Clash 或 Meta 等内核的特定问题
  • [X] Meaningful 我提交的不是无意义的 催促更新或修复 请求

OpenClash Version

v0.45.160-beta

Bug on Environment

Docker

Bug on Platform

Linux-arm64

To Reproduce

点击启动后卡在防火墙配置。 环境:Docker openwrt版本:ImmortalWrt 23.05.1 r27304-31bc47589e / LuCI openwrt-23.05 branch git-23.323.25576-ef326c3

Describe the Bug

到第七步之后就卡住了。此时状态显示如下: 主程序 | 运行中   |   守护程序:   未运行 | 运行模式 | 未运行 代理模式 | 未运行

1.已尝试卸载重装,直接下载github安装包离线安装,均会出现同样问题。 2.已尝试按照#NFTABLE进行环境安装

OpenClash Log

2023-12-15 22:44:02 提示:检测到 Firewall4,使用 NFTABLE 规则... 2023-12-15 22:44:02 提示:DNS 劫持模式为 Dnsmasq 转发... 2023-12-15 22:44:02 第七步: 设置防火墙规则... 2023-12-15 22:43:58 第六步: 等待主程序下载外部文件... 2023-12-15 22:43:55 第五步: 检查内核启动状态... 2023-12-15 22:43:54 配置文件【/etc/openclash/config.yaml】测试成功... 2023-12-15 22:43:50 启动前调用内核测试配置文件... 2023-12-15 22:43:50 提示:检测到配置了 TUN 内核专属功能,调用 TUN 内核启动... 2023-12-15 22:43:50 第四步: 启动主程序... 2023-12-15 22:43:50 提示:开始运行自定义覆写脚本... 2023-12-15 22:43:49 提示:您为 SOCKS5/HTTP(S) 代理设置的账户密码为【Clash:ayfLDvd7】 2023-12-15 22:43:49 第三步: 修改配置文件... 2023-12-15 22:43:48 第二步: 组件运行前检查... 2023-12-15 22:43:48 第一步: 获取配置...

OpenClash Config

No response

Expected Behavior

麻烦帮看下是什么原因?

Screenshots

No response

boywwb avatar Dec 15 '23 14:12 boywwb

日志补充: #===================== 依赖检查 =====================#

dnsmasq-full: 已安装 coreutils: 已安装 coreutils-nohup: 已安装 bash: 已安装 curl: 已安装 ca-certificates: 已安装 ipset: 已安装 ip-full: 已安装 libcap: 已安装 libcap-bin: 已安装 ruby: 已安装 ruby-yaml: 已安装 ruby-psych: 已安装 ruby-pstore: 已安装 kmod-tun(TUN模式): 已安装 luci-compat(Luci >= 19.07): 已安装 kmod-inet-diag(PROCESS-NAME): 已安装 unzip: 已安装 kmod-nft-tproxy: 已安装

#===================== 内核检查 =====================#

运行状态: 运行中 运行内核:Meta 进程pid: 1220585 1197875 运行权限: 1220585: =ep 1197875: cap_dac_override,cap_net_bind_service,cap_net_admin,cap_net_raw,cap_sys_ptrace,cap_sys_resource=eip 运行用户: nobody 已选择的架构: linux-arm64

#下方无法显示内核版本号时请确认您的内核版本是否正确或者有无权限 Tun内核版本: 2023.08.17-13-gdcc8d87 Tun内核文件: 存在 Tun内核运行权限: 正常

Dev内核版本: v1.18.0-13-gd034a40 Dev内核文件: 存在 Dev内核运行权限: 正常

Meta内核版本: alpha-gcc64297 Meta内核文件: 存在 Meta内核运行权限: 正常

#===================== 插件设置 =====================#

当前配置文件: /etc/openclash/config/fly.yaml 启动配置文件: /etc/openclash/fly.yaml 运行模式: redir-host 默认代理模式: rule UDP流量转发(tproxy): 启用 自定义DNS: 停用 IPV6代理: 停用 IPV6-DNS解析: 停用 禁用Dnsmasq缓存: 启用 自定义规则: 停用 仅允许内网: 启用 仅代理命中规则流量: 停用 仅允许常用端口流量: 停用 绕过中国大陆IP: 启用 路由本机代理: 启用

#启动异常时建议关闭此项后重试 混合节点: 停用 保留配置: 停用

#启动异常时建议关闭此项后重试 第三方规则: 停用

boywwb avatar Dec 15 '23 17:12 boywwb

手动执行命令

/etc/init,d/openclash restart

查看是否有报错信息

vernesong avatar Dec 16 '23 08:12 vernesong

关闭状态下运行/etc/init.d/openclash 提示: OpenClash Restart... OpenClash Already Stop!

开启后仍然卡在第七步,tail -f /tmp/openclash.log显示日志如下:

2023-12-16 17:49:29 Step 6: Wait For The File Downloading... 2023-12-16 17:49:29 Step 7: Set Firewall Rules... 2023-12-16 17:49:29 Tip: DNS Hijacking Mode is Dnsmasq Redirect... 2023-12-16 17:49:29 Tip: Firewall4 was Detected, Use NFTABLE Rules... 2023-12-16 17:51:15 Warning: Multiple Restart Scripts Running, Exit...

boywwb avatar Dec 16 '23 09:12 boywwb

环境是docker,不好测试,你的日志显示启动了两个内核,而且没有报错

vernesong avatar Dec 16 '23 10:12 vernesong

是的,我是用的immortalwrt23.05.1原版直接docker import构建的镜像,我再试下以前版本的immortalwrt,大佬能否也麻烦帮忙想下会是什么原因导致的

boywwb avatar Dec 16 '23 10:12 boywwb

测试23.05.0版本问题依旧

boywwb avatar Dec 16 '23 12:12 boywwb

你试试把“运行模式”选:增强模式

dalant2019 avatar Dec 17 '23 15:12 dalant2019

也不行,各种模式组合都试了。最后直接回退op大版本到21.02.7解决了,这个版本用的是iptables

boywwb avatar Dec 20 '23 10:12 boywwb

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

github-actions[bot] avatar Feb 19 '24 08:02 github-actions[bot]

完美复现这个问题,有进展吗

patsnap-guyong avatar Mar 14 '24 10:03 patsnap-guyong

我这边也遇到这个问题了,卡在这步不动。x86_64 docker运行ImmortalWrt 23.05

KingCheni avatar Apr 10 '24 12:04 KingCheni

看代码知道问题在哪了,把quic禁用取消掉就好了。@vernesong image

image

排查发现是这段逻辑出的问题 luci-app-openclash/root/etc/init.d/openclash1400里边逻辑存在问题 Code Link

bash-5.2# nft -f '/etc/openclash/china_ip_route.ipset'
/etc/openclash/china_ip_route.ipset:8667:14-16: Error: No such file or directory
add set inet fw4 china_ip_route { type ipv4_addr; flags interval; auto-merge; }
             ^^^
/etc/openclash/china_ip_route.ipset:8668:18-20: Error: No such file or directory
add element inet fw4 china_ip_route $china_ip_route

KingCheni avatar Apr 10 '24 13:04 KingCheni

文件不存在?

vernesong avatar Apr 12 '24 08:04 vernesong

我也遇到这个问题,一直卡在第七步,启动脚本一直运行中,请问如何解决

Atomic994 avatar May 10 '24 18:05 Atomic994

看代码知道问题在哪了,把quic禁用取消掉就好了。@vernesong image

image

排查发现是这段逻辑出的问题 luci-app-openclash/root/etc/init.d/openclash1400里边逻辑存在问题 Code Link

bash-5.2# nft -f '/etc/openclash/china_ip_route.ipset'
/etc/openclash/china_ip_route.ipset:8667:14-16: Error: No such file or directory
add set inet fw4 china_ip_route { type ipv4_addr; flags interval; auto-merge; }
             ^^^
/etc/openclash/china_ip_route.ipset:8668:18-20: Error: No such file or directory
add element inet fw4 china_ip_route $china_ip_route

fw4 china_ip_route 没创建成功,进入死循环。

qingyaoyao789 avatar Jun 05 '24 05:06 qingyaoyao789

截图/etc/openclash/china_ip_route.ipset内容

vernesong avatar Jun 05 '24 07:06 vernesong

可能是 china_ip_route.ipset 文件格式的问题。使用ImmortalWrt 23.05,分别用 hyper-v和pve虚拟机,nft -f '/etc/openclash/china_ip_route.ipset',hyper-v 虚拟机下顺利运行,pve虚拟机下,报错;把pve虚拟机的china_ip_route.ipset文件替换成 hyper-v的,就可以顺利运行。

qingyaoyao789 avatar Jun 06 '24 06:06 qingyaoyao789

截图,文件什么内容

vernesong avatar Jun 06 '24 07:06 vernesong

微信图片_20240607100657

qingyaoyao789 avatar Jun 07 '24 02:06 qingyaoyao789

应该不是openclash的问题,是其它软件,把 nftabels 表 fw4 搞没了,所以会 出现 “/etc/openclash/china_ip_route.ipset:8667:14-16: Error: No such file or directory add set inet fw4 china_ip_route { type ipv4_addr; flags interval; auto-merge; }” 。

qingyaoyao789 avatar Jun 07 '24 02:06 qingyaoyao789

看代码知道问题在哪了,把quic禁用取消掉就好了。@vernesong image

image

排查发现是这段逻辑出的问题 luci-app-openclash/root/etc/init.d/openclash1400里边逻辑存在问题 Code Link

bash-5.2# nft -f '/etc/openclash/china_ip_route.ipset'
/etc/openclash/china_ip_route.ipset:8667:14-16: Error: No such file or directory
add set inet fw4 china_ip_route { type ipv4_addr; flags interval; auto-merge; }
             ^^^
/etc/openclash/china_ip_route.ipset:8668:18-20: Error: No such file or directory
add element inet fw4 china_ip_route $china_ip_route

关闭禁用QUIC启动成功

运行环境 docker 20.10.23 openwrt 23.05 依赖安装正常,手动更新大陆IP地址也不行

HuoDaxia avatar Jul 05 '24 02:07 HuoDaxia