OpenClash: sync with upstream source

This commit is contained in:
CN_SZTL 2020-07-26 01:26:12 +08:00
parent f17d9376ca
commit 601cbecbc7
No known key found for this signature in database
GPG Key ID: 6850B6345C862176
19 changed files with 393 additions and 198 deletions

View File

@ -1,7 +1,7 @@
include $(TOPDIR)/rules.mk
PKG_NAME:=luci-app-openclash
PKG_VERSION:=0.39.4
PKG_VERSION:=0.39.5
PKG_RELEASE:=beta
PKG_MAINTAINER:=vernesong <https://github.com/vernesong/OpenClash>
@ -41,6 +41,7 @@ define Build/Prepare
cp "$(PKG_BUILD_DIR)/files/etc/openclash/custom/openclash_custom_rules_2.list" "$(PKG_BUILD_DIR)/files/usr/share/openclash/backup/openclash_custom_rules_2.list" >/dev/null 2>&1
cp "$(PKG_BUILD_DIR)/files/etc/openclash/custom/openclash_custom_hosts.list" "$(PKG_BUILD_DIR)/files/usr/share/openclash/backup/openclash_custom_hosts.list" >/dev/null 2>&1
cp "$(PKG_BUILD_DIR)/files/etc/openclash/custom/openclash_custom_fake_filter.list" "$(PKG_BUILD_DIR)/files/usr/share/openclash/backup/openclash_custom_fake_filter.list" >/dev/null 2>&1
cp "$(PKG_BUILD_DIR)/files/etc/openclash/custom/openclash_custom_domain_dns.list" "$(PKG_BUILD_DIR)/files/usr/share/openclash/backup/openclash_custom_domain_dns.list" >/dev/null 2>&1
endef
define Build/Configure
@ -64,6 +65,7 @@ if [ -f "/etc/openclash/custom/openclash_custom_rules.list" ]; then
cp "/etc/openclash/custom/openclash_custom_rules_2.list" "/tmp/openclash_custom_rules_2.list.bak" >/dev/null 2>&1
cp "/etc/openclash/custom/openclash_custom_hosts.list" "/tmp/openclash_custom_hosts.list.bak" >/dev/null 2>&1
cp "/etc/openclash/custom/openclash_custom_fake_filter.list" "/tmp/openclash_custom_fake_filter.list.bak" >/dev/null 2>&1
cp "/etc/openclash/custom/openclash_custom_domain_dns.list" "/tmp/openclash_custom_domain_dns.list.bak" >/dev/null 2>&1
fi
endef
@ -91,6 +93,7 @@ cp "/etc/openclash/custom/openclash_custom_rules.list" "/usr/share/openclash/bac
cp "/etc/openclash/custom/openclash_custom_rules_2.list" "/usr/share/openclash/backup/openclash_custom_rules_2.list" >/dev/null 2>&1
cp "/etc/openclash/custom/openclash_custom_hosts.list" "/usr/share/openclash/backup/openclash_custom_hosts.list" >/dev/null 2>&1
cp "/etc/openclash/custom/openclash_custom_fake_filter.list" "/usr/share/openclash/backup/openclash_custom_fake_filter.list" >/dev/null 2>&1
cp "/etc/openclash/custom/openclash_custom_domain_dns.list" "/usr/share/openclash/backup/openclash_custom_domain_dns.list" >/dev/null 2>&1
if [ -f "/tmp/openclash.bak" ]; then
mv "/tmp/openclash.bak" "/etc/config/openclash" >/dev/null 2>&1
@ -98,6 +101,7 @@ if [ -f "/tmp/openclash.bak" ]; then
mv "/tmp/openclash_custom_rules_2.list.bak" "/etc/openclash/custom/openclash_custom_rules_2.list" >/dev/null 2>&1
mv "/tmp/openclash_custom_hosts.list.bak" "/etc/openclash/custom/openclash_custom_hosts.list" >/dev/null 2>&1
mv "/tmp/openclash_custom_fake_filter.list.bak" "/etc/openclash/custom/openclash_custom_fake_filter.list" >/dev/null 2>&1
mv "/tmp/openclash_custom_domain_dns.list.bak" "/etc/openclash/custom/openclash_custom_domain_dns.list" >/dev/null 2>&1
if [ -d "/tmp/openclash_history/" ]; then
cp -a "/tmp/openclash_history/." "/etc/openclash/history" >/dev/null 2>&1
rm -rf "/tmp/openclash_history" >/dev/null 2>&1
@ -168,6 +172,7 @@ define Package/$(PKG_NAME)/prerm
cp "/etc/openclash/custom/openclash_custom_rules_2.list" "/tmp/openclash_custom_rules_2.list.bak" >/dev/null 2>&1
cp "/etc/openclash/custom/openclash_custom_hosts.list" "/tmp/openclash_custom_hosts.list.bak" >/dev/null 2>&1
cp "/etc/openclash/custom/openclash_custom_fake_filter.list" "/tmp/openclash_custom_fake_filter.list.bak" >/dev/null 2>&1
cp "/etc/openclash/custom/openclash_custom_domain_dns.list" "/tmp/openclash_custom_domain_dns.list.bak" >/dev/null 2>&1
endef
define Package/$(PKG_NAME)/postrm

View File

@ -62,8 +62,11 @@ change_dns() {
if [ "$2" -eq "1" ]; then
uci set dhcp.@dnsmasq[0].cachesize=0 2>/dev/null
fi
uci commit dhcp
uci commit openclash
/usr/share/openclash/openclash_custom_domain_dns.sh
}
revert_dns() {
@ -93,6 +96,7 @@ revert_dns() {
uci commit dhcp
uci commit openclash
rm -rf /tmp/dnsmasq.d/dnsmasq_openclash.conf >/dev/null 2>&1
rm -rf /tmp/dnsmasq.d/dnsmasq_openclash_custom_domain.conf >/dev/null 2>&1
}
kill_clash()
@ -1022,7 +1026,7 @@ do_run_core()
core_type="Game"
fi
if [ "$proxy_mode" = "Script" ] || [ "$rule_source" = "ConnersHua" ]; then
if [ "$proxy_mode" = "script" ] || [ "$rule_source" = "ConnersHua" ]; then
ln -s /etc/openclash/core/clash_tun /etc/openclash/clash 2>/dev/null
core_type="Tun"
fi
@ -1077,6 +1081,21 @@ cat > "/var/etc/openclash.include" <<-EOF
/etc/init.d/openclash reload >/dev/null 2>&1
EOF
if [ "$china_ip_route" -eq 1 ]; then
if [ ! -f "/tmp/china_ip_route.ipset" ]; then
cp /etc/openclash/rule_provider/ChinaIP.yaml /tmp/china_ip_route.list 2>/dev/null
sed -i "s/'//g" /tmp/china_ip_route.list 2>/dev/null
sed -i "s/^ \{0,\}- //g" /tmp/china_ip_route.list 2>/dev/null
sed -i '/payload:/d' /tmp/china_ip_route.list 2>/dev/null
sed -i '/^ \{0,\}#/d' /tmp/china_ip_route.list 2>/dev/null
echo "create china_ip_route hash:net family inet hashsize 1024 maxelem 65536" >/tmp/china_ip_route.ipset
awk '!/^$/&&!/^#/{printf("add china_ip_route %s'" "'\n",$0)}' /tmp/china_ip_route.list >>/tmp/china_ip_route.ipset
rm -rf /tmp/china_ip_route.list 2>/dev/null
fi
ipset -! flush china_ip_route 2>/dev/null
ipset -! restore </tmp/china_ip_route.ipset 2>/dev/null
fi
#lan_ac
if [ "$operation_mode" = "redir-host" ] && [ "$en_mode" = "redir-host" ]; then
if [ "$lan_ac_mode" = "0" ] && [ -n "$(uci get openclash.config.lan_ac_black_ips 2>/dev/null)" ]; then
@ -1114,6 +1133,9 @@ if [ -z "$en_mode_tun" ]; then
iptables -t nat -A openclash -m set --match-set localnetwork dst -j RETURN
iptables -t nat -A openclash -m set --match-set lan_ac_black_ips src -j RETURN >/dev/null 2>&1
iptables -t nat -A openclash -m set ! --match-set lan_ac_white_ips src -j RETURN >/dev/null 2>&1
if [ "$en_mode" = "redir-host" ]; then
iptables -t nat -A openclash -m set --match-set china_ip_route dst -j RETURN >/dev/null 2>&1
fi
iptables -t nat -A openclash -p tcp -j REDIRECT --to-ports "$proxy_port"
iptables -t nat -I PREROUTING -p tcp -d 8.8.8.8 -j REDIRECT --to-ports "$proxy_port"
iptables -t nat -I PREROUTING -p tcp -d 8.8.4.4 -j REDIRECT --to-ports "$proxy_port"
@ -1127,6 +1149,9 @@ if [ -z "$en_mode_tun" ]; then
iptables -t mangle -A openclash -m set --match-set localnetwork dst -j RETURN
iptables -t mangle -A openclash -m set --match-set lan_ac_black_ips src -j RETURN >/dev/null 2>&1
iptables -t mangle -A openclash -m set ! --match-set lan_ac_white_ips src -j RETURN >/dev/null 2>&1
if [ "$en_mode" = "redir-host" ]; then
iptables -t mangle -A openclash -m set --match-set china_ip_route dst -j RETURN >/dev/null 2>&1
fi
iptables -t mangle -A openclash -p udp --dport 53 -j RETURN >/dev/null 2>&1
#端口转发
config_load "firewall"
@ -1201,6 +1226,7 @@ else
#其他流量
iptables -t mangle -A openclash -m set --match-set lan_ac_black_ips src -j RETURN >/dev/null 2>&1
iptables -t mangle -A openclash -m set ! --match-set lan_ac_white_ips src -j RETURN >/dev/null 2>&1
iptables -t mangle -A openclash -m set --match-set china_ip_route dst -j RETURN >/dev/null 2>&1
iptables -t mangle -A openclash -m set ! --match-set localnetwork dst -j MARK --set-mark "$PROXY_FWMARK"
iptables -t mangle -I PREROUTING -j openclash
iptables -t nat -I PREROUTING -p tcp --dport 53 -j ACCEPT
@ -1278,6 +1304,7 @@ revert_firewall()
#ip6tables -t mangle -D PREROUTING -j MARK --set-mark "$PROXY_FWMARK" >/dev/null 2>&1
ipset destroy localnetwork >/dev/null 2>&1
ipset destroy china_ip_route >/dev/null 2>&1
ipset destroy lan_ac_white_ips >/dev/null 2>&1
ipset destroy lan_ac_black_ips >/dev/null 2>&1
}
@ -1306,6 +1333,7 @@ get_config()
lan_ac_mode=$(uci get openclash.config.lan_ac_mode 2>/dev/null)
enable_rule_proxy=$(uci get openclash.config.enable_rule_proxy 2>/dev/null)
stack_type=$(uci get openclash.config.stack_type 2>/dev/null)
china_ip_route=$(uci get openclash.config.china_ip_route 2>/dev/null)
}
start()
@ -1423,7 +1451,9 @@ if [ "$enable" -eq 1 ] && [ -f "$CONFIG_FILE" ]; then
mv "$START_BACKUP" /tmp/configrules.bak
sed -i -n '/^rules:/,$p' /tmp/configrules.bak
sed -i '/^rules:/,$d' "$CONFIG_FILE" 2>/dev/null
sed -i '/##Other-rule-providers##/,/##Other-rule-providers-end##/d' "$CONFIG_FILE" 2>/dev/null
if [ -z "$(grep "##source:" /tmp/configrules.bak 2>/dev/null)" ]; then
sed -i '/##Other-rule-providers##/,/##Other-rule-providers-end##/d' "$CONFIG_FILE" 2>/dev/null
fi
cat /tmp/configrules.bak >> "$CONFIG_FILE"
rm -rf /tmp/configrules.bak
nohup "$CLASH" -d "$CLASH_CONFIG" -f "$CONFIG_FILE" >> $LOG_FILE 2>&1 &

View File

@ -50,6 +50,7 @@ rule-providers:
# 规则
rules:
##source:ConnersHua
# Unbreak
- RULE-SET,Unbreak,DIRECT
@ -76,11 +77,11 @@ rules:
- IP-CIDR,224.0.0.0/4,DIRECT
# (可选)使用来自 ipipdotnet 的 ChinaIP 以解决数据不准确的问题,使用 ChinaIP.yaml 时可禁用下列直至包括「GEOIP,CN」规则
# - RULE-SET,ChinaIP,DIRECT
- RULE-SET,ChinaIP,DIRECT
# Tencent
- IP-CIDR,119.28.28.28/32,DIRECT
- IP-CIDR,182.254.116.0/24,DIRECT
# GeoIP China
- GEOIP,CN,DIRECT
#- GEOIP,CN,DIRECT
- MATCH,MATCH
- MATCH,MATCH

View File

@ -134,6 +134,32 @@ proxies: # 节点设置此部分与proxy-provider两者不能同时删除
# headers:
# custom: value
# shadowsocksR
#The supported shadowsocksR ciphers(encrypt methods):
#aes-128-cfb aes-192-cfb aes-256-cfb
#aes-128-ctr aes-192-ctr aes-256-ctr
#rc4-md5 chacha20-ietf xchacha20
#The supported shadowsocksR obfses:
#plain http_simple http_post
#random_head tls1.2_ticket_auth tls1.2_ticket_fastauth
#The supported shadowsocksR protocols:
#origin auth_sha1_v4 auth_aes128_md5
#auth_aes128_sha1 auth_chain_a auth_chain_b
- name: "ssr"
type: ssr
server: server
port: 443
cipher: chacha20-ietf
password: "password"
obfs: tls1.2_ticket_auth
protocol: auth_sha1_v4
# obfs-param: domain.tld
# protocol-param: "#"
# udp: true
# vmess
# cipher support auto/aes-128-gcm/chacha20-poly1305/none
- name: "vmess"

File diff suppressed because one or more lines are too long

View File

@ -207,63 +207,6 @@ payload:
- DOMAIN-SUFFIX,springsunday.net
- DOMAIN-SUFFIX,tjupt.org
- DOMAIN-SUFFIX,totheglory.im
# > Scholar
- DOMAIN-SUFFIX,acm.org
- DOMAIN-SUFFIX,acs.org
- DOMAIN-SUFFIX,aip.org
- DOMAIN-SUFFIX,ams.org
- DOMAIN-SUFFIX,annualreviews.org
- DOMAIN-SUFFIX,aps.org
- DOMAIN-SUFFIX,ascelibrary.org
- DOMAIN-SUFFIX,asm.org
- DOMAIN-SUFFIX,asme.org
- DOMAIN-SUFFIX,astm.org
- DOMAIN-SUFFIX,bmj.com
- DOMAIN-SUFFIX,cambridge.org
- DOMAIN-SUFFIX,cas.org
- DOMAIN-SUFFIX,clarivate.com
- DOMAIN-SUFFIX,ebscohost.com
- DOMAIN-SUFFIX,emerald.com
- DOMAIN-SUFFIX,engineeringvillage.com
- DOMAIN-SUFFIX,icevirtuallibrary.com
- DOMAIN-SUFFIX,ieee.org
- DOMAIN-SUFFIX,imf.org
- DOMAIN-SUFFIX,iop.org
- DOMAIN-SUFFIX,jamanetwork.com
- DOMAIN-SUFFIX,jhu.edu
- DOMAIN-SUFFIX,jstor.org
- DOMAIN-SUFFIX,karger.com
- DOMAIN-SUFFIX,libguides.com
- DOMAIN-SUFFIX,madsrevolution.net
- DOMAIN-SUFFIX,mpg.de
- DOMAIN-SUFFIX,myilibrary.com
- DOMAIN-SUFFIX,nature.com
- DOMAIN-SUFFIX,oecd-ilibrary.org
- DOMAIN-SUFFIX,osapublishing.org
- DOMAIN-SUFFIX,oup.com
- DOMAIN-SUFFIX,ovid.com
- DOMAIN-SUFFIX,oxfordartonline.com
- DOMAIN-SUFFIX,oxfordbibliographies.com
- DOMAIN-SUFFIX,oxfordmusiconline.com
- DOMAIN-SUFFIX,pnas.org
- DOMAIN-SUFFIX,proquest.com
- DOMAIN-SUFFIX,rsc.org
- DOMAIN-SUFFIX,sagepub.com
- DOMAIN-SUFFIX,sciencedirect.com
- DOMAIN-SUFFIX,sciencemag.org
- DOMAIN-SUFFIX,scopus.com
- DOMAIN-SUFFIX,siam.org
- DOMAIN-SUFFIX,spiedigitallibrary.org
- DOMAIN-SUFFIX,springer.com
- DOMAIN-SUFFIX,springerlink.com
- DOMAIN-SUFFIX,tandfonline.com
- DOMAIN-SUFFIX,un.org
- DOMAIN-SUFFIX,uni-bielefeld.de
- DOMAIN-SUFFIX,webofknowledge.com
- DOMAIN-SUFFIX,westlaw.com
- DOMAIN-SUFFIX,wiley.com
- DOMAIN-SUFFIX,worldbank.org
- DOMAIN-SUFFIX,worldscientific.com
# > Other
- DOMAIN-SUFFIX,cn
# - DOMAIN-SUFFIX,vmware.com

View File

@ -13,8 +13,7 @@ payload:
- '1.1.32.0/19'
- '1.2.0.0/23'
- '1.2.2.0/24'
- '1.2.5.0/24'
- '1.2.6.0/23'
- '1.2.4.0/22'
- '1.2.8.0/21'
- '1.2.16.0/20'
- '1.2.32.0/19'
@ -27,21 +26,7 @@ payload:
- '1.4.16.0/20'
- '1.4.32.0/19'
- '1.4.64.0/18'
- '1.8.0.0/18'
- '1.8.64.0/19'
- '1.8.96.0/22'
- '1.8.100.0/23'
- '1.8.112.0/20'
- '1.8.128.0/20'
- '1.8.144.0/22'
- '1.8.148.0/23'
- '1.8.154.0/23'
- '1.8.156.0/22'
- '1.8.160.0/19'
- '1.8.192.0/19'
- '1.8.224.0/20'
- '1.8.244.0/22'
- '1.8.248.0/21'
- '1.8.0.0/16'
- '1.10.0.0/21'
- '1.10.8.0/23'
- '1.10.11.0/24'
@ -73,13 +58,12 @@ payload:
- '1.192.0.0/13'
- '1.202.0.0/15'
- '1.204.0.0/14'
- '2.20.54.23/32'
- '3.5.214.0/23'
- '3.5.216.0/24'
- '8.128.0.0/10'
- '8.209.36.0/22'
- '8.209.40.0/21'
- '8.211.0.0/16'
- '8.211.128.0/17'
- '8.212.0.0/14'
- '8.216.0.0/13'
- '14.0.0.0/21'
@ -101,16 +85,18 @@ payload:
- '14.196.0.0/15'
- '14.204.0.0/15'
- '14.208.0.0/12'
- '15.230.41.0/24'
- '20.62.0.0/24'
- '20.81.0.0/24'
- '20.134.160.0/20'
- '20.139.160.0/20'
- '20.249.255.0/24'
- '20.251.0.0/22'
- '23.236.64.0/25'
- '23.236.64.128/26'
- '23.236.64.192/27'
- '27.0.128.0/21'
- '27.0.128.0/22'
- '27.0.132.0/24'
- '27.0.134.0/23'
- '27.0.160.0/21'
- '27.0.188.0/22'
- '27.0.204.0/22'
@ -597,8 +583,7 @@ payload:
- '45.87.54.0/23'
- '45.112.132.0/22'
- '45.112.188.0/22'
- '45.112.208.0/22'
- '45.112.216.0/21'
- '45.112.208.0/20'
- '45.112.228.0/22'
- '45.112.232.0/21'
- '45.113.12.0/22'
@ -793,7 +778,6 @@ payload:
- '45.253.96.0/20'
- '45.253.112.0/21'
- '45.253.120.0/22'
- '45.253.130.0/23'
- '45.253.132.0/22'
- '45.253.136.0/21'
- '45.253.144.0/20'
@ -811,7 +795,6 @@ payload:
- '45.254.192.0/19'
- '45.254.224.0/21'
- '45.254.236.0/22'
- '45.254.240.0/22'
- '45.254.248.0/22'
- '45.255.0.0/18'
- '45.255.64.0/19'
@ -955,6 +938,9 @@ payload:
- '61.236.0.0/15'
- '61.240.0.0/14'
- '62.234.0.0/16'
- '64.188.38.0/23'
- '64.188.40.0/22'
- '64.188.44.0/23'
- '68.79.0.0/18'
- '69.230.192.0/18'
- '69.231.128.0/18'
@ -967,12 +953,9 @@ payload:
- '72.163.240.0/23'
- '72.163.248.0/22'
- '81.68.0.0/14'
- '81.161.63.0/24'
- '82.156.0.0/15'
- '87.254.207.0/24'
- '91.223.53.0/24'
- '91.234.36.0/24'
- '91.239.190.0/24'
- '89.19.34.0/23'
- '93.183.14.0/24'
- '93.183.18.0/24'
- '94.191.0.0/17'
@ -1107,10 +1090,8 @@ payload:
- '103.5.192.0/22'
- '103.5.252.0/22'
- '103.6.76.0/22'
- '103.6.108.0/22'
- '103.6.120.0/22'
- '103.6.220.0/22'
- '103.6.228.0/22'
- '103.7.140.0/22'
- '103.7.212.0/22'
- '103.7.216.0/21'
@ -1767,7 +1748,8 @@ payload:
- '103.93.204.0/22'
- '103.94.12.0/22'
- '103.94.20.0/22'
- '103.94.28.0/22'
- '103.94.29.0/24'
- '103.94.30.0/23'
- '103.94.32.0/20'
- '103.94.72.0/22'
- '103.94.88.0/22'
@ -1956,7 +1938,6 @@ payload:
- '103.116.92.0/22'
- '103.116.120.0/22'
- '103.116.128.0/22'
- '103.116.150.0/23'
- '103.116.184.0/22'
- '103.116.220.0/22'
- '103.116.224.0/21'
@ -2089,7 +2070,6 @@ payload:
- '103.142.156.0/23'
- '103.142.180.0/23'
- '103.142.186.0/23'
- '103.142.221.0/24'
- '103.142.230.0/24'
- '103.142.234.0/23'
- '103.142.238.0/23'
@ -2105,11 +2085,9 @@ payload:
- '103.144.72.0/23'
- '103.144.136.0/23'
- '103.144.158.0/23'
- '103.145.40.0/22'
- '103.145.80.0/23'
- '103.145.42.0/23'
- '103.145.92.0/22'
- '103.145.98.0/23'
- '103.145.107.0/24'
- '103.145.188.0/23'
- '103.146.6.0/23'
- '103.146.72.0/23'
@ -2137,13 +2115,31 @@ payload:
- '103.150.72.0/23'
- '103.150.122.0/23'
- '103.150.126.0/23'
- '103.150.128.0/22'
- '103.150.128.0/23'
- '103.150.131.0/24'
- '103.150.146.0/23'
- '103.150.164.0/23'
- '103.150.172.0/23'
- '103.150.200.0/23'
- '103.150.210.0/23'
- '103.150.216.0/23'
- '103.150.244.0/23'
- '103.151.142.0/23'
- '103.151.148.0/22'
- '103.151.158.0/23'
- '103.151.178.0/23'
- '103.151.206.0/23'
- '103.151.216.0/23'
- '103.151.228.0/23'
- '103.152.14.0/23'
- '103.152.24.0/23'
- '103.152.28.0/22'
- '103.152.76.0/23'
- '103.152.80.0/23'
- '103.152.98.0/23'
- '103.152.112.0/23'
- '103.152.120.0/22'
- '103.152.132.0/23'
- '103.152.152.0/23'
- '103.152.168.0/23'
- '103.192.0.0/19'
- '103.192.48.0/21'
- '103.192.56.0/22'
@ -2193,8 +2189,6 @@ payload:
- '103.198.180.0/22'
- '103.198.196.0/22'
- '103.198.200.0/22'
- '103.198.216.0/21'
- '103.198.224.0/20'
- '103.199.164.0/22'
- '103.199.196.0/22'
- '103.199.228.0/22'
@ -2348,8 +2342,7 @@ payload:
- '103.217.192.0/20'
- '103.218.8.0/21'
- '103.218.16.0/21'
- '103.218.29.0/24'
- '103.218.30.0/23'
- '103.218.28.0/22'
- '103.218.32.0/19'
- '103.218.64.0/19'
- '103.218.192.0/20'
@ -2380,7 +2373,10 @@ payload:
- '103.220.252.0/22'
- '103.221.0.0/19'
- '103.221.32.0/21'
- '103.221.88.0/21'
- '103.221.44.0/22'
- '103.221.88.0/22'
- '103.221.92.0/23'
- '103.221.95.0/24'
- '103.221.96.0/19'
- '103.221.128.0/18'
- '103.221.192.0/20'
@ -2656,7 +2652,6 @@ payload:
- '103.255.200.0/22'
- '103.255.208.0/22'
- '103.255.228.0/22'
- '104.222.196.0/24'
- '106.0.0.0/24'
- '106.0.2.0/23'
- '106.0.4.0/22'
@ -3122,11 +3117,9 @@ payload:
- '117.128.0.0/10'
- '118.24.0.0/15'
- '118.26.0.0/19'
- '118.26.36.0/22'
- '118.26.40.0/21'
- '118.26.48.0/20'
- '118.26.64.0/19'
- '118.26.104.0/21'
- '118.26.112.0/20'
- '118.26.128.0/17'
- '118.28.0.0/15'
@ -3184,7 +3177,6 @@ payload:
- '118.188.0.0/16'
- '118.190.0.0/16'
- '118.191.0.0/20'
- '118.191.24.0/21'
- '118.191.32.0/19'
- '118.191.64.0/18'
- '118.191.144.0/21'
@ -3377,7 +3369,18 @@ payload:
- '121.58.136.0/21'
- '121.58.144.0/20'
- '121.58.160.0/21'
- '121.59.0.0/16'
- '121.59.0.0/20'
- '121.59.16.0/21'
- '121.59.24.0/22'
- '121.59.28.0/24'
- '121.59.31.0/24'
- '121.59.33.0/24'
- '121.59.34.0/23'
- '121.59.36.0/22'
- '121.59.40.0/21'
- '121.59.48.0/20'
- '121.59.64.0/18'
- '121.59.128.0/17'
- '121.60.0.0/14'
- '121.68.0.0/14'
- '121.76.0.0/15'
@ -3404,8 +3407,7 @@ payload:
- '122.10.216.0/22'
- '122.10.228.0/22'
- '122.10.232.0/21'
- '122.10.240.0/21'
- '122.10.250.0/23'
- '122.10.240.0/22'
- '122.11.0.0/17'
- '122.12.0.0/15'
- '122.14.0.0/17'
@ -3640,7 +3642,6 @@ payload:
- '131.253.12.0/29'
- '131.253.12.80/28'
- '131.253.12.240/29'
- '132.159.251.0/24'
- '132.232.0.0/16'
- '132.237.134.0/24'
- '134.175.0.0/16'
@ -3692,8 +3693,6 @@ payload:
- '139.198.72.0/21'
- '139.198.80.0/20'
- '139.198.96.0/20'
- '139.198.113.0/24'
- '139.198.114.0/23'
- '139.198.116.0/22'
- '139.198.122.0/23'
- '139.198.124.0/22'
@ -3719,14 +3718,7 @@ payload:
- '140.101.208.0/24'
- '140.143.0.0/16'
- '140.179.0.0/16'
- '140.205.0.0/18'
- '140.205.64.0/19'
- '140.205.96.0/20'
- '140.205.112.0/21'
- '140.205.120.0/23'
- '140.205.123.0/24'
- '140.205.124.0/22'
- '140.205.128.0/17'
- '140.205.0.0/16'
- '140.206.0.0/15'
- '140.210.0.0/16'
- '140.224.0.0/16'
@ -3739,6 +3731,8 @@ payload:
- '140.249.0.0/16'
- '140.250.0.0/16'
- '140.255.0.0/16'
- '142.70.0.0/16'
- '142.86.0.0/16'
- '144.0.0.0/16'
- '144.7.0.0/16'
- '144.12.0.0/16'
@ -3843,7 +3837,14 @@ payload:
- '157.148.0.0/16'
- '157.156.0.0/16'
- '157.255.0.0/16'
- '158.116.80.0/22'
- '158.79.0.0/24'
- '158.79.2.0/23'
- '158.79.4.0/22'
- '158.79.8.0/21'
- '158.79.16.0/20'
- '158.79.32.0/19'
- '158.79.64.0/18'
- '158.79.128.0/17'
- '159.75.0.0/16'
- '159.221.232.0/22'
- '159.226.0.0/16'
@ -3861,6 +3862,7 @@ payload:
- '160.202.216.0/21'
- '160.202.224.0/19'
- '160.238.64.0/22'
- '161.120.0.0/16'
- '161.163.0.0/21'
- '161.163.28.0/23'
- '161.163.176.0/24'
@ -3868,7 +3870,13 @@ payload:
- '161.163.180.0/22'
- '161.189.0.0/16'
- '161.207.0.0/16'
- '162.14.0.0/16'
- '162.14.0.0/21'
- '162.14.12.0/22'
- '162.14.20.0/22'
- '162.14.24.0/21'
- '162.14.32.0/19'
- '162.14.64.0/18'
- '162.14.128.0/17'
- '162.105.0.0/16'
- '163.0.0.0/16'
- '163.47.4.0/22'
@ -3925,7 +3933,6 @@ payload:
- '171.104.0.0/13'
- '171.112.0.0/12'
- '171.208.0.0/12'
- '172.60.2.0/24'
- '172.81.192.0/18'
- '173.39.200.0/23'
- '175.0.0.0/12'
@ -4002,15 +4009,16 @@ payload:
- '180.210.236.0/22'
- '180.212.0.0/15'
- '180.222.224.0/19'
- '180.223.0.0/19'
- '180.223.32.0/20'
- '180.223.48.0/21'
- '180.223.57.0/24'
- '180.223.58.0/23'
- '180.223.60.0/22'
- '180.223.0.0/18'
- '180.223.80.0/20'
- '180.223.96.0/19'
- '180.223.128.0/17'
- '180.223.129.0/24'
- '180.223.130.0/23'
- '180.223.132.0/22'
- '180.223.136.0/21'
- '180.223.144.0/20'
- '180.223.160.0/19'
- '180.223.192.0/18'
- '180.233.0.0/18'
- '180.233.64.0/19'
- '180.233.144.0/22'
@ -4047,14 +4055,14 @@ payload:
- '182.238.0.0/16'
- '182.239.0.0/19'
- '182.240.0.0/13'
- '182.254.0.0/17'
- '182.254.128.0/18'
- '182.254.192.0/19'
- '182.254.224.0/20'
- '182.254.240.0/21'
- '182.254.248.0/23'
- '182.254.251.0/24'
- '182.254.252.0/22'
- '182.254.0.0/18'
- '182.254.64.0/19'
- '182.254.96.0/20'
- '182.254.112.0/22'
- '182.254.117.0/24'
- '182.254.119.0/24'
- '182.254.120.0/21'
- '182.254.128.0/17'
- '183.0.0.0/10'
- '183.64.0.0/13'
- '183.78.160.0/21'
@ -4073,7 +4081,10 @@ payload:
- '183.184.0.0/13'
- '183.192.0.0/10'
- '185.109.236.0/24'
- '185.216.118.0/24'
- '185.216.118.0/26'
- '185.216.118.64/27'
- '185.216.118.112/28'
- '185.216.118.128/25'
- '188.131.128.0/17'
- '192.11.23.0/24'
- '192.11.26.0/24'
@ -4096,12 +4107,9 @@ payload:
- '192.144.128.0/17'
- '192.163.11.0/24'
- '192.232.97.0/24'
- '193.9.22.0/24'
- '193.17.120.0/22'
- '193.20.64.0/22'
- '193.32.54.0/24'
- '193.112.0.0/16'
- '193.143.92.0/24'
- '193.200.196.0/24'
- '193.200.222.160/28'
- '194.138.136.0/24'
@ -4733,8 +4741,6 @@ payload:
- '203.12.66.0/24'
- '203.12.70.0/23'
- '203.12.87.0/24'
- '203.12.90.0/24'
- '203.12.92.0/22'
- '203.12.100.0/23'
- '203.12.103.0/24'
- '203.12.114.0/24'
@ -4926,7 +4932,9 @@ payload:
- '203.22.182.0/30'
- '203.22.182.6/31'
- '203.22.182.8/29'
- '203.22.182.16/28'
- '203.22.182.18/31'
- '203.22.182.20/30'
- '203.22.182.24/29'
- '203.22.182.32/27'
- '203.22.182.64/26'
- '203.22.182.128/25'
@ -5380,8 +5388,7 @@ payload:
- '203.83.12.0/22'
- '203.83.56.0/21'
- '203.83.224.0/20'
- '203.86.0.0/18'
- '203.86.64.0/19'
- '203.86.0.0/17'
- '203.86.250.0/24'
- '203.86.254.0/23'
- '203.88.32.0/19'
@ -5441,7 +5448,9 @@ payload:
- '203.118.192.0/19'
- '203.118.241.0/24'
- '203.118.248.0/22'
- '203.119.24.0/23'
- '203.119.24.0/22'
- '203.119.28.0/23'
- '203.119.30.0/24'
- '203.119.32.0/24'
- '203.119.34.0/23'
- '203.119.80.0/22'
@ -5454,8 +5463,16 @@ payload:
- '203.128.32.0/19'
- '203.128.96.0/19'
- '203.128.128.0/24'
- '203.128.224.0/21'
- '203.128.225.0/24'
- '203.128.226.0/23'
- '203.128.228.0/22'
- '203.130.32.0/20'
- '203.130.49.0/24'
- '203.130.51.0/24'
- '203.130.53.0/24'
- '203.130.54.0/23'
- '203.130.56.0/22'
- '203.130.60.0/23'
- '203.132.32.0/19'
- '203.134.240.0/22'
- '203.134.246.0/23'
@ -5464,6 +5481,7 @@ payload:
- '203.142.12.0/23'
- '203.142.219.0/24'
- '203.142.224.0/19'
- '203.144.96.0/19'
- '203.145.0.0/19'
- '203.148.0.0/18'
- '203.148.64.0/20'
@ -5519,7 +5537,6 @@ payload:
- '203.195.64.0/19'
- '203.195.128.0/17'
- '203.196.0.0/21'
- '203.196.10.0/23'
- '203.196.12.0/22'
- '203.196.28.0/22'
- '203.201.181.0/24'
@ -5605,7 +5622,6 @@ payload:
- '211.144.0.0/13'
- '211.152.0.0/17'
- '211.152.134.0/23'
- '211.152.138.0/23'
- '211.152.140.0/22'
- '211.152.150.0/23'
- '211.152.157.0/24'
@ -5628,8 +5644,7 @@ payload:
- '211.155.100.0/22'
- '211.155.104.0/21'
- '211.155.113.0/24'
- '211.155.117.0/24'
- '211.155.118.0/23'
- '211.155.116.0/22'
- '211.155.120.0/21'
- '211.155.128.0/17'
- '211.156.0.0/18'
@ -5670,11 +5685,7 @@ payload:
- '218.64.0.0/11'
- '218.96.0.0/15'
- '218.98.0.0/18'
- '218.98.96.0/21'
- '218.98.104.0/22'
- '218.98.108.0/23'
- '218.98.110.0/24'
- '218.98.112.0/20'
- '218.98.96.0/19'
- '218.98.128.0/19'
- '218.98.192.0/18'
- '218.99.0.0/16'
@ -5742,7 +5753,9 @@ payload:
- '220.231.128.0/17'
- '220.232.64.0/18'
- '220.234.0.0/16'
- '220.242.0.0/24'
- '220.242.0.0/23'
- '220.242.6.0/24'
- '220.242.8.0/24'
- '220.242.12.0/23'
- '220.242.14.0/24'
- '220.242.17.0/24'
@ -5761,20 +5774,42 @@ payload:
- '220.242.120.0/22'
- '220.242.124.0/23'
- '220.242.126.0/24'
- '220.242.134.0/23'
- '220.242.173.0/24'
- '220.242.183.0/24'
- '220.242.197.0/24'
- '220.242.205.0/24'
- '220.242.207.0/24'
- '220.242.215.0/24'
- '220.242.216.0/21'
- '220.242.224.0/19'
- '220.243.0.0/17'
- '220.243.128.0/18'
- '220.243.192.0/23'
- '220.243.194.0/24'
- '220.243.196.0/24'
- '220.243.198.0/23'
- '220.243.201.0/24'
- '220.243.204.0/24'
- '220.243.214.0/24'
- '220.243.217.0/24'
- '220.243.216.0/23'
- '220.243.218.0/24'
- '220.243.238.0/24'
- '220.243.220.0/23'
- '220.243.223.0/24'
- '220.243.225.0/24'
- '220.243.226.0/23'
- '220.243.229.0/24'
- '220.243.230.0/24'
- '220.243.233.0/24'
- '220.243.234.0/23'
- '220.243.237.0/24'
- '220.243.238.0/23'
- '220.243.243.0/24'
- '220.243.244.0/24'
- '220.243.246.0/23'
- '220.243.249.0/24'
- '220.243.250.0/24'
- '220.243.252.0/24'
- '220.243.254.0/23'
- '220.247.136.0/21'
- '220.248.0.0/14'
- '220.252.0.0/16'

View File

@ -16,6 +16,8 @@ payload:
- DOMAIN,az668014.vo.msecnd.net
# > Facebook
- DOMAIN-SUFFIX,cdninstagram.com
- DOMAIN-SUFFIX,facebook.com
- DOMAIN-SUFFIX,facebook.net
- DOMAIN-SUFFIX,fb.com
- DOMAIN-SUFFIX,fb.me
- DOMAIN-SUFFIX,fbaddins.com
@ -30,7 +32,6 @@ payload:
- DOMAIN-SUFFIX,rocksdb.org
- DOMAIN-SUFFIX,whatsapp.com
- DOMAIN-SUFFIX,whatsapp.net
- DOMAIN-KEYWORD,facebook
# > Twitter
- DOMAIN-SUFFIX,pscp.tv
- DOMAIN-SUFFIX,periscope.tv
@ -38,8 +39,8 @@ payload:
- DOMAIN-SUFFIX,twimg.co
- DOMAIN-SUFFIX,twimg.com
- DOMAIN-SUFFIX,twitpic.com
- DOMAIN-SUFFIX,twitter.com
- DOMAIN-SUFFIX,vine.co
- DOMAIN-KEYWORD,twitter
# > Telegram
- DOMAIN-SUFFIX,telegra.ph
- DOMAIN-SUFFIX,telegram.org
@ -74,6 +75,7 @@ payload:
- DOMAIN-SUFFIX,abc.net.au
- DOMAIN-SUFFIX,abebooks.com
- DOMAIN-SUFFIX,amazon.co.jp
- DOMAIN-SUFFIX,ao3.org
- DOMAIN-SUFFIX,apigee.com
- DOMAIN-SUFFIX,apkcombo.com
- DOMAIN-SUFFIX,apk-dl.com
@ -84,6 +86,7 @@ payload:
- DOMAIN-SUFFIX,aptoide.com
- DOMAIN-SUFFIX,archive.is
- DOMAIN-SUFFIX,archive.org
- DOMAIN-SUFFIX,archiveofourown.com
- DOMAIN-SUFFIX,archiveofourown.org
- DOMAIN-SUFFIX,arte.tv
- DOMAIN-SUFFIX,artstation.com
@ -99,6 +102,7 @@ payload:
- DOMAIN-SUFFIX,bibox.com
- DOMAIN-SUFFIX,biggo.com.tw
- DOMAIN-SUFFIX,binance.com
- DOMAIN-SUFFIX,bit.ly
- DOMAIN-SUFFIX,bitcointalk.org
- DOMAIN-SUFFIX,bitfinex.com
- DOMAIN-SUFFIX,bitmex.com
@ -187,6 +191,9 @@ payload:
- DOMAIN-SUFFIX,gate.io
- DOMAIN-SUFFIX,getlantern.org
- DOMAIN-SUFFIX,getsync.com
- DOMAIN-SUFFIX,github.com
- DOMAIN-SUFFIX,github.io
- DOMAIN-SUFFIX,githubusercontent.com
- DOMAIN-SUFFIX,globalvoices.org
- DOMAIN-SUFFIX,goo.ne.jp
- DOMAIN-SUFFIX,goodreads.com
@ -204,12 +211,14 @@ payload:
- DOMAIN-SUFFIX,hket.com
- DOMAIN-SUFFIX,hootsuite.com
- DOMAIN-SUFFIX,hudson.org
- DOMAIN-SUFFIX,huffpost.com
- DOMAIN-SUFFIX,hyread.com.tw
- DOMAIN-SUFFIX,ibtimes.com
- DOMAIN-SUFFIX,i-cable.com
- DOMAIN-SUFFIX,icij.org
- DOMAIN-SUFFIX,icoco.com
- DOMAIN-SUFFIX,imgur.com
- DOMAIN-SUFFIX,independent.co.uk
- DOMAIN-SUFFIX,initiummall.com
- DOMAIN-SUFFIX,inoreader.com
- DOMAIN-SUFFIX,insecam.org
@ -228,6 +237,7 @@ payload:
- DOMAIN-SUFFIX,kakaocorp.com
- DOMAIN-SUFFIX,kik.com
- DOMAIN-SUFFIX,kingkong.com.tw
- DOMAIN-SUFFIX,knowyourmeme.com
- DOMAIN-SUFFIX,kobo.com
- DOMAIN-SUFFIX,kobobooks.com
- DOMAIN-SUFFIX,kodingen.com
@ -257,12 +267,15 @@ payload:
- DOMAIN-SUFFIX,nanyang.com
- DOMAIN-SUFFIX,nationalinterest.org
- DOMAIN-SUFFIX,naver.com
- DOMAIN-SUFFIX,nbcnews.com
- DOMAIN-SUFFIX,ndr.de
- DOMAIN-SUFFIX,neowin.net
- DOMAIN-SUFFIX,newstapa.org
- DOMAIN-SUFFIX,nexitally.com
- DOMAIN-SUFFIX,nhk.or.jp
- DOMAIN-SUFFIX,nii.ac.jp
- DOMAIN-SUFFIX,nikkei.com
- DOMAIN-SUFFIX,nitter.net
- DOMAIN-SUFFIX,nofile.io
- DOMAIN-SUFFIX,notion.so
- DOMAIN-SUFFIX,now.com
@ -308,6 +321,7 @@ payload:
- DOMAIN-SUFFIX,quora.com
- DOMAIN-SUFFIX,quoracdn.net
- DOMAIN-SUFFIX,qz.com
- DOMAIN-SUFFIX,radio.garden
- DOMAIN-SUFFIX,rakuten.co.jp
- DOMAIN-SUFFIX,rarbgprx.org
- DOMAIN-SUFFIX,readingtimes.com.tw
@ -329,8 +343,10 @@ payload:
- DOMAIN-SUFFIX,shadowsocks.org
- DOMAIN-SUFFIX,shindanmaker.com
- DOMAIN-SUFFIX,shopee.tw
- DOMAIN-SUFFIX,sina.com.hk
- DOMAIN-SUFFIX,slideshare.net
- DOMAIN-SUFFIX,softfamous.com
- DOMAIN-SUFFIX,spiegel.de
- DOMAIN-SUFFIX,ssrcloud.org
- DOMAIN-SUFFIX,startpage.com
- DOMAIN-SUFFIX,steamcommunity.com
@ -348,6 +364,7 @@ payload:
- DOMAIN-SUFFIX,theinitium.com
- DOMAIN-SUFFIX,themoviedb.org
- DOMAIN-SUFFIX,thetvdb.com
- DOMAIN-SUFFIX,time.com
- DOMAIN-SUFFIX,tineye.com
- DOMAIN-SUFFIX,tiny.cc
- DOMAIN-SUFFIX,tinyurl.com
@ -414,8 +431,8 @@ payload:
- DOMAIN,s3-ap-northeast-1.amazonaws.com
- DOMAIN,s3-ap-southeast-2.amazonaws.com
- DOMAIN,search.avira.com
- DOMAIN,us.weibo.com
- DOMAIN-KEYWORD,github
- DOMAIN-KEYWORD,jav
- DOMAIN-KEYWORD,pinterest
- DOMAIN-KEYWORD,porn
@ -476,10 +493,19 @@ payload:
- DOMAIN-SUFFIX,tdesktop.com
- DOMAIN-SUFFIX,telegram.me
- DOMAIN-SUFFIX,telesco.pe
# > Facebook
- DOMAIN-SUFFIX,facebook.br
- DOMAIN-SUFFIX,facebook.design
- DOMAIN-SUFFIX,facebook.hu
- DOMAIN-SUFFIX,facebook.in
- DOMAIN-SUFFIX,facebook.nl
- DOMAIN-SUFFIX,facebook.se
- DOMAIN-SUFFIX,facebookmail.com
# > Others
- DOMAIN-SUFFIX,noxinfluencer.com
- DOMAIN-SUFFIX,smartmailcloud.com
- DOMAIN-SUFFIX,weebly.com
- DOMAIN-SUFFIX,twitter.jp
# (Region-Restricted Access Denied)
# ---(Apple)---
@ -508,7 +534,7 @@ payload:
# (Network Jitter)
# > Fix download or update is stuck in App Store,and when change the Apple ID region,the payment information can be selected by none.
- DOMAIN-KEYWORD,buy.itunes.apple.com
# - DOMAIN-SUFFIX,evernote.com
- DOMAIN-SUFFIX,cloudcone.com.cn
- DOMAIN-SUFFIX,inkbunny.net
- DOMAIN-SUFFIX,metapix.net
- DOMAIN-SUFFIX,s3.amazonaws.com

View File

@ -10,8 +10,8 @@ payload:
- DOMAIN-SUFFIX,deezer.com
- DOMAIN-SUFFIX,dzcdn.net
# > JOOX
# USER-AGENT,WeMusic*
# USER-AGENT,JOOX*
# USER-AGENT,WeMusic*
- DOMAIN-SUFFIX,joox.com
- DOMAIN-KEYWORD,jooxweb-api
# > KKBOX
@ -96,6 +96,10 @@ payload:
- DOMAIN-SUFFIX,dssott.com
- DOMAIN,cdn.registerdisney.go.com
- DOMAIN,global.edge.bamgrid.com
# > DMM
- DOMAIN-SUFFIX,dmm.co.jp
- DOMAIN-SUFFIX,dmm.com
- DOMAIN-SUFFIX,dmm-extension.com
# > encoreTVB
# USER-AGENT,encoreTVB*
- DOMAIN-SUFFIX,encoretvb.com
@ -148,6 +152,7 @@ payload:
- DOMAIN-SUFFIX,hulustream.com
# > Hulu / フールー
- DOMAIN-SUFFIX,happyon.jp
- DOMAIN-SUFFIX,hjholdings.jp
- DOMAIN-SUFFIX,hulu.jp
# > ITV
# USER-AGENT,ITV_Player*
@ -229,16 +234,18 @@ payload:
# USER-AGENT,TikTok*
- DOMAIN-SUFFIX,byteoversea.com
- DOMAIN-SUFFIX,ibytedtos.com
- DOMAIN-SUFFIX,ipstatp.com
- DOMAIN-SUFFIX,muscdn.com
- DOMAIN-SUFFIX,musical.ly
- DOMAIN-SUFFIX,tiktok.com
- DOMAIN-SUFFIX,tiktokcdn.com
- DOMAIN-SUFFIX,tiktokv.com
- DOMAIN-KEYWORD,-tiktokcdn-com
# > Twitch
- DOMAIN-SUFFIX,jtvnw.net
- DOMAIN-SUFFIX,ttvnw.net
- DOMAIN-SUFFIX,twitch.tv
- DOMAIN-SUFFIX,twitchcdn.net
- DOMAIN-SUFFIX,ttvnw.net
- DOMAIN-SUFFIX,jtvnw.net
# > ViuTV
# USER-AGENT,Viu*
- DOMAIN-SUFFIX,viu.com

View File

@ -25,6 +25,7 @@ function index()
entry({"admin", "services", "openclash", "ping"}, call("act_ping"))
entry({"admin", "services", "openclash", "download_rule"}, call("action_download_rule"))
entry({"admin", "services", "openclash", "restore"}, call("action_restore_config"))
entry({"admin", "services", "openclash", "switch_mode"}, call("action_switch_mode"))
entry({"admin", "services", "openclash", "settings"},cbi("openclash/settings"),_("Global Settings"), 30).leaf = true
entry({"admin", "services", "openclash", "servers"},cbi("openclash/servers"),_("Severs and Groups"), 40).leaf = true
entry({"admin", "services", "openclash", "rule-providers-settings"},cbi("openclash/rule-providers-settings"),_("Rule Providers and Groups"), 50).leaf = true
@ -213,6 +214,22 @@ function action_restore_config()
luci.sys.call("cp '/usr/share/openclash/backup/openclash_custom_rules_2.list' '/etc/openclash/custom/openclash_custom_rules_2.list' >/dev/null 2>&1 &")
luci.sys.call("cp '/usr/share/openclash/backup/openclash_custom_fake_black.conf' '/etc/openclash/custom/openclash_custom_fake_black.conf' >/dev/null 2>&1 &")
luci.sys.call("cp '/usr/share/openclash/backup/openclash_custom_hosts.list' '/etc/openclash/custom/openclash_custom_hosts.list' >/dev/null 2>&1 &")
luci.sys.call("cp '/usr/share/openclash/backup/openclash_custom_domain_dns.list' '/etc/openclash/custom/openclash_custom_domain_dns.list' >/dev/null 2>&1 &")
end
function action_switch_mode()
local switch_mode = luci.sys.exec("uci get openclash.config.operation_mode 2>/dev/null")
if switch_mode == "redir-host\n" then
switch_mode = "redir-host"
luci.sys.call("uci set openclash.config.operation_mode=fake-ip >/dev/null 2>&1 && uci commit openclash")
else
switch_mode = "fake-ip"
luci.sys.call("uci set openclash.config.operation_mode=redir-host >/dev/null 2>&1 && uci commit openclash")
end
luci.http.prepare_content("application/json")
luci.http.write_json({
switch_mode = switch_mode;
})
end
function action_status()

View File

@ -36,13 +36,6 @@ s:tab("geo_update", translate("GEOIP Update"))
s:tab("version_update", translate("Version Update"))
s:tab("debug", translate("Debug Logs"))
---- Operation Mode
o = s:taboption("op_mode", ListValue, "operation_mode", font_red..bold_on..translate("Select Operation Mode")..bold_off..font_off)
o.description = translate("Select Mode For Page Settings, Switch By Click the Button Bellow")
o:value("redir-host", translate("redir-host mode"))
o:value("fake-ip", translate("fake-ip mode"))
o.default = "redir-host"
o = s:taboption("op_mode", ListValue, "en_mode", font_red..bold_on..translate("Select Mode")..bold_off..font_off)
o.description = translate("Select Mode For OpenClash Work, Try Flush DNS Cache If Network Error")
if op_mode == "redir-host" then
@ -81,14 +74,19 @@ o:value("direct", translate("Direct Proxy Mode"))
o:value("script", translate("Script Proxy Mode (Tun Core Only)"))
o.default = "rule"
o = s:taboption("op_mode", Button, translate("Switch Operation Mode"))
o.title = translate("Switch Operation Mode")
o.inputtitle = translate("Switch Mode")
o.inputstyle = "reload"
o.write = function()
m.uci:commit("openclash")
HTTP.redirect(DISP.build_url("admin", "services", "openclash", "settings"))
end
o = s:taboption("op_mode", ListValue, "china_ip_route", font_red..bold_on..translate("China IP Route")..bold_off..font_off)
o.description = translate("Bypass The China Network Flows, Improve Performance")
o:value("0", translate("Disable"))
o:value("1", translate("Enable"))
o.default = "0"
o:depends("en_mode", "redir-host")
o:depends("en_mode", "redir-host-tun")
o:depends("en_mode", "redir-host-vpn")
---- Operation Mode
switch_mode = s:taboption("op_mode", DummyValue, "", nil)
switch_mode.template = "openclash/switch_mode"
---- General Settings
local cpu_model=SYS.exec("opkg status libc 2>/dev/null |grep 'Architecture' |awk -F ': ' '{print $2}' 2>/dev/null")
@ -177,13 +175,13 @@ o:value("0", translate("Disable"))
o:value("1", translate("Enable"))
o.default=0
if op_mode == "fake-ip" then
o = s:taboption("dns", ListValue, "dns_advanced_setting", translate("Advanced Setting"))
o.description = translate("DNS Advanced Settings")..font_red..bold_on..translate("(Please Don't Modify it at Will)")..bold_off..font_off
o:value("0", translate("Disable"))
o:value("1", translate("Enable"))
o.default=0
if op_mode == "fake-ip" then
o = s:taboption("dns", Button, translate("Fake-IP-Filter List Update"))
o.title = translate("Fake-IP-Filter List Update")
o:depends("dns_advanced_setting", "1")
@ -215,6 +213,30 @@ function custom_fake_black.write(self, section, value)
end
end
o = s:taboption("dns", Value, "custom_domain_dns_server", translate("Specify DNS Server"))
o.description = translate("Specify DNS Server For List, Only One IP Server Address Support")
o.default="114.114.114.114"
o.placeholder = translate("114.114.114.114 or 127.0.0.1#5300")
o:depends("dns_advanced_setting", "1")
custom_domain_dns = s:taboption("dns", Value, "custom_domain_dns")
custom_domain_dns.template = "cbi/tvalue"
custom_domain_dns.description = translate("Domain Names In The List Use The Custom DNS Server, One rule per line")
custom_domain_dns.rows = 20
custom_domain_dns.wrap = "off"
custom_domain_dns:depends("dns_advanced_setting", "1")
function custom_domain_dns.cfgvalue(self, section)
return NXFS.readfile("/etc/openclash/custom/openclash_custom_domain_dns.list") or ""
end
function custom_domain_dns.write(self, section, value)
if value then
value = value:gsub("\r\n?", "\n")
NXFS.writefile("/etc/openclash/custom/openclash_custom_domain_dns.list", value)
end
end
---- Access Control
if op_mode == "redir-host" then
o = s:taboption("lan_ac", ListValue, "lan_ac_mode", translate("Access Control Mode"))

View File

@ -0,0 +1,38 @@
<fieldset class="cbi-section">
<table width="100%">
<tr><td width="100%" colspan="4">
<p align="center" id="switch_mode">
<%:Collecting data...%>
</p>
</td></tr>
</table>
</fieldset>
<script type="text/javascript">//<![CDATA[
var switch_mode = document.getElementById('switch_mode');
switch_mode.innerHTML = '<input type="button" class="cbi-button cbi-button-reset" value="<%:Redir-Host/Fake-IP模式切换%>" onclick="return switch_modes(this)"/>';
function switch_modes(btn)
{
btn.value = '<%:Redir-Host/Fake-IP模式切换%>';
btn.disabled = true;
XHR.get('<%=luci.dispatcher.build_url("admin", "services", "openclash", "switch_mode")%>', null, function(x, status) {
if ( x && x.status == 200 ) {
if ( status.switch_mode == "redir-host" ) {
alert('页面已切换为Fake-IP模式')
window.location.href='<%="http://'+window.location.hostname+'/cgi-bin/luci/admin/services/openclash/settings"%>';
}
else {
alert('页面已切换为Redir-Host模式')
window.location.href='<%="http://'+window.location.hostname+'/cgi-bin/luci/admin/services/openclash/settings"%>';
}
}
});
btn.disabled = false;
return false;
}
//]]></script>

View File

@ -322,9 +322,11 @@
XHR.get('<%=luci.dispatcher.build_url("admin", "services", "openclash", "restore")%>', null, function(x, status) {
if ( x && x.status == 200 ) {
alert('还原默认配置成功!')
window.location.href='<%="http://'+window.location.hostname+'/cgi-bin/luci/admin/services/openclash/settings"%>';
}
else {
alert('还原默认配置失败!')
window.location.href='<%="http://'+window.location.hostname+'/cgi-bin/luci/admin/services/openclash/settings"%>';
}
});
} else {

View File

@ -0,0 +1,20 @@
#!/bin/sh
status=$(ps|grep -c /usr/share/openclash/openclash_custom_domain_dns.sh)
[ "$status" -gt "3" ] && exit 0
START_LOG="/tmp/openclash_start.log"
rm -rf /tmp/dnsmasq.d/dnsmasq_openclash_custom_domain.conf >/dev/null 2>&1
if [ "$(uci get openclash.config.dns_advanced_setting 2>/dev/null)" -eq 1 ]; then
echo "正在设置第二DNS服务器列表..." >$START_LOG
custom_domain_dns_server=$(uci get openclash.config.custom_domain_dns_server 2>/dev/null)
[ -z "$custom_domain_dns_server" ] && {
custom_domain_dns_server="114.114.114.114"
}
if [ -s "/etc/openclash/custom/openclash_custom_domain_dns.list" ]; then
mkdir -p /tmp/dnsmasq.d
awk -v tag="$custom_domain_dns_server" '!/^$/&&!/^#/{printf("server=/%s/"'tag'"\n",$0)}' /etc/openclash/custom/openclash_custom_domain_dns.list >>/tmp/dnsmasq.d/dnsmasq_openclash_custom_domain.conf 2>/dev/null
fi
fi

View File

@ -29,6 +29,7 @@
fi
sed -i -n '/^rule-providers:/,$p' /tmp/rules.yaml 2>/dev/null
sed -i "s/# - RULE-SET,ChinaIP,DIRECT/- RULE-SET,ChinaIP,DIRECT/g" /tmp/rules.yaml 2>/dev/null
sed -i "s/- GEOIP,/#- GEOIP,/g" /tmp/rules.yaml 2>/dev/null
elif [ "$RUlE_SOURCE" = "ConnersHua_return" ]; then
if pidof clash >/dev/null; then
curl -sL --connect-timeout 10 --retry 2 -x http://$PROXY_ADDR:$HTTP_PORT -U "$PROXY_AUTH" https://raw.githubusercontent.com/ConnersHua/Profiles/master/Clash/China.yaml -o /tmp/rules.yaml >/dev/null 2>&1

View File

@ -13,8 +13,14 @@ yml_other_set()
sed -i '/^##Custom Rules 2##/d' "$4" 2>/dev/null
sed -i '/^##Custom Rules 2 End##/d' "$4" 2>/dev/null
sed -i '/- DOMAIN-KEYWORD,tracker,DIRECT/d' "$4" 2>/dev/null
sed -i '/- DOMAIN-KEYWORD,announce,DIRECT/d' "$4" 2>/dev/null
sed -i '/- DOMAIN-KEYWORD,announce.php?passkey=,DIRECT/d' "$4" 2>/dev/null
sed -i '/- DOMAIN-KEYWORD,torrent,DIRECT/d' "$4" 2>/dev/null
sed -i '/- DOMAIN-KEYWORD,peer_id=,DIRECT/d' "$4" 2>/dev/null
sed -i '/- DOMAIN-KEYWORD,info_hash,DIRECT/d' "$4" 2>/dev/null
sed -i '/- DOMAIN-KEYWORD,get_peers,DIRECT/d' "$4" 2>/dev/null
sed -i '/- DOMAIN-KEYWORD,find_node,DIRECT/d' "$4" 2>/dev/null
sed -i '/- DOMAIN-KEYWORD,BitTorrent,DIRECT/d' "$4" 2>/dev/null
sed -i '/- DOMAIN-KEYWORD,announce_peer,DIRECT/d' "$4" 2>/dev/null
if [ -z "$(grep '^ \{0,\}- IP-CIDR,198.18.0.1/16,REJECT,no-resolve' "$4")" ] && [ "$6" = "fake-ip" ]; then
if [ ! -z "$(grep "^ \{0,\}- IP-CIDR,198.18.0.1/16" "$4")" ]; then
@ -26,7 +32,7 @@ yml_other_set()
fi
fi
fi
if [ "$7" = 1 ]; then
sed -i '1,/^ \{0,\}- GEOIP/{/^ \{0,\}- GEOIP/s/^ \{0,\}- GEOIP/- DOMAIN-KEYWORD,tracker,DIRECT\n&/}' "$4" 2>/dev/null
if [ -z "$(grep '^- DOMAIN-KEYWORD,tracker,DIRECT' "$4")" ]; then
@ -35,8 +41,14 @@ yml_other_set()
if [ -z "$(grep '^- DOMAIN-KEYWORD,tracker,DIRECT' "$4")" ]; then
echo "- DOMAIN-KEYWORD,tracker,DIRECT" >> "$4" 2>/dev/null
fi
sed -i "/- DOMAIN-KEYWORD,tracker,DIRECT/a\- DOMAIN-KEYWORD,announce,DIRECT" "$4" 2>/dev/null
sed -i "/- DOMAIN-KEYWORD,tracker,DIRECT/a\- DOMAIN-KEYWORD,announce.php?passkey=,DIRECT" "$4" 2>/dev/null
sed -i "/- DOMAIN-KEYWORD,tracker,DIRECT/a\- DOMAIN-KEYWORD,torrent,DIRECT" "$4" 2>/dev/null
sed -i "/- DOMAIN-KEYWORD,tracker,DIRECT/a\- DOMAIN-KEYWORD,peer_id=,DIRECT" "$4" 2>/dev/null
sed -i "/- DOMAIN-KEYWORD,tracker,DIRECT/a\- DOMAIN-KEYWORD,info_hash,DIRECT" "$4" 2>/dev/null
sed -i "/- DOMAIN-KEYWORD,tracker,DIRECT/a\- DOMAIN-KEYWORD,get_peers,DIRECT" "$4" 2>/dev/null
sed -i "/- DOMAIN-KEYWORD,tracker,DIRECT/a\- DOMAIN-KEYWORD,find_node,DIRECT" "$4" 2>/dev/null
sed -i "/- DOMAIN-KEYWORD,tracker,DIRECT/a\- DOMAIN-KEYWORD,BitTorrent,DIRECT" "$4" 2>/dev/null
sed -i "/- DOMAIN-KEYWORD,tracker,DIRECT/a\- DOMAIN-KEYWORD,announce_peer,DIRECT" "$4" 2>/dev/null
if [ -z "$(grep "###- MATCH," "$4")" ] && [ -z "$(grep "###- FINAL," "$4")" ]; then
sed -i 's/- MATCH,/###&/' "$4" 2>/dev/null
echo "- MATCH,DIRECT" >> "$4" 2>/dev/null
@ -47,7 +59,7 @@ yml_other_set()
sed -i "s/###- MATCH,/- MATCH,/" "$4" 2>/dev/null
fi
fi
if [ "$3" = 1 ]; then
sed -i '/^rules:/a\##Custom Rules End##' "$4" 2>/dev/null
sed -i '/^rules:/a\##Custom Rules##' "$4" 2>/dev/null

View File

@ -149,6 +149,12 @@ msgstr "网络栈类型"
msgid "Select Stack Type For Tun Mode, According To The Running Speed on Your Machine"
msgstr "请自行根据运行速度为Tun模式选择合适的网络栈"
msgid "China IP Route"
msgstr "实验性绕过中国大陆IP"
msgid "Bypass The China Network Flows, Improve Performance"
msgstr "启用后中国大陆流量将不再经过内核,提升系统性能"
msgid "Log Level"
msgstr "日志等级"
@ -213,7 +219,7 @@ msgid "(Please Don't Modify it at Will)"
msgstr "(如您不知道选项有何用,请不要随意修改)"
msgid "Specify DNS Server"
msgstr "Fake-IP模式黑名单DNS服务器"
msgstr "指定(第二)DNS服务器"
msgid "Specify DNS Server For List, Only One IP Server Address Support"
msgstr "指定下方列表中域名的DNS服务器只支持填写一个IP地址"
@ -221,6 +227,9 @@ msgstr "指定下方列表中域名的DNS服务器只支持填写一个IP地
msgid "Domain Names In The List Do Not Return Fake-IP, One rule per line"
msgstr "每行请只填写一个域名列表中的域名在Fake-IP模式下查询DNS时将返回真实IP地址更改后点击上方按钮生效"
msgid "Domain Names In The List Use The Custom DNS Server, One rule per line"
msgstr "每行请只填写一个域名列表中的域名将使用上方指定的DNS进行查询"
msgid "Fake-IP-Filter List Update"
msgstr "更新Fake-IP域名黑名单"