Merge Mainline
This commit is contained in:
commit
523ea0f65f
@ -1,7 +1,7 @@
|
||||
include $(TOPDIR)/rules.mk
|
||||
|
||||
PKG_NAME:=luci-app-openclash
|
||||
PKG_VERSION:=0.39.3
|
||||
PKG_VERSION:=0.39.4
|
||||
PKG_RELEASE:=beta
|
||||
PKG_MAINTAINER:=vernesong <https://github.com/vernesong/OpenClash>
|
||||
|
||||
|
||||
@ -70,24 +70,26 @@ revert_dns() {
|
||||
[ "$1" -eq "0" ] && {
|
||||
if [ "$(uci get openclash.config.dns_revert 2>/dev/null)" != "1" ]; then
|
||||
uci del_list dhcp.@dnsmasq[0].server=127.0.0.1#"$3" >/dev/null 2>&1
|
||||
if [ -s "/tmp/resolv.conf.d/resolv.conf.auto" ]; then
|
||||
uci set dhcp.@dnsmasq[0].resolvfile=/tmp/resolv.conf.d/resolv.conf.auto >/dev/null 2>&1
|
||||
elif [ -s "/tmp/resolv.conf.auto" ]; then
|
||||
uci set dhcp.@dnsmasq[0].resolvfile=/tmp/resolv.conf.auto >/dev/null 2>&1
|
||||
fi
|
||||
uci set dhcp.@dnsmasq[0].noresolv=0 >/dev/null 2>&1
|
||||
uci set openclash.config.dns_revert=1 2>/dev/null
|
||||
fi
|
||||
}
|
||||
|
||||
[ "$1" -eq "1" ] && {
|
||||
uci del_list dhcp.@dnsmasq[0].server=127.0.0.1#"$3" >/dev/null 2>&1
|
||||
uci set openclash.config.dns_revert=0 2>/dev/null
|
||||
}
|
||||
|
||||
[ "$(uci get dhcp.@dnsmasq[0].cachesize 2>/dev/null)" -eq "0" ] && {
|
||||
[ "$(uci get dhcp.@dnsmasq[0].cachesize 2>/dev/null)" = "0" ] && {
|
||||
uci delete dhcp.@dnsmasq[0].cachesize >/dev/null 2>&1
|
||||
} 2>/dev/null
|
||||
}
|
||||
|
||||
if [ -s "/tmp/resolv.conf.d/resolv.conf.auto" ]; then
|
||||
uci set dhcp.@dnsmasq[0].resolvfile=/tmp/resolv.conf.d/resolv.conf.auto >/dev/null 2>&1
|
||||
elif [ -s "/tmp/resolv.conf.auto" ]; then
|
||||
uci set dhcp.@dnsmasq[0].resolvfile=/tmp/resolv.conf.auto >/dev/null 2>&1
|
||||
fi
|
||||
uci set dhcp.@dnsmasq[0].noresolv=0 >/dev/null 2>&1
|
||||
|
||||
uci commit dhcp
|
||||
uci commit openclash
|
||||
rm -rf /tmp/dnsmasq.d/dnsmasq_openclash.conf >/dev/null 2>&1
|
||||
@ -1227,24 +1229,24 @@ revert_firewall()
|
||||
out_lines=$(iptables -nvL OUTPUT -t nat |sed 1,2d |sed -n '/openclash/=' 2>/dev/null |sort -rn)
|
||||
for out_line in $out_lines; do
|
||||
iptables -t nat -D OUTPUT "$out_line" >/dev/null 2>&1
|
||||
done
|
||||
done >/dev/null 2>&1
|
||||
iptables -t nat -D OUTPUT -p tcp -j openclash_output >/dev/null 2>&1
|
||||
|
||||
pre_lines=$(iptables -nvL PREROUTING -t nat |sed 1,2d |sed -n '/8\.8\./=' 2>/dev/null |sort -rn)
|
||||
for pre_line in $pre_lines; do
|
||||
iptables -t nat -D PREROUTING "$pre_line" >/dev/null 2>&1
|
||||
done
|
||||
done >/dev/null 2>&1
|
||||
|
||||
pre_lines=$(iptables -nvL PREROUTING -t mangle |sed 1,2d |sed -n '/openclash/=' 2>/dev/null |sort -rn)
|
||||
for pre_line in $pre_lines; do
|
||||
iptables -t mangle -D PREROUTING "$pre_line" >/dev/null 2>&1
|
||||
done
|
||||
done >/dev/null 2>&1
|
||||
iptables -t mangle -D PREROUTING -p udp -j openclash >/dev/null 2>&1
|
||||
|
||||
pre_lines=$(iptables -nvL PREROUTING -t nat |sed 1,2d |sed -n '/openclash/=' 2>/dev/null |sort -rn)
|
||||
for pre_line in $pre_lines; do
|
||||
iptables -t nat -D PREROUTING "$pre_line" >/dev/null 2>&1
|
||||
done
|
||||
done >/dev/null 2>&1
|
||||
iptables -t nat -D PREROUTING -p tcp -j openclash >/dev/null 2>&1
|
||||
|
||||
#ipv6
|
||||
@ -1270,7 +1272,7 @@ revert_firewall()
|
||||
ip tuntap del clash0 mode tun >/dev/null 2>&1
|
||||
|
||||
iptables -t mangle -D OUTPUT -j openclash_output >/dev/null 2>&1
|
||||
iptables -t mangle -D PREROUTING -j openclash
|
||||
iptables -t mangle -D PREROUTING -j openclash >/dev/null 2>&1
|
||||
iptables -t mangle -F openclash >/dev/null 2>&1
|
||||
iptables -t mangle -X openclash >/dev/null 2>&1
|
||||
iptables -t mangle -F openclash_output >/dev/null 2>&1
|
||||
@ -1517,7 +1519,7 @@ stop()
|
||||
if [ "$enable" -eq 0 ]; then
|
||||
kill_clash
|
||||
fi
|
||||
|
||||
|
||||
echo "第五步: 重启 Dnsmasq 程序..." >$START_LOG
|
||||
dns_port=$(uci get openclash.config.dns_port 2>/dev/null)
|
||||
redirect_dns=$(uci get openclash.config.redirect_dns 2>/dev/null)
|
||||
|
||||
File diff suppressed because one or more lines are too long
@ -1,23 +1,12 @@
|
||||
反劫持规则,ConnersHua,classical,DivineEngine/Profiles/master/Clash/RuleSet/Guard/,Hijacking.yaml
|
||||
国内IP合集,rixCloud-Inc,ipcidr,rixCloud-Inc/Clash-Ruleset/master/,Domestic_IP.rule,Domestic_IP.yaml
|
||||
国内IP白名单,ConnersHua,ipcidr,DivineEngine/Profiles/master/Clash/RuleSet/Extra/,ChinaIP.yaml
|
||||
国内常用域名,rixCloud-Inc,domain,rixCloud-Inc/Clash-Ruleset/master/,Domestic_Domain.rule,Domestic_Domain.yaml
|
||||
国内域名白名单,ConnersHua,classical,DivineEngine/Profiles/master/Clash/RuleSet/,China.yaml
|
||||
国内流媒体合集,ConnersHua,classical,DivineEngine/Profiles/master/Clash/RuleSet/StreamingMedia/,StreamingCN.yaml
|
||||
国内流媒体国际版合集,ConnersHua,classical,DivineEngine/Profiles/master/Clash/RuleSet/StreamingMedia/,StreamingSE.yaml
|
||||
国外IP代理合集,rixCloud-Inc,ipcidr,rixCloud-Inc/Clash-Ruleset/master/,Global_IP.rule,Global_IP.yaml
|
||||
国外域名代理合集,rixCloud-Inc,domain,rixCloud-Inc/Clash-Ruleset/master/,Global_Domain.rule,Global_Domain.yaml
|
||||
国外常用网站合集,ConnersHua,classical,DivineEngine/Profiles/master/Clash/RuleSet/,Global.yaml
|
||||
国外流媒体合集,ConnersHua,classical,DivineEngine/Profiles/master/Clash/RuleSet/StreamingMedia/,Streaming.yaml
|
||||
国外流媒体(IP)合集,rixCloud-Inc,ipcidr,rixCloud-Inc/Clash-Ruleset/master/,Stream_IP.rule,Stream_IP.yaml
|
||||
国外流媒体(域名)合集,rixCloud-Inc,domain,rixCloud-Inc/Clash-Ruleset/master/,Stream_Domain.rule,Stream_Domain.yaml
|
||||
学术网站,ConnersHua,classical,DivineEngine/Profiles/master/Clash/RuleSet/Extra/,Scholar.yaml
|
||||
常用隐私规则,ConnersHua,classical,DivineEngine/Profiles/master/Clash/RuleSet/,Unbreak.yaml
|
||||
广告规则,ConnersHua,classical,DivineEngine/Profiles/master/Clash/RuleSet/Guard/,Advertising.yaml
|
||||
广告(IP)合集,rixCloud-Inc,ipcidr,rixCloud-Inc/Clash-Ruleset/master/,Reject_IP.rule,Reject_IP.yaml
|
||||
广告(域名)合集,rixCloud-Inc,domain,rixCloud-Inc/Clash-Ruleset/master/,Reject_Domain.rule,Reject_Domain.yaml
|
||||
网易云音乐域名,rixCloud-Inc,domain,rixCloud-Inc/Clash-Ruleset/master/,Netease_Music_Domains.rule,Netease_Music_Domains.yaml
|
||||
苹果服务合集,rixCloud-Inc,domain,rixCloud-Inc/Clash-Ruleset/master/,Apple_Domain.rule,Apple_Domain.yaml
|
||||
隐私规则合集,ConnersHua,classical,DivineEngine/Profiles/master/Clash/RuleSet/Guard/,Privacy.yaml
|
||||
AbemaTV,ConnersHua,classical,DivineEngine/Profiles/master/Clash/RuleSet/StreamingMedia/Video/,AbemaTV.yaml
|
||||
All-4,ConnersHua,classical,DivineEngine/Profiles/master/Clash/RuleSet/StreamingMedia/Video/,All-4.yaml
|
||||
|
||||
@ -18,7 +18,7 @@ if [ "$CKTIME" != "$(grep "CheckTime" $LAST_OPVER 2>/dev/null |awk -F ':' '{prin
|
||||
curl -sL --connect-timeout 10 --retry 2 "$VERSION_URL" -o $LAST_OPVER >/dev/null 2>&1
|
||||
fi
|
||||
if [ "$?" -eq "0" ] && [ -s "$LAST_OPVER" ]; then
|
||||
OP_LV=$(sed -n 1p $LAST_OPVER 2>/dev/null |awk -F '-' '{print $1}' |awk -F 'v' '{print $2}' |awk -F '.' '{print $1"."$2$3}' 2>/dev/null)
|
||||
OP_LV=$(sed -n 1p $LAST_OPVER 2>/dev/null |awk -F '-' '{print $1}' |awk -F 'v' '{print $2}' |awk -F '.' '{print $2$3}' 2>/dev/null)
|
||||
if [ "$(expr "$OP_CV" \>= "$OP_LV")" -eq 1 ]; then
|
||||
sed -i "/^https:/i\CheckTime:${CKTIME}" "$LAST_OPVER" 2>/dev/null
|
||||
sed -i '/^https:/,$d' $LAST_OPVER
|
||||
|
||||
@ -98,7 +98,6 @@ if [ "$2" != 0 ]; then
|
||||
if [ -z "$(grep "$GlobalTV" /tmp/Proxy_Group)" ]\
|
||||
|| [ -z "$(grep "$AsianTV" /tmp/Proxy_Group)" ]\
|
||||
|| [ -z "$(grep "$Proxy" /tmp/Proxy_Group)" ]\
|
||||
# || [ -z "$(grep "$AdBlock" /tmp/Proxy_Group)" ]\
|
||||
|| [ -z "$(grep "$Others" /tmp/Proxy_Group)" ]\
|
||||
|| [ -z "$(grep "$Domestic" /tmp/Proxy_Group)" ]; then
|
||||
echo "${1} Warning: Because of The Different Porxy-Group's Name, Stop Setting The Other Rules!" >>/tmp/openclash.log
|
||||
@ -170,7 +169,6 @@ if [ "$2" != 0 ]; then
|
||||
if [ "$GlobalTV" != "$GlobalTV_YAML" ]\
|
||||
|| [ "$AsianTV" != "$AsianTV_YAML" ]\
|
||||
|| [ "$Proxy" != "$Proxy_YAML" ]\
|
||||
# || [ "$AdBlock" != "$AdBlock_YAML" ]\
|
||||
|| [ "$Others" != "$Others_YAML" ]\
|
||||
|| [ "$Domestic" != "$Domestic_YAML" ]; then
|
||||
check_def=1
|
||||
@ -272,9 +270,6 @@ if [ "$2" != 0 ]; then
|
||||
sed -i "s/,CN,DIRECT$/,China,${Domestic}#d/g" "/tmp/other_rule.yaml" 2>/dev/null
|
||||
sed -i "s/,CN,DIRECT,no-resolve$/,China,${Domestic},no-resolve#d/g" "/tmp/other_rule.yaml" 2>/dev/null
|
||||
sed -i "/rules:/a\##Domestic:${Domestic}" "/tmp/other_rule.yaml" 2>/dev/null
|
||||
#sed -i "s/,Unbreak,DIRECT$/,Unbreak,${AdBlock}#d/g" "/tmp/other_rule.yaml" 2>/dev/null
|
||||
#sed -i "s/,Unbreak,DIRECT,no-resolve$/,Unbreak,${AdBlock},no-resolve#d/g" "/tmp/other_rule.yaml" 2>/dev/null
|
||||
#sed -i "/rules:/a\##AdBlock:${AdBlock}" "/tmp/other_rule.yaml" 2>/dev/null
|
||||
sed -i "s/,MATCH$/,${Others}#d/g" "/tmp/other_rule.yaml" 2>/dev/null
|
||||
sed -i "s/,MATCH,no-resolve$/,${Others},no-resolve#d/g" "/tmp/other_rule.yaml" 2>/dev/null
|
||||
sed -i "/rules:/a\##Others:${Others}" "/tmp/other_rule.yaml" 2>/dev/null
|
||||
|
||||
@ -9,7 +9,7 @@ LUCI_TITLE:=LuCI support for Flow Offload / Shortcut-FE
|
||||
LUCI_DEPENDS:=+pdnsd-alt \
|
||||
+PACKAGE_luci-app-turboacc_INCLUDE_shortcut-fe:kmod-fast-classifier \
|
||||
+PACKAGE_luci-app-turboacc_INCLUDE_flow-offload:kmod-ipt-offload \
|
||||
+PACKAGE_luci-app-turboacc_INCLUDE_bbr:kmod-tcp-bbr \
|
||||
+PACKAGE_luci-app-turboacc_INCLUDE_bbr-cca:kmod-tcp-bbr \
|
||||
+PACKAGE_luci-app-turboacc_INCLUDE_adguardhome:AdGuardHome \
|
||||
+PACKAGE_luci-app-turboacc_INCLUDE_dnsforwarder:dnsforwarder
|
||||
LUCI_PKGARCH:=all
|
||||
@ -32,8 +32,8 @@ config PACKAGE_luci-app-turboacc_INCLUDE_flow-offload
|
||||
depends on !LINUX_4_9
|
||||
default y
|
||||
|
||||
config PACKAGE_luci-app-turboacc_INCLUDE_bbr
|
||||
bool "Include BBR"
|
||||
config PACKAGE_luci-app-turboacc_INCLUDE_bbr-cca
|
||||
bool "Include BBR CCA"
|
||||
default n if LINUX_4_9
|
||||
default y
|
||||
|
||||
@ -42,7 +42,7 @@ config PACKAGE_luci-app-turboacc_INCLUDE_adguardhome
|
||||
default n
|
||||
|
||||
config PACKAGE_luci-app-turboacc_INCLUDE_dnsforwarder
|
||||
bool "Include DnsForwarder"
|
||||
bool "Include DNSForwarder"
|
||||
default n
|
||||
endef
|
||||
include $(TOPDIR)/feeds/luci/luci.mk
|
||||
|
||||
@ -44,14 +44,14 @@ sfe_ipv6:depends("sfe_flow", 1)
|
||||
end
|
||||
|
||||
if nixio.fs.access("/lib/modules/" .. kernel_version .. "/tcp_bbr.ko") then
|
||||
bbr_cca = s:option(Flag, "bbr_cca", translate("Enable BBR CCA"))
|
||||
bbr_cca = s:option(Flag, "bbr_cca", translate("BBR CCA"))
|
||||
bbr_cca.default = 0
|
||||
bbr_cca.rmempty = false
|
||||
bbr_cca.description = translate("Using BBR CCA can improve TCP network performance effectively")
|
||||
end
|
||||
|
||||
if nixio.fs.access("/lib/modules/" .. kernel_version .. "/xt_FULLCONENAT.ko") then
|
||||
fullcone_nat = s:option(Flag, "fullcone_nat", translate("Enable FullCone NAT"))
|
||||
fullcone_nat = s:option(Flag, "fullcone_nat", translate("FullCone NAT"))
|
||||
fullcone_nat.default = 0
|
||||
fullcone_nat.rmempty = false
|
||||
fullcone_nat.description = translate("Using FullCone NAT can improve gaming performance effectively")
|
||||
|
||||
@ -40,14 +40,14 @@ msgstr "IPv6 加速"
|
||||
msgid "Enable IPv6 Acceleration"
|
||||
msgstr "启用 IPv6 加速"
|
||||
|
||||
msgid "Enable BBR CCA"
|
||||
msgstr "启用 BBR 拥塞控制算法"
|
||||
msgid "BBR CCA"
|
||||
msgstr "BBR 拥塞控制算法"
|
||||
|
||||
msgid "Using BBR CCA can improve TCP network performance effectively"
|
||||
msgstr "使用 BBR 拥塞控制算法可以有效提升 TCP 网络性能"
|
||||
|
||||
msgid "Enable FullCone NAT"
|
||||
msgstr "启用全锥形 NAT"
|
||||
msgid "FullCone NAT"
|
||||
msgstr "全锥形 NAT"
|
||||
|
||||
msgid "Using FullCone NAT can improve gaming performance effectively"
|
||||
msgstr "使用全锥形 NAT 可以有效提升游戏体验"
|
||||
@ -107,4 +107,4 @@ msgid "AdGuardHome Anti-AD"
|
||||
msgstr "AdGuardHome 去广告"
|
||||
|
||||
msgid "Open Web Interface"
|
||||
msgstr "打开 Web 界面"
|
||||
msgstr "打开 Web 界面"
|
||||
|
||||
Loading…
Reference in New Issue
Block a user