OpenClash: sync with upstream source

This commit is contained in:
CN_SZTL 2020-03-21 01:25:42 +08:00
parent 0108411bdc
commit 196682b8bb
No known key found for this signature in database
GPG Key ID: 6850B6345C862176
13 changed files with 138 additions and 68 deletions

View File

@ -1,7 +1,7 @@
include $(TOPDIR)/rules.mk
PKG_NAME:=luci-app-openclash
PKG_VERSION:=0.36.11
PKG_VERSION:=0.36.12
PKG_RELEASE:=beta
PKG_MAINTAINER:=vernesong <https://github.com/vernesong/OpenClash>

View File

@ -432,6 +432,7 @@ Rule:
- DOMAIN-SUFFIX,pbs.org,GlobalMedia
# > Pornhub
- DOMAIN-SUFFIX,phncdn.com,GlobalMedia
- DOMAIN-SUFFIX,phprcdn.com,GlobalMedia
- DOMAIN-SUFFIX,pornhub.com,GlobalMedia
- DOMAIN-SUFFIX,pornhubpremium.com,GlobalMedia
# > 台湾好
@ -814,6 +815,7 @@ Rule:
- DOMAIN-SUFFIX,wattpad.com,PROXY
- DOMAIN-SUFFIX,whoer.net,PROXY
- DOMAIN-SUFFIX,wikimapia.org,PROXY
- DOMAIN-SUFFIX,wikimedia.org,PROXY
- DOMAIN-SUFFIX,wikipedia.org,PROXY
- DOMAIN-SUFFIX,wikiquote.org,PROXY
- DOMAIN-SUFFIX,wikiwand.com,PROXY

View File

@ -8461,13 +8461,10 @@ Rule:
# > ABC
- DOMAIN-SUFFIX,edgedatg.com,GlobalTV
- DOMAIN-SUFFIX,go.com,GlobalTV
# > Abema TV
# > AbemaTV
# - USER-AGENT,AbemaTV*,GlobalTV
- DOMAIN-SUFFIX,abema.io,GlobalTV
- DOMAIN-SUFFIX,abema.tv,GlobalTV
- DOMAIN-SUFFIX,akamaized.net,GlobalTV
- DOMAIN-SUFFIX,ameba.jp,GlobalTV
- DOMAIN-SUFFIX,hayabusa.io,GlobalTV
@ -8481,6 +8478,18 @@ Rule:
- DOMAIN-SUFFIX,amazonvideo.com,GlobalTV
- DOMAIN-SUFFIX,llnwd.net,GlobalTV
# > Apple News and Apple Map TOMTOM Version
# - USER-AGENT,AppleNews*,GlobalTV
# - USER-AGENT,com.apple.news*,GlobalTV
- DOMAIN,gspe1-ssl.ls.apple.com,GlobalTV
# - USER-AGENT,News*,GlobalTV
# - DOMAIN,apple.comscoreresearch.com,GlobalTV
# - DOMAIN,gateway.icloud.com,GlobalTV
# - DOMAIN,news-client.apple.com,GlobalTV
# - DOMAIN,news-edge.apple.com,GlobalTV
# - DOMAIN,news-events.apple.com,GlobalTV
# - DOMAIN-SUFFIX,apple.news,GlobalTV
# > Apple TV
- DOMAIN,np-edge.itunes.apple.com,GlobalTV
- DOMAIN,play-edge.itunes.apple.com,GlobalTV
@ -8492,20 +8501,12 @@ Rule:
- DOMAIN-SUFFIX,gamer.com.tw,GlobalTV
- DOMAIN-SUFFIX,hinet.net,GlobalTV
# > BBC
# > BBC iPlayer
# - USER-AGENT,BBCiPlayer*,GlobalTV
- DOMAIN-KEYWORD,bbcfmt,GlobalTV
- DOMAIN-KEYWORD,co.uk,GlobalTV
- DOMAIN-KEYWORD,uk-live,GlobalTV
- DOMAIN-SUFFIX,bbc.co,GlobalTV
- DOMAIN-SUFFIX,bbc.co.uk,GlobalTV
- DOMAIN-SUFFIX,bbc.com,GlobalTV
- DOMAIN-SUFFIX,bbci.co,GlobalTV
- DOMAIN-SUFFIX,bbci.co.uk,GlobalTV
# > CHOCO TV
# - USER-AGENT,TwDramas*,GlobalTV
- DOMAIN-SUFFIX,chocotv.com.tw,GlobalTV
- DOMAIN-KEYWORD,bbcfmt,GlobalTV
- DOMAIN-KEYWORD,uk-live,GlobalTV
# > DAZN
- DOMAIN-SUFFIX,d151l6v8er5bdm.cloudfront.net,GlobalTV
@ -8517,97 +8518,121 @@ Rule:
# > Disney Plus
# - USER-AGENT,Disney*,GlobalTV
- DOMAIN,cdn.registerdisney.go.com,GlobalTV
- DOMAIN-SUFFIX,disneyplus.com,GlobalTV
- DOMAIN-SUFFIX,disney-plus.net,GlobalTV
- DOMAIN-SUFFIX,dssott.com,GlobalTV
- DOMAIN-SUFFIX,bamgrid.com,GlobalTV
- DOMAIN-SUFFIX,execute-api.us-east-1.amazonaws.com,GlobalTV
- DOMAIN,cdn.registerdisney.go.com,GlobalTV
# > Now E
# - USER-AGENT,PCCW*,GlobalTV
- DOMAIN-KEYWORD,nowe,GlobalTV
- DOMAIN,bcbolthboa-a.akamaihd.net,GlobalTV
- DOMAIN-SUFFIX,nowe.com,GlobalTV
- DOMAIN-SUFFIX,youboranqs01.com,GlobalTV
# > encoreTVB
# - USER-AGENT,encoreTVB*,GlobalTV
- DOMAIN-SUFFIX,encoretvb.com,GlobalTV
- DOMAIN,content.jwplatform.com,GlobalTV
- DOMAIN,videos-f.jwpsrv.com,GlobalTV
# > Epicgames
- DOMAIN-KEYWORD,epicgames,GlobalTV
- DOMAIN-SUFFIX,helpshift.com,GlobalTV
# > Fox+
# > Fox Now
# - USER-AGENT,FOX%20NOW*,GlobalTV
# - USER-AGENT,FOXPlus*,GlobalTV
- DOMAIN-KEYWORD,foxplus,GlobalTV
- DOMAIN-SUFFIX,config.fox.com,GlobalTV
- DOMAIN-SUFFIX,emome.net,GlobalTV
- DOMAIN-SUFFIX,fox.com,GlobalTV
- DOMAIN-SUFFIX,foxdcg.com,GlobalTV
- DOMAIN-SUFFIX,foxnow.com,GlobalTV
- DOMAIN-SUFFIX,foxplus.com,GlobalTV
- DOMAIN-SUFFIX,foxplay.com,GlobalTV
- DOMAIN-SUFFIX,ipinfo.io,GlobalTV
- DOMAIN-SUFFIX,mstage.io,GlobalTV
- DOMAIN-SUFFIX,now.com,GlobalTV
- DOMAIN-SUFFIX,theplatform.com,GlobalTV
- DOMAIN-SUFFIX,urlload.net,GlobalTV
- DOMAIN-SUFFIX,uplynk.com,GlobalTV
# > HBO && HBO Go
# > Fox+ (HK|TW|SG)
# - USER-AGENT,FOXPlus*,GlobalTV
- DOMAIN-SUFFIX,akamaized.net,GlobalTV
- DOMAIN-SUFFIX,foxplus.com,GlobalTV
- DOMAIN-SUFFIX,theplatform.com,GlobalTV
# > HBO NOW & HBO GO
# - USER-AGENT,HBO%20NOW*,GlobalTV
- DOMAIN-SUFFIX,execute-api.ap-southeast-1.amazonaws.com,GlobalTV
- DOMAIN-SUFFIX,hbo.com,GlobalTV
- DOMAIN-SUFFIX,hbogo.com,GlobalTV
- DOMAIN-SUFFIX,hboasia.com,GlobalTV
- DOMAIN-SUFFIX,hbogo.com,GlobalTV
- DOMAIN-SUFFIX,hbogoasia.com,GlobalTV
- DOMAIN-SUFFIX,hbogoasia.hk,GlobalTV
# > Hulu
# - USER-AGENT,Hulu*,GlobalTV
# > Hulu(フールー)
- DOMAIN-SUFFIX,happyon.jp,GlobalTV
- DOMAIN-SUFFIX,hulu.jp,GlobalTV
# > Hulu
- DOMAIN-SUFFIX,hulu.com,GlobalTV
- DOMAIN-SUFFIX,huluim.com,GlobalTV
- DOMAIN-SUFFIX,hulustream.com,GlobalTV
# > Imkan
- DOMAIN-SUFFIX,imkan.tv,GlobalTV
# > Japonx
- DOMAIN-KEYWORD,japonx,GlobalTV
- DOMAIN-KEYWORD,japronx,GlobalTV
- DOMAIN-SUFFIX,japonx.com,GlobalTV
- DOMAIN-SUFFIX,japonx.tv,GlobalTV
- DOMAIN-SUFFIX,japonx.net,GlobalTV
- DOMAIN-SUFFIX,japonx.vip,GlobalTV
- DOMAIN-SUFFIX,japronx.com,GlobalTV
- DOMAIN-SUFFIX,japronx.tv,GlobalTV
- DOMAIN-SUFFIX,japronx.net,GlobalTV
- DOMAIN-SUFFIX,japronx.vip,GlobalTV
# > JOOX
# - USER-AGENT,WeMusic*,GlobalTV
# - USER-AGENT,JOOX*,GlobalTV
- DOMAIN-SUFFIX,joox.com,GlobalTV
# > MytvSUPER
# > KKBOX
- DOMAIN-SUFFIX,kkbox.com,GlobalTV
- DOMAIN-SUFFIX,kkbox.com.tw,GlobalTV
- DOMAIN-SUFFIX,kfs.io,GlobalTV
# > Line TV
# - USER-AGENT,LINE*,GlobalTV
- DOMAIN-SUFFIX,d3c7rimkq79yfu.cloudfront.net,GlobalTV
- DOMAIN-SUFFIX,linetv.tw,GlobalTV
# > myTV_SUPER
# - USER-AGENT,mytv*,GlobalTV
- DOMAIN-KEYWORD,nowtv100,GlobalTV
- DOMAIN-KEYWORD,rthklive,GlobalTV
- DOMAIN-SUFFIX,mytvsuper.com,GlobalTV
- DOMAIN-SUFFIX,tvb.com,GlobalTV
# > Pandora
- DOMAIN-SUFFIX,pandora.com,GlobalTV
# > Sky GO
# - USER-AGENT,skygo*,GlobalTV
- DOMAIN-SUFFIX,sky.com,GlobalTV
- DOMAIN-SUFFIX,skygo.co.nz,GlobalTV
# > PBS
# - USER-AGENT,PBS*,GlobalTV
- DOMAIN-SUFFIX,pbs.org,GlobalTV
# > Pornhub
- DOMAIN-SUFFIX,phncdn.com,GlobalTV
- DOMAIN-SUFFIX,phprcdn.com,GlobalTV
- DOMAIN-SUFFIX,pornhub.com,GlobalTV
- DOMAIN-SUFFIX,pornhubpremium.com,GlobalTV
# > SoundCloud
# - USER-AGENT,SoundCloud*,GlobalTV
- DOMAIN-SUFFIX,sndcdn.com,GlobalTV
- DOMAIN-SUFFIX,soundcloud.com,GlobalTV
# > viuTV
# > ViuTV
# - USER-AGENT,ViuTV*,GlobalTV
- DOMAIN-SUFFIX,cloudfront.net,GlobalTV
- DOMAIN-SUFFIX,viu.com,GlobalTV
- DOMAIN-SUFFIX,viu.tv,GlobalTV
- DOMAIN-SUFFIX,viu.now.com,GlobalTV
# > Youtube_Music
# - USER-AGENT,*YouTubeMusic*,GlobalTV
# - USER-AGENT,*com.google.ios.youtubemusic*,GlobalTV
# > Youtube
# - USER-AGENT,*youtube*,GlobalTV
# - USER-AGENT,YouTube*,GlobalTV
- DOMAIN-KEYWORD,youtube,GlobalTV
- DOMAIN-SUFFIX,googlevideo.com,GlobalTV
- DOMAIN-SUFFIX,gvt2.com,GlobalTV
- DOMAIN-SUFFIX,youtu.be,GlobalTV
# > Netflix
- DOMAIN-SUFFIX,netflix.com,Netflix
- DOMAIN-SUFFIX,netflix.net,Netflix
@ -8785,6 +8810,7 @@ Rule:
- DOMAIN-SUFFIX,airtable.com,Proxy
- DOMAIN-SUFFIX,alfredapp.com,Proxy
- DOMAIN-SUFFIX,allconnected.co,Proxy
- DOMAIN-SUFFIX,amazon.co,Proxy
- DOMAIN-SUFFIX,amazon.com,Proxy
- DOMAIN-SUFFIX,amazonaws.com,Proxy
- DOMAIN-SUFFIX,ampproject.com,Proxy
@ -8975,6 +9001,7 @@ Rule:
- DOMAIN-SUFFIX,homedepot.com,Proxy
- DOMAIN-SUFFIX,hootsuite.com,Proxy
- DOMAIN-SUFFIX,howtoforge.com,Proxy
- DOMAIN-SUFFIX,i-cable.com,Proxy
- DOMAIN-SUFFIX,iam.soy,Proxy
- DOMAIN-SUFFIX,icoco.com,Proxy
- DOMAIN-SUFFIX,icons8.com,Proxy
@ -9100,6 +9127,7 @@ Rule:
- DOMAIN-SUFFIX,popo.tw,Proxy
- DOMAIN-SUFFIX,potato.im,Proxy
- DOMAIN-SUFFIX,redd.it,Proxy
- DOMAIN-SUFFIX,rthk.hk,Proxy
- DOMAIN-SUFFIX,prfct.co,Proxy
- DOMAIN-SUFFIX,proxfree.com,Proxy
- DOMAIN-SUFFIX,psiphon3.com,Proxy
@ -9575,6 +9603,7 @@ Rule:
- DOMAIN-SUFFIX,digicert.com,Domestic
- DOMAIN-SUFFIX,douban.com,Domestic
- DOMAIN-SUFFIX,doubanio.com,Domestic
- DOMAIN-SUFFIX,douyin.com,Domestic
- DOMAIN-SUFFIX,douyu.com,Domestic
- DOMAIN-SUFFIX,douyu.tv,Domestic
- DOMAIN-SUFFIX,douyutv.com,Domestic
@ -9762,14 +9791,38 @@ Rule:
- IP-CIDR,1.255.62.0/24,Domestic
# > CN
- DOMAIN-SUFFIX,cn,Domestic
# > Apple
# - USER-AGENT,%E5%9C%B0%E5%9B%BE*,DIRECT
# - USER-AGENT,%E8%AE%BE%E7%BD%AE*,DIRECT
# - USER-AGENT,*com.apple.mobileme.fmip1,DIRECT
# - USER-AGENT,*WeatherFoundation*,DIRECT
# - USER-AGENT,DIRECTNews*,DIRECT
# - USER-AGENT,AppStore*,DIRECT
# - USER-AGENT,com.apple.appstored*,DIRECT
# - USER-AGENT,com.apple.geod*,DIRECT
# - USER-AGENT,com.apple.Maps,DIRECT
# - USER-AGENT,com.apple.news*,DIRECT
# - USER-AGENT,FindMyFriends*,DIRECT
# - USER-AGENT,FindMyiPhone*,DIRECT
# - USER-AGENT,FMDClient*,DIRECT
# - USER-AGENT,FMFD*,DIRECT
# - USER-AGENT,fmflocatord*,DIRECT
# - USER-AGENT,geod*,DIRECT
# - USER-AGENT,locationd*,DIRECT
# - USER-AGENT,Maps*,DIRECT
# - USER-AGENT,TestFlight*,DIRECT
- DOMAIN,Apple.comscoreresearch.com,Apple
- DOMAIN-SUFFIX,Apple.cn,Apple
- DOMAIN-SUFFIX,Apple.com,Apple
- DOMAIN-SUFFIX,Apple.news,Apple
- DOMAIN-SUFFIX,cdn-apple.com,Apple
- DOMAIN-SUFFIX,icloud.com,Apple
- DOMAIN-SUFFIX,icloud.com.cn,Apple
- DOMAIN-SUFFIX,icloud-content.com,Apple
- DOMAIN-SUFFIX,itunes.com,Apple
- DOMAIN-SUFFIX,me.com,Apple

File diff suppressed because one or more lines are too long

View File

@ -70,7 +70,11 @@ local function ConnersHua_return()
end
local function daip()
return luci.sys.exec("ifstatus lan 2>/dev/null |jsonfilter -e '@[\"ipv4-address\"][0].address' 2>/dev/null")
local daip = luci.sys.exec("ifstatus lan 2>/dev/null |jsonfilter -e '@[\"ipv4-address\"][0].address' 2>/dev/null")
if not daip or daip == "" then
local daip = luci.sys.exec("uci get network.lan.ipaddr 2>/dev/null |awk -F '/' '{print $1}' 2>/dev/null |tr -d '\n'")
end
return daip
end
local function dase()

View File

@ -163,7 +163,7 @@
XHR.get('<%=luci.dispatcher.build_url("admin", "services", "openclash", "currentversion")%>', status.currentversion, function(x, status) {
if ( x && x.status == 200 ) {
clashversion.innerHTML = '<img id="currenntver" src="'+status.currentversion+'" loading="lazy" alt="currentversion" width="181px" onload="return clashversion_check()" onclick="return go_update()">';
clashversion.innerHTML = '<img id="currenntver" src="'+status.currentversion+'" alt="currentversion" width="181px" onload="return clashversion_check()" onclick="return go_update()">';
}
});
@ -173,7 +173,7 @@
if ( x && x.status == 200 ) {
if ( status.lastversion != "\n" && status.lastversion != "" )
{
clashversion.innerHTML = '<img id="lastver" src="'+status.lastversion+'" loading="lazy" alt="lastversion" width="161px" onerror="return clashversion_error()" onclick="return go_update()">';
clashversion.innerHTML = '<img id="lastver" src="'+status.lastversion+'" alt="lastversion" onerror="return clashversion_error()" onclick="return go_update()">';
}
}
});
@ -183,7 +183,7 @@
{
XHR.get('<%=luci.dispatcher.build_url("admin", "services", "openclash", "currentversion")%>', status.currentversion, function(x, status) {
if ( x && x.status == 200 ) {
clashversion.innerHTML = '<img id="currenntver" src="'+status.currentversion+'" loading="lazy" alt="currentversion" width="181px" onclick="return go_update()">';
clashversion.innerHTML = '<img id="currenntver" src="'+status.currentversion+'" alt="currentversion" width="181px" onclick="return go_update()">';
}
});
}

View File

@ -18,6 +18,7 @@ if [ "$CKTIME" != "$(grep "CheckTime" $LAST_OPVER 2>/dev/null |awk -F ':' '{prin
else
curl -sL --connect-timeout 10 --retry 2 "$VERSION_URL" -o $LAST_OPVER >/dev/null 2>&1
fi
LAST_VER=$(sed -n 1p "$LAST_OPVER" 2>/dev/null |awk -F '-' '{print $1$2}' 2>/dev/null |awk -F '.' '{print $2$3}' 2>/dev/null)
if [ "$?" -eq "0" ] && [ -s "$LAST_OPVER" ]; then
echo "CheckTime:$CKTIME" >>$LAST_OPVER
else

View File

@ -18,6 +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 '.' '{print $2$3}')
if [ "$OP_CV" -ge "$OP_LV" ]; then
sed -i "/^https:/i\CheckTime:${CKTIME}" "$LAST_OPVER" 2>/dev/null
sed -i '/^https:/,$d' $LAST_OPVER

View File

@ -35,6 +35,7 @@ if [ "$enable" -eq 1 ]; then
/usr/share/openclash/openclash_history_set.sh
else
echo "${LOGTIME} Watchdog: Already Restart 3 Times With Clash Core Problem, Auto-Exit." >> $LOG_FILE
/etc/init.d/openclash stop
exit 0
fi
else

View File

@ -85,7 +85,7 @@ cfg_get()
cfg_get_alpn()
{
echo "$(grep "$1" "$2" 2>/dev/null |grep -v "^ \{0,\}- name:" |awk -v tag=$1 'BEGIN{FS=tag} {print $2}' 2>/dev/null |sed 's/,.*//' 2>/dev/null |sed 's/\}.*//' 2>/dev/null |sed 's/^ \{0,\}//g' 2>/dev/null |sed 's/ \{0,\}$//g' 2>/dev/null)"
echo "$(grep "^ \{0,\}$1" "$2" 2>/dev/null |grep -v "^ \{0,\}- name:" |awk -v tag=$1 'BEGIN{FS=tag} {print $2}' 2>/dev/null |sed 's/,.*//' 2>/dev/null |sed 's/\}.*//' 2>/dev/null |sed 's/^ \{0,\}//g' 2>/dev/null |sed 's/ \{0,\}$//g' 2>/dev/null)"
}
echo "开始更新【$CONFIG_NAME】的代理集配置..." >$START_LOG

View File

@ -103,7 +103,7 @@ set_alpn()
return
fi
cat >> "$SERVER_FILE" <<-EOF
- "$1"
- $1
EOF
}
@ -183,7 +183,11 @@ yml_servers_set()
fi
fi
if [ ! -z "$udp" ] && [ "$obfs" = "none" ]; then
if [ ! -z "$udp" ] && [ "$obfs" = "none" ] && [ "$type" = "ss" ]; then
udp=", udp: $udp"
fi
if [ ! -z "$udp" ] && [ "$type" != "trojan" ] && [ "$type" != "ss" ]; then
udp=", udp: $udp"
fi
@ -219,7 +223,7 @@ yml_servers_set()
fi
fi
if [ ! -z "$skip_cert_verify" ] && [ "$type" != "ss" ]; then
if [ ! -z "$skip_cert_verify" ] && [ "$type" != "ss" ] && [ "$type" != "trojan" ]; then
skip_cert_verify=", skip-cert-verify: $skip_cert_verify"
elif [ ! -z "$skip_cert_verify" ]; then
skip_cert_verify="skip-cert-verify: $skip_cert_verify"
@ -278,10 +282,14 @@ EOF
fi
if [ "$type" = "vmess" ]; then
echo "- { name: \"$name\", type: $type, server: $server, port: $port, uuid: $uuid, alterId: $alterId, cipher: $securitys$skip_cert_verify$obfs_vmess$path$custom$tls }" >>$SERVER_FILE
echo "- { name: \"$name\", type: $type, server: $server, port: $port, uuid: $uuid, alterId: $alterId, cipher: $securitys$udp$skip_cert_verify$obfs_vmess$path$custom$tls }" >>$SERVER_FILE
fi
if [ "$type" = "socks5" ] || [ "$type" = "http" ]; then
if [ "$type" = "socks5" ]; then
echo "- { name: \"$name\", type: $type, server: $server, port: $port, username: $auth_name, password: $auth_pass$udp$skip_cert_verify$tls }" >>$SERVER_FILE
fi
if [ "$type" = "http" ]; then
echo "- { name: \"$name\", type: $type, server: $server, port: $port, username: $auth_name, password: $auth_pass$skip_cert_verify$tls }" >>$SERVER_FILE
fi
@ -311,7 +319,7 @@ EOF
fi
if [ ! -z "$skip_cert_verify" ]; then
cat >> "$SERVER_FILE" <<-EOF
$skip_cert_verify
$skip_cert_verify
EOF
fi
fi

View File

@ -147,7 +147,7 @@ fi
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,tracker,tracker/d' "$4" 2>/dev/null
sed -i '/- DOMAIN-KEYWORD,torrent,DIRECT/d' "$4" 2>/dev/null
if [ "$3" = 1 ]; then
sed -i '/^Rule:/a\##Custom Rules End##' "$4" 2>/dev/null