vernesong / OpenClash

A Clash Client For OpenWrt
MIT License
16.69k stars 3.08k forks source link

OpenClash使用第三方规则重启失败 #485

Closed minfengyk closed 4 years ago

minfengyk commented 4 years ago

升级最新版OpenClash后,设置第三方规则,可以正常启动。但是重启OpenClash时,会启动失败!取消第三方规则,正常启动,再次重新设置第三方规则,可以正常启动,一旦重启OpenClash就失败,lhie1规则是完整的。 日志如下: OpenClash 调试日志

生成时间: 2020-06-02 00:39:59 插件版本: v0.38.5-beta

===================== 系统信息 =====================

主机型号: Intel(R) Core(TM) i3-7100U CPU @ 2.40GHz : 1 Core 2 Thread 固件版本: OpenWrt SNAPSHOT r2563-d42b563e LuCI版本: git-20.141.34051-f750b5f-1 内核版本: 4.19.122 处理器架构: x86_64

此项在使用Tun模式时应为ACCEPT

防火墙转发: ACCEPT

此项有值时建议到网络-接口-lan的设置中禁用IPV6的DHCP

IPV6-DHCP:

此项结果应仅有配置文件的DNS监听地址

Dnsmasq转发设置:

===================== 依赖检查 =====================

dnsmasq-full: 已安装 coreutils: 已安装 coreutils-nohup: 已安装 bash: 已安装 curl: 已安装 jsonfilter: 已安装 ca-certificates: 已安装 ipset: 已安装 ip-full: 已安装 iptables-mod-tproxy: 已安装 kmod-tun(TUN模式): 已安装 luci-compat(Luci-19.07): 未安装

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

运行状态: 未运行 已选择的架构: linux-amd64

下方无法显示内核版本号时请确认您的内核版本是否正确或者有无权限

Tun内核版本: 2020.05.08 Tun内核文件: 存在 Tun内核运行权限: 正常

Game内核版本: v0.17.0-117-gafdab3a Game内核文件: 存在 Game内核运行权限: 正常

Dev内核版本: premium-10-gfb0289b Dev内核文件: 存在 Dev内核运行权限: 正常

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

当前配置文件: /etc/openclash/config/Shadowsocks.yaml 运行模式: fake-ip 默认代理模式: Rule UDP流量转发: 启用 DNS劫持: 启用 自定义DNS: 停用 IPV6-DNS解析: 停用 禁用Dnsmasq缓存: 启用 自定义规则: 启用 仅允许内网: 停用 仅代理命中规则流量: 启用

启动异常时建议关闭此项后重试

保留配置: 停用

启动异常时建议关闭此项后重试

第三方规则: lhie1 第三方规则策略组设置: GlobalTV: Auto AsianTV: DIRECT Proxy: Auto Apple: DIRECT Netflix: Auto Spotify: Auto Steam: Auto AdBlock: REJECT Netease Music: DIRECT Speedtest: Auto Telegram: Proxy Microsoft: DIRECT PayPal: Auto Domestic: DIRECT Others: Auto

读取的配置文件策略组: Auto Proxy DIRECT REJECT

===================== 自定义规则 一 =====================

排序在上的规则优先生效,如添加(去除规则前的#号):

IP段:192.168.1.2-192.168.1.200 直连

- SRC-IP-CIDR,192.168.1.2/31,DIRECT

- SRC-IP-CIDR,192.168.1.4/30,DIRECT

- SRC-IP-CIDR,192.168.1.8/29,DIRECT

- SRC-IP-CIDR,192.168.1.16/28,DIRECT

- SRC-IP-CIDR,192.168.1.32/27,DIRECT

- SRC-IP-CIDR,192.168.1.64/26,DIRECT

- SRC-IP-CIDR,192.168.1.128/26,DIRECT

- SRC-IP-CIDR,192.168.1.192/29,DIRECT

- SRC-IP-CIDR,192.168.1.200/32,DIRECT

IP段:192.168.1.202-192.168.1.255 直连

- SRC-IP-CIDR,192.168.1.202/31,DIRECT

- SRC-IP-CIDR,192.168.1.204/30,DIRECT

- SRC-IP-CIDR,192.168.1.208/28,DIRECT

- SRC-IP-CIDR,192.168.1.224/27,DIRECT

此时IP为192.168.1.1和192.168.1.201的客户端流量走代理(策略),其余客户端不走代理

因为Fake-IP模式下,IP地址为192.168.1.1的路由器自身流量可走代理(策略),所以需要排除

在线IP段转CIDR地址:http://ip2cidr.com

===================== 自定义规则 二 =====================

- DOMAIN-SUFFIX,google.com,Proxy 匹配域名后缀(交由Proxy代理服务器组)

- DOMAIN-KEYWORD,google,Proxy 匹配域名关键字(交由Proxy代理服务器组)

- DOMAIN,google.com,Proxy 匹配域名(交由Proxy代理服务器组)

- DOMAIN-SUFFIX,ad.com,REJECT 匹配域名后缀(拒绝)

- IP-CIDR,127.0.0.0/8,DIRECT 匹配数据目标IP(直连)

- SRC-IP-CIDR,192.168.1.201/32,DIRECT 匹配数据发起IP(直连)

- DST-PORT,80,DIRECT 匹配数据目标端口(直连)

- SRC-PORT,7777,DIRECT 匹配数据源端口(直连)

===================== 配置文件 =====================

port: 7890 socks-port: 7891 allow-lan: true bind-address: "*" mode: Rule log-level: silent external-controller: 0.0.0.0:9090 secret: "123456" redir-port: 7892 external-ui: "/usr/share/openclash/dashboard" dns: enhanced-mode: fake-ip fake-ip-range: 198.18.0.1/16 listen: 127.0.0.1:7874 enable: true ipv6: false fake-ip-filter:

Custom fake-ip-filter

===================== 防火墙设置 =====================

NAT chain

Chain PREROUTING (policy ACCEPT) num target prot opt source destination
1 REDIRECT udp -- 0.0.0.0/0 0.0.0.0/0 udp dpt:53 redir ports 53 2 REDIRECT tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:53 redir ports 53 3 prerouting_rule all -- 0.0.0.0/0 0.0.0.0/0 / !fw3: Custom prerouting rule chain / 4 zone_lan_prerouting all -- 0.0.0.0/0 0.0.0.0/0 / !fw3 / 5 zone_wan_prerouting all -- 0.0.0.0/0 0.0.0.0/0 / !fw3 / 6 zone_wan_prerouting all -- 0.0.0.0/0 0.0.0.0/0 / !fw3 / 7 zone_vpn_prerouting all -- 0.0.0.0/0 0.0.0.0/0 / !fw3 / Chain OUTPUT (policy ACCEPT) num target prot opt source destination

Mangle chain

Chain PREROUTING (policy ACCEPT) num target prot opt source destination
Chain OUTPUT (policy ACCEPT) num target prot opt source destination

===================== 路由表状态 =====================

route -n

Kernel IP routing table Destination Gateway Genmask Flags Metric Ref Use Iface 0.0.0.0 27.25.72.1 0.0.0.0 UG 0 0 0 pppoe-wan1 10.0.1.0 0.0.0.0 255.255.255.0 U 0 0 0 br-lan 10.8.0.0 0.0.0.0 255.255.255.0 U 0 0 0 tun0 27.25.72.1 0.0.0.0 255.255.255.255 UH 0 0 0 pppoe-wan1

ip route list

default via 27.25.72.1 dev pppoe-wan1 proto static 10.0.1.0/24 dev br-lan proto kernel scope link src 10.0.1.1 10.8.0.0/24 dev tun0 proto kernel scope link src 10.8.0.1 27.25.72.1 dev pppoe-wan1 proto kernel scope link src 27.25.79.46

ip rule show

0: from all lookup local 220: from all lookup 220 32766: from all lookup main 32767: from all lookup default

===================== 端口占用状态 =====================

===================== 测试本机DNS查询 =====================

Server: 127.0.0.1 Address: 127.0.0.1#53

Name: www.baidu.com www.baidu.com canonical name = www.a.shifen.com Name: www.a.shifen.com Address 1: 14.215.177.38 Address 2: 14.215.177.39 *** Can't find www.baidu.com: No answer

===================== resolv.conf.auto =====================

Interface wan1

nameserver 202.103.44.150 nameserver 202.103.24.68

===================== 测试本机网络连接 =====================

HTTP/1.1 200 OK Accept-Ranges: bytes Cache-Control: private, no-cache, no-store, proxy-revalidate, no-transform Connection: keep-alive Content-Length: 277 Content-Type: text/html Date: Mon, 01 Jun 2020 16:39:48 GMT Etag: "575e1f72-115" Last-Modified: Mon, 13 Jun 2016 02:50:26 GMT Pragma: no-cache Server: bfe/1.0.8.18

===================== 测试本机网络下载 =====================

===================== 最近运行日志 =====================

time="2020-06-01T16:38:56Z" level=info msg="Start initial compatible provider Auto" time="2020-06-01T16:38:56Z" level=info msg="Start initial compatible provider Proxy" time="2020-06-01T16:38:56Z" level=fatal msg="Parse config error: Rules[0] [DOMAIN-SUFFIX,a.ckm.iqiyi.com,AdBlock] error: proxy [AdBlock] not found" 2020-06-02 00:38:53 OpenClash Can Not Start, Try Use Backup Rules Start Again time="2020-06-01T16:38:56Z" level=info msg="Start initial compatible provider Auto" time="2020-06-01T16:38:56Z" level=info msg="Start initial compatible provider Proxy" time="2020-06-01T16:38:56Z" level=fatal msg="Parse config error: Rules[0] [DOMAIN-SUFFIX,a.ckm.iqiyi.com,AdBlock] error: proxy [AdBlock] not found" 2020-06-02 00:38:53 OpenClash Can Not Start, Please Check The Error Info And Try Again

lloyd18 commented 4 years ago

更新前用的ConnersHua规则,更新后ConnersHua规则启动失败,lhie1 可以启动成功

rilyuuj commented 4 years ago

我也是同样得问题, 不过花姐得规则仓库现在挪了位置,不知道有没有关系。 我看没有人问,这里@vernesong作者大大,建议,能否把更新三方规则设定个自定义链接,我看貌似程序里是写死得如ConnersHua/Profiles/master/Clash/Pro.yaml,设成自定义得话,这样大家有更多选择,也可以设成自己得仓库(只要自己同步更新各位大佬得规则就行,不用频繁修改软件得设置了)

xpn282 commented 4 years ago

一样的现象,ConnersHua规则如果手动更新后,OpenClash如果需要重启的话会失败,然后提示“启用原先备份配置来启动”之类的提示。 如果是使用lhie1规则的吗,可以更新可以重启,没问题。ConnersHua有问题.

vernesong commented 4 years ago

一样的现象,ConnersHua规则如果手动更新后,OpenClash如果需要重启的话会失败,然后提示“启用原先备份配置来启动”之类的提示。 如果是使用lhie1规则的吗,可以更新可以重启,没问题。ConnersHua有问题.

神机规则更新了,目前神机规则只有ruleset版本,之后的版本会移除没有ruleset的版本