Browse Source

Protocols: Clash: Rollback the previous configuration

because the provider cannot test the delay manually
Beta Soft 3 years ago
parent
commit
905e2dacd1
2 changed files with 343 additions and 369 deletions
  1. 31 57
      app/Http/Controllers/Client/Protocols/Clash.php
  2. 312 312
      resources/rules/default.clash.yaml

+ 31 - 57
app/Http/Controllers/Client/Protocols/Clash.php

@@ -18,69 +18,43 @@ class Clash
 
     public function handle()
     {
+        $servers = $this->servers;
         $user = $this->user;
-        if (empty($_REQUEST['getsubscribe'])) {
-            $app_name = config('v2board.app_name', 'V2Board');
-            header("subscription-userinfo: upload={$user['u']}; download={$user['d']}; total={$user['transfer_enable']}; expire={$user['expired_at']}");
-            header("profile-update-interval: 24");
-            header("content-disposition: filename={$app_name}");
-            $defaultConfig = base_path() . '/resources/rules/default.clash.yaml';
-            $customConfig = base_path() . '/resources/rules/custom.clash.yaml';
-            if (\File::exists($customConfig)) {
-                $config = Yaml::parseFile($customConfig);
-            } else {
-                $config = Yaml::parseFile($defaultConfig);
-            }
-            $args = array(
-                'token' => $user['token'],
-                'flag' => 'clash',
-                'getsubscribe' => 'true'
-            );
-            $proxy = array(
-                $app_name => array(
-                    'type' => 'http',
-                    'url' => config('v2board.subscribe_url') . '/api/v1/client/subscribe?' . http_build_query($args),
-                    'interval' => 7200,
-                    'path' => './Proxy/' . $app_name . '.yaml',
-                    'health-check' => array(
-                        'enable' => true,
-                        'interval' => 900,
-                        'url' => 'http://www.gstatic.com/generate_204'
-                    )
-                ) 
-            );
-            $config['proxy-providers'] = array_merge($config['proxy-providers'] ? $config['proxy-providers'] : [], $proxy);
-            foreach ($config['proxy-groups'] as $k => $v) {
-                if ( isset($config['proxy-groups'][$k]['use']) ) {
-                    if ( !is_array($config['proxy-groups'][$k]['use']) ) continue;
-                    $config['proxy-groups'][$k]['use'] = [$app_name];
-                }
-            }
-            $yaml = Yaml::dump($config);
-            $yaml = str_replace('$app_name', $app_name, $yaml);
+        header("subscription-userinfo: upload={$user['u']}; download={$user['d']}; total={$user['transfer_enable']}; expire={$user['expired_at']}");
+        header('profile-update-interval: 24');
+        header("content-disposition: filename={$app_name}");
+        $defaultConfig = base_path() . '/resources/rules/default.clash.yaml';
+        $customConfig = base_path() . '/resources/rules/custom.clash.yaml';
+        if (\File::exists($customConfig)) {
+            $config = Yaml::parseFile($customConfig);
         } else {
-            $servers = $this->servers;
-            $proxy = [];
-            $proxies = [];
+            $config = Yaml::parseFile($defaultConfig);
+        }
+        $proxy = [];
+        $proxies = [];
 
-            foreach ($servers as $item) {
-                if ($item['type'] === 'shadowsocks') {
-                    array_push($proxy, self::buildShadowsocks($user['uuid'], $item));
-                    array_push($proxies, $item['name']);
-                }
-                if ($item['type'] === 'v2ray') {
-                    array_push($proxy, self::buildVmess($user['uuid'], $item));
-                    array_push($proxies, $item['name']);
-                }
-                if ($item['type'] === 'trojan') {
-                    array_push($proxy, self::buildTrojan($user['uuid'], $item));
-                    array_push($proxies, $item['name']);
-                }
+        foreach ($servers as $item) {
+            if ($item['type'] === 'shadowsocks') {
+                array_push($proxy, self::buildShadowsocks($user['uuid'], $item));
+                array_push($proxies, $item['name']);
             }
+            if ($item['type'] === 'v2ray') {
+                array_push($proxy, self::buildVmess($user['uuid'], $item));
+                array_push($proxies, $item['name']);
+            }
+            if ($item['type'] === 'trojan') {
+                array_push($proxy, self::buildTrojan($user['uuid'], $item));
+                array_push($proxies, $item['name']);
+            }
+        }
 
-            $config['proxies'] = array_merge($proxy);
-            $yaml = Yaml::dump($config);
+        $config['proxies'] = array_merge($config['proxies'] ? $config['proxies'] : [], $proxy);
+        foreach ($config['proxy-groups'] as $k => $v) {
+            if (!is_array($config['proxy-groups'][$k]['proxies'])) continue;
+            $config['proxy-groups'][$k]['proxies'] = array_merge($config['proxy-groups'][$k]['proxies'], $proxies);
         }
+        $yaml = Yaml::dump($config);
+        $yaml = str_replace('$app_name', config('v2board.app_name', 'V2Board'), $yaml);
         return $yaml;
     }
 

+ 312 - 312
resources/rules/default.clash.yaml

@@ -22,6 +22,7 @@ dns:
   use-hosts: true
   nameserver:
     - https://doh.pub/dns-query
+    - https://dns.alidns.com/dns-query
   fallback:
     - tls://1.0.0.1:853
     - https://cloudflare-dns.com/dns-query
@@ -32,13 +33,12 @@ dns:
       - 240.0.0.0/4
       - 0.0.0.0/32
 
-proxy-providers:
+proxies:
 
 proxy-groups:
-    - { name: "MATCH", type: select,  use: [] }
-    - { name: "自动选择", type: url-test,  use: [], url: "http://www.gstatic.com/generate_204", interval: 86400 }
-    - { name: "故障转移", type: fallback,  use: [], url: "http://www.gstatic.com/generate_204", interval: 7200 }
-    - { name: "MATCH", type: select, proxies: ["MATCH", "自动选择", "故障转移", "DIRECT"] }
+  - { name: "$app_name", type: select, proxies: ["自动选择", "故障转移"] }
+  - { name: "自动选择", type: url-test, proxies: [], url: "http://www.gstatic.com/generate_204", interval: 86400 }
+  - { name: "故障转移", type: fallback, proxies: [], url: "http://www.gstatic.com/generate_204", interval: 7200 }
 
 rules:
   # 自定义规则
@@ -47,20 +47,20 @@ rules:
   # Apple
   - DOMAIN,safebrowsing.urlsec.qq.com,DIRECT # 如果您并不信任此服务提供商或防止其下载消耗过多带宽资源,可以进入 Safari 设置,关闭 Fraudulent Website Warning 功能,并使用 REJECT 策略。
   - DOMAIN,safebrowsing.googleapis.com,DIRECT # 如果您并不信任此服务提供商或防止其下载消耗过多带宽资源,可以进入 Safari 设置,关闭 Fraudulent Website Warning 功能,并使用 REJECT 策略。
-  - DOMAIN,developer.apple.com,MATCH
-  - DOMAIN-SUFFIX,digicert.com,MATCH
-  - DOMAIN,ocsp.apple.com,MATCH
-  - DOMAIN,ocsp.comodoca.com,MATCH
-  - DOMAIN,ocsp.usertrust.com,MATCH
-  - DOMAIN,ocsp.sectigo.com,MATCH
-  - DOMAIN,ocsp.verisign.net,MATCH
-  - DOMAIN-SUFFIX,apple-dns.net,MATCH
-  - DOMAIN,testflight.apple.com,MATCH
-  - DOMAIN,sandbox.itunes.apple.com,MATCH
-  - DOMAIN,itunes.apple.com,MATCH
-  - DOMAIN-SUFFIX,apps.apple.com,MATCH
-  - DOMAIN-SUFFIX,blobstore.apple.com,MATCH
-  - DOMAIN,cvws.icloud-content.com,MATCH
+  - DOMAIN,developer.apple.com,$app_name
+  - DOMAIN-SUFFIX,digicert.com,$app_name
+  - DOMAIN,ocsp.apple.com,$app_name
+  - DOMAIN,ocsp.comodoca.com,$app_name
+  - DOMAIN,ocsp.usertrust.com,$app_name
+  - DOMAIN,ocsp.sectigo.com,$app_name
+  - DOMAIN,ocsp.verisign.net,$app_name
+  - DOMAIN-SUFFIX,apple-dns.net,$app_name
+  - DOMAIN,testflight.apple.com,$app_name
+  - DOMAIN,sandbox.itunes.apple.com,$app_name
+  - DOMAIN,itunes.apple.com,$app_name
+  - DOMAIN-SUFFIX,apps.apple.com,$app_name
+  - DOMAIN-SUFFIX,blobstore.apple.com,$app_name
+  - DOMAIN,cvws.icloud-content.com,$app_name
   - DOMAIN-SUFFIX,mzstatic.com,DIRECT
   - DOMAIN-SUFFIX,itunes.apple.com,DIRECT
   - DOMAIN-SUFFIX,icloud.com,DIRECT
@@ -211,20 +211,20 @@ rules:
   - DOMAIN-SUFFIX,zoho.com,DIRECT
 
   # 抗 DNS 污染
-  - DOMAIN-KEYWORD,amazon,MATCH
-  - DOMAIN-KEYWORD,google,MATCH
-  - DOMAIN-KEYWORD,gmail,MATCH
-  - DOMAIN-KEYWORD,youtube,MATCH
-  - DOMAIN-KEYWORD,facebook,MATCH
-  - DOMAIN-SUFFIX,fb.me,MATCH
-  - DOMAIN-SUFFIX,fbcdn.net,MATCH
-  - DOMAIN-KEYWORD,twitter,MATCH
-  - DOMAIN-KEYWORD,instagram,MATCH
-  - DOMAIN-KEYWORD,dropbox,MATCH
-  - DOMAIN-SUFFIX,twimg.com,MATCH
-  - DOMAIN-KEYWORD,blogspot,MATCH
-  - DOMAIN-SUFFIX,youtu.be,MATCH
-  - DOMAIN-KEYWORD,whatsapp,MATCH
+  - DOMAIN-KEYWORD,amazon,$app_name
+  - DOMAIN-KEYWORD,google,$app_name
+  - DOMAIN-KEYWORD,gmail,$app_name
+  - DOMAIN-KEYWORD,youtube,$app_name
+  - DOMAIN-KEYWORD,facebook,$app_name
+  - DOMAIN-SUFFIX,fb.me,$app_name
+  - DOMAIN-SUFFIX,fbcdn.net,$app_name
+  - DOMAIN-KEYWORD,twitter,$app_name
+  - DOMAIN-KEYWORD,instagram,$app_name
+  - DOMAIN-KEYWORD,dropbox,$app_name
+  - DOMAIN-SUFFIX,twimg.com,$app_name
+  - DOMAIN-KEYWORD,blogspot,$app_name
+  - DOMAIN-SUFFIX,youtu.be,$app_name
+  - DOMAIN-KEYWORD,whatsapp,$app_name
 
   # 常见广告域名屏蔽
   - DOMAIN-KEYWORD,admarvel,REJECT
@@ -256,286 +256,286 @@ rules:
   - DOMAIN-KEYWORD,zjtoolbar,REJECT
 
   # 国外网站
-  - DOMAIN-SUFFIX,9to5mac.com,MATCH
-  - DOMAIN-SUFFIX,abpchina.org,MATCH
-  - DOMAIN-SUFFIX,adblockplus.org,MATCH
-  - DOMAIN-SUFFIX,adobe.com,MATCH
-  - DOMAIN-SUFFIX,akamaized.net,MATCH
-  - DOMAIN-SUFFIX,alfredapp.com,MATCH
-  - DOMAIN-SUFFIX,amplitude.com,MATCH
-  - DOMAIN-SUFFIX,ampproject.org,MATCH
-  - DOMAIN-SUFFIX,android.com,MATCH
-  - DOMAIN-SUFFIX,angularjs.org,MATCH
-  - DOMAIN-SUFFIX,aolcdn.com,MATCH
-  - DOMAIN-SUFFIX,apkpure.com,MATCH
-  - DOMAIN-SUFFIX,appledaily.com,MATCH
-  - DOMAIN-SUFFIX,appshopper.com,MATCH
-  - DOMAIN-SUFFIX,appspot.com,MATCH
-  - DOMAIN-SUFFIX,arcgis.com,MATCH
-  - DOMAIN-SUFFIX,archive.org,MATCH
-  - DOMAIN-SUFFIX,armorgames.com,MATCH
-  - DOMAIN-SUFFIX,aspnetcdn.com,MATCH
-  - DOMAIN-SUFFIX,att.com,MATCH
-  - DOMAIN-SUFFIX,awsstatic.com,MATCH
-  - DOMAIN-SUFFIX,azureedge.net,MATCH
-  - DOMAIN-SUFFIX,azurewebsites.net,MATCH
-  - DOMAIN-SUFFIX,bing.com,MATCH
-  - DOMAIN-SUFFIX,bintray.com,MATCH
-  - DOMAIN-SUFFIX,bit.com,MATCH
-  - DOMAIN-SUFFIX,bit.ly,MATCH
-  - DOMAIN-SUFFIX,bitbucket.org,MATCH
-  - DOMAIN-SUFFIX,bjango.com,MATCH
-  - DOMAIN-SUFFIX,bkrtx.com,MATCH
-  - DOMAIN-SUFFIX,blog.com,MATCH
-  - DOMAIN-SUFFIX,blogcdn.com,MATCH
-  - DOMAIN-SUFFIX,blogger.com,MATCH
-  - DOMAIN-SUFFIX,blogsmithmedia.com,MATCH
-  - DOMAIN-SUFFIX,blogspot.com,MATCH
-  - DOMAIN-SUFFIX,blogspot.hk,MATCH
-  - DOMAIN-SUFFIX,bloomberg.com,MATCH
-  - DOMAIN-SUFFIX,box.com,MATCH
-  - DOMAIN-SUFFIX,box.net,MATCH
-  - DOMAIN-SUFFIX,cachefly.net,MATCH
-  - DOMAIN-SUFFIX,chromium.org,MATCH
-  - DOMAIN-SUFFIX,cl.ly,MATCH
-  - DOMAIN-SUFFIX,cloudflare.com,MATCH
-  - DOMAIN-SUFFIX,cloudfront.net,MATCH
-  - DOMAIN-SUFFIX,cloudmagic.com,MATCH
-  - DOMAIN-SUFFIX,cmail19.com,MATCH
-  - DOMAIN-SUFFIX,cnet.com,MATCH
-  - DOMAIN-SUFFIX,cocoapods.org,MATCH
-  - DOMAIN-SUFFIX,comodoca.com,MATCH
-  - DOMAIN-SUFFIX,crashlytics.com,MATCH
-  - DOMAIN-SUFFIX,culturedcode.com,MATCH
-  - DOMAIN-SUFFIX,d.pr,MATCH
-  - DOMAIN-SUFFIX,danilo.to,MATCH
-  - DOMAIN-SUFFIX,dayone.me,MATCH
-  - DOMAIN-SUFFIX,db.tt,MATCH
-  - DOMAIN-SUFFIX,deskconnect.com,MATCH
-  - DOMAIN-SUFFIX,disq.us,MATCH
-  - DOMAIN-SUFFIX,disqus.com,MATCH
-  - DOMAIN-SUFFIX,disquscdn.com,MATCH
-  - DOMAIN-SUFFIX,dnsimple.com,MATCH
-  - DOMAIN-SUFFIX,docker.com,MATCH
-  - DOMAIN-SUFFIX,dribbble.com,MATCH
-  - DOMAIN-SUFFIX,droplr.com,MATCH
-  - DOMAIN-SUFFIX,duckduckgo.com,MATCH
-  - DOMAIN-SUFFIX,dueapp.com,MATCH
-  - DOMAIN-SUFFIX,dytt8.net,MATCH
-  - DOMAIN-SUFFIX,edgecastcdn.net,MATCH
-  - DOMAIN-SUFFIX,edgekey.net,MATCH
-  - DOMAIN-SUFFIX,edgesuite.net,MATCH
-  - DOMAIN-SUFFIX,engadget.com,MATCH
-  - DOMAIN-SUFFIX,entrust.net,MATCH
-  - DOMAIN-SUFFIX,eurekavpt.com,MATCH
-  - DOMAIN-SUFFIX,evernote.com,MATCH
-  - DOMAIN-SUFFIX,fabric.io,MATCH
-  - DOMAIN-SUFFIX,fast.com,MATCH
-  - DOMAIN-SUFFIX,fastly.net,MATCH
-  - DOMAIN-SUFFIX,fc2.com,MATCH
-  - DOMAIN-SUFFIX,feedburner.com,MATCH
-  - DOMAIN-SUFFIX,feedly.com,MATCH
-  - DOMAIN-SUFFIX,feedsportal.com,MATCH
-  - DOMAIN-SUFFIX,fiftythree.com,MATCH
-  - DOMAIN-SUFFIX,firebaseio.com,MATCH
-  - DOMAIN-SUFFIX,flexibits.com,MATCH
-  - DOMAIN-SUFFIX,flickr.com,MATCH
-  - DOMAIN-SUFFIX,flipboard.com,MATCH
-  - DOMAIN-SUFFIX,g.co,MATCH
-  - DOMAIN-SUFFIX,gabia.net,MATCH
-  - DOMAIN-SUFFIX,geni.us,MATCH
-  - DOMAIN-SUFFIX,gfx.ms,MATCH
-  - DOMAIN-SUFFIX,ggpht.com,MATCH
-  - DOMAIN-SUFFIX,ghostnoteapp.com,MATCH
-  - DOMAIN-SUFFIX,git.io,MATCH
-  - DOMAIN-KEYWORD,github,MATCH
-  - DOMAIN-SUFFIX,globalsign.com,MATCH
-  - DOMAIN-SUFFIX,gmodules.com,MATCH
-  - DOMAIN-SUFFIX,godaddy.com,MATCH
-  - DOMAIN-SUFFIX,golang.org,MATCH
-  - DOMAIN-SUFFIX,gongm.in,MATCH
-  - DOMAIN-SUFFIX,goo.gl,MATCH
-  - DOMAIN-SUFFIX,goodreaders.com,MATCH
-  - DOMAIN-SUFFIX,goodreads.com,MATCH
-  - DOMAIN-SUFFIX,gravatar.com,MATCH
-  - DOMAIN-SUFFIX,gstatic.com,MATCH
-  - DOMAIN-SUFFIX,gvt0.com,MATCH
-  - DOMAIN-SUFFIX,hockeyapp.net,MATCH
-  - DOMAIN-SUFFIX,hotmail.com,MATCH
-  - DOMAIN-SUFFIX,icons8.com,MATCH
-  - DOMAIN-SUFFIX,ifixit.com,MATCH
-  - DOMAIN-SUFFIX,ift.tt,MATCH
-  - DOMAIN-SUFFIX,ifttt.com,MATCH
-  - DOMAIN-SUFFIX,iherb.com,MATCH
-  - DOMAIN-SUFFIX,imageshack.us,MATCH
-  - DOMAIN-SUFFIX,img.ly,MATCH
-  - DOMAIN-SUFFIX,imgur.com,MATCH
-  - DOMAIN-SUFFIX,imore.com,MATCH
-  - DOMAIN-SUFFIX,instapaper.com,MATCH
-  - DOMAIN-SUFFIX,ipn.li,MATCH
-  - DOMAIN-SUFFIX,is.gd,MATCH
-  - DOMAIN-SUFFIX,issuu.com,MATCH
-  - DOMAIN-SUFFIX,itgonglun.com,MATCH
-  - DOMAIN-SUFFIX,itun.es,MATCH
-  - DOMAIN-SUFFIX,ixquick.com,MATCH
-  - DOMAIN-SUFFIX,j.mp,MATCH
-  - DOMAIN-SUFFIX,js.revsci.net,MATCH
-  - DOMAIN-SUFFIX,jshint.com,MATCH
-  - DOMAIN-SUFFIX,jtvnw.net,MATCH
-  - DOMAIN-SUFFIX,justgetflux.com,MATCH
-  - DOMAIN-SUFFIX,kat.cr,MATCH
-  - DOMAIN-SUFFIX,klip.me,MATCH
-  - DOMAIN-SUFFIX,libsyn.com,MATCH
-  - DOMAIN-SUFFIX,linode.com,MATCH
-  - DOMAIN-SUFFIX,lithium.com,MATCH
-  - DOMAIN-SUFFIX,littlehj.com,MATCH
-  - DOMAIN-SUFFIX,live.com,MATCH
-  - DOMAIN-SUFFIX,live.net,MATCH
-  - DOMAIN-SUFFIX,livefilestore.com,MATCH
-  - DOMAIN-SUFFIX,llnwd.net,MATCH
-  - DOMAIN-SUFFIX,macid.co,MATCH
-  - DOMAIN-SUFFIX,macromedia.com,MATCH
-  - DOMAIN-SUFFIX,macrumors.com,MATCH
-  - DOMAIN-SUFFIX,mashable.com,MATCH
-  - DOMAIN-SUFFIX,mathjax.org,MATCH
-  - DOMAIN-SUFFIX,medium.com,MATCH
-  - DOMAIN-SUFFIX,mega.co.nz,MATCH
-  - DOMAIN-SUFFIX,mega.nz,MATCH
-  - DOMAIN-SUFFIX,megaupload.com,MATCH
-  - DOMAIN-SUFFIX,microsofttranslator.com,MATCH
-  - DOMAIN-SUFFIX,mindnode.com,MATCH
-  - DOMAIN-SUFFIX,mobile01.com,MATCH
-  - DOMAIN-SUFFIX,modmyi.com,MATCH
-  - DOMAIN-SUFFIX,msedge.net,MATCH
-  - DOMAIN-SUFFIX,myfontastic.com,MATCH
-  - DOMAIN-SUFFIX,name.com,MATCH
-  - DOMAIN-SUFFIX,nextmedia.com,MATCH
-  - DOMAIN-SUFFIX,nsstatic.net,MATCH
-  - DOMAIN-SUFFIX,nssurge.com,MATCH
-  - DOMAIN-SUFFIX,nyt.com,MATCH
-  - DOMAIN-SUFFIX,nytimes.com,MATCH
-  - DOMAIN-SUFFIX,omnigroup.com,MATCH
-  - DOMAIN-SUFFIX,onedrive.com,MATCH
-  - DOMAIN-SUFFIX,onenote.com,MATCH
-  - DOMAIN-SUFFIX,ooyala.com,MATCH
-  - DOMAIN-SUFFIX,openvpn.net,MATCH
-  - DOMAIN-SUFFIX,openwrt.org,MATCH
-  - DOMAIN-SUFFIX,orkut.com,MATCH
-  - DOMAIN-SUFFIX,osxdaily.com,MATCH
-  - DOMAIN-SUFFIX,outlook.com,MATCH
-  - DOMAIN-SUFFIX,ow.ly,MATCH
-  - DOMAIN-SUFFIX,paddleapi.com,MATCH
-  - DOMAIN-SUFFIX,parallels.com,MATCH
-  - DOMAIN-SUFFIX,parse.com,MATCH
-  - DOMAIN-SUFFIX,pdfexpert.com,MATCH
-  - DOMAIN-SUFFIX,periscope.tv,MATCH
-  - DOMAIN-SUFFIX,pinboard.in,MATCH
-  - DOMAIN-SUFFIX,pinterest.com,MATCH
-  - DOMAIN-SUFFIX,pixelmator.com,MATCH
-  - DOMAIN-SUFFIX,pixiv.net,MATCH
-  - DOMAIN-SUFFIX,playpcesor.com,MATCH
-  - DOMAIN-SUFFIX,playstation.com,MATCH
-  - DOMAIN-SUFFIX,playstation.com.hk,MATCH
-  - DOMAIN-SUFFIX,playstation.net,MATCH
-  - DOMAIN-SUFFIX,playstationnetwork.com,MATCH
-  - DOMAIN-SUFFIX,pushwoosh.com,MATCH
-  - DOMAIN-SUFFIX,rime.im,MATCH
-  - DOMAIN-SUFFIX,servebom.com,MATCH
-  - DOMAIN-SUFFIX,sfx.ms,MATCH
-  - DOMAIN-SUFFIX,shadowsocks.org,MATCH
-  - DOMAIN-SUFFIX,sharethis.com,MATCH
-  - DOMAIN-SUFFIX,shazam.com,MATCH
-  - DOMAIN-SUFFIX,skype.com,MATCH
-  - DOMAIN-SUFFIX,smartdnsMATCH.com,MATCH
-  - DOMAIN-SUFFIX,smartmailcloud.com,MATCH
-  - DOMAIN-SUFFIX,sndcdn.com,MATCH
-  - DOMAIN-SUFFIX,sony.com,MATCH
-  - DOMAIN-SUFFIX,soundcloud.com,MATCH
-  - DOMAIN-SUFFIX,sourceforge.net,MATCH
-  - DOMAIN-SUFFIX,spotify.com,MATCH
-  - DOMAIN-SUFFIX,squarespace.com,MATCH
-  - DOMAIN-SUFFIX,sstatic.net,MATCH
-  - DOMAIN-SUFFIX,st.luluku.pw,MATCH
-  - DOMAIN-SUFFIX,stackoverflow.com,MATCH
-  - DOMAIN-SUFFIX,startpage.com,MATCH
-  - DOMAIN-SUFFIX,staticflickr.com,MATCH
-  - DOMAIN-SUFFIX,steamcommunity.com,MATCH
-  - DOMAIN-SUFFIX,symauth.com,MATCH
-  - DOMAIN-SUFFIX,symcb.com,MATCH
-  - DOMAIN-SUFFIX,symcd.com,MATCH
-  - DOMAIN-SUFFIX,tapbots.com,MATCH
-  - DOMAIN-SUFFIX,tapbots.net,MATCH
-  - DOMAIN-SUFFIX,tdesktop.com,MATCH
-  - DOMAIN-SUFFIX,techcrunch.com,MATCH
-  - DOMAIN-SUFFIX,techsmith.com,MATCH
-  - DOMAIN-SUFFIX,thepiratebay.org,MATCH
-  - DOMAIN-SUFFIX,theverge.com,MATCH
-  - DOMAIN-SUFFIX,time.com,MATCH
-  - DOMAIN-SUFFIX,timeinc.net,MATCH
-  - DOMAIN-SUFFIX,tiny.cc,MATCH
-  - DOMAIN-SUFFIX,tinypic.com,MATCH
-  - DOMAIN-SUFFIX,tmblr.co,MATCH
-  - DOMAIN-SUFFIX,todoist.com,MATCH
-  - DOMAIN-SUFFIX,trello.com,MATCH
-  - DOMAIN-SUFFIX,trustasiassl.com,MATCH
-  - DOMAIN-SUFFIX,tumblr.co,MATCH
-  - DOMAIN-SUFFIX,tumblr.com,MATCH
-  - DOMAIN-SUFFIX,tweetdeck.com,MATCH
-  - DOMAIN-SUFFIX,tweetmarker.net,MATCH
-  - DOMAIN-SUFFIX,twitch.tv,MATCH
-  - DOMAIN-SUFFIX,txmblr.com,MATCH
-  - DOMAIN-SUFFIX,typekit.net,MATCH
-  - DOMAIN-SUFFIX,ubertags.com,MATCH
-  - DOMAIN-SUFFIX,ublock.org,MATCH
-  - DOMAIN-SUFFIX,ubnt.com,MATCH
-  - DOMAIN-SUFFIX,ulyssesapp.com,MATCH
-  - DOMAIN-SUFFIX,urchin.com,MATCH
-  - DOMAIN-SUFFIX,usertrust.com,MATCH
-  - DOMAIN-SUFFIX,v.gd,MATCH
-  - DOMAIN-SUFFIX,v2ex.com,MATCH
-  - DOMAIN-SUFFIX,vimeo.com,MATCH
-  - DOMAIN-SUFFIX,vimeocdn.com,MATCH
-  - DOMAIN-SUFFIX,vine.co,MATCH
-  - DOMAIN-SUFFIX,vivaldi.com,MATCH
-  - DOMAIN-SUFFIX,vox-cdn.com,MATCH
-  - DOMAIN-SUFFIX,vsco.co,MATCH
-  - DOMAIN-SUFFIX,vultr.com,MATCH
-  - DOMAIN-SUFFIX,w.org,MATCH
-  - DOMAIN-SUFFIX,w3schools.com,MATCH
-  - DOMAIN-SUFFIX,webtype.com,MATCH
-  - DOMAIN-SUFFIX,wikiwand.com,MATCH
-  - DOMAIN-SUFFIX,wikileaks.org,MATCH
-  - DOMAIN-SUFFIX,wikimedia.org,MATCH
-  - DOMAIN-SUFFIX,wikipedia.com,MATCH
-  - DOMAIN-SUFFIX,wikipedia.org,MATCH
-  - DOMAIN-SUFFIX,windows.com,MATCH
-  - DOMAIN-SUFFIX,windows.net,MATCH
-  - DOMAIN-SUFFIX,wire.com,MATCH
-  - DOMAIN-SUFFIX,wordpress.com,MATCH
-  - DOMAIN-SUFFIX,workflowy.com,MATCH
-  - DOMAIN-SUFFIX,wp.com,MATCH
-  - DOMAIN-SUFFIX,wsj.com,MATCH
-  - DOMAIN-SUFFIX,wsj.net,MATCH
-  - DOMAIN-SUFFIX,xda-developers.com,MATCH
-  - DOMAIN-SUFFIX,xeeno.com,MATCH
-  - DOMAIN-SUFFIX,xiti.com,MATCH
-  - DOMAIN-SUFFIX,yahoo.com,MATCH
-  - DOMAIN-SUFFIX,yimg.com,MATCH
-  - DOMAIN-SUFFIX,ying.com,MATCH
-  - DOMAIN-SUFFIX,yoyo.org,MATCH
-  - DOMAIN-SUFFIX,ytimg.com,MATCH
+  - DOMAIN-SUFFIX,9to5mac.com,$app_name
+  - DOMAIN-SUFFIX,abpchina.org,$app_name
+  - DOMAIN-SUFFIX,adblockplus.org,$app_name
+  - DOMAIN-SUFFIX,adobe.com,$app_name
+  - DOMAIN-SUFFIX,akamaized.net,$app_name
+  - DOMAIN-SUFFIX,alfredapp.com,$app_name
+  - DOMAIN-SUFFIX,amplitude.com,$app_name
+  - DOMAIN-SUFFIX,ampproject.org,$app_name
+  - DOMAIN-SUFFIX,android.com,$app_name
+  - DOMAIN-SUFFIX,angularjs.org,$app_name
+  - DOMAIN-SUFFIX,aolcdn.com,$app_name
+  - DOMAIN-SUFFIX,apkpure.com,$app_name
+  - DOMAIN-SUFFIX,appledaily.com,$app_name
+  - DOMAIN-SUFFIX,appshopper.com,$app_name
+  - DOMAIN-SUFFIX,appspot.com,$app_name
+  - DOMAIN-SUFFIX,arcgis.com,$app_name
+  - DOMAIN-SUFFIX,archive.org,$app_name
+  - DOMAIN-SUFFIX,armorgames.com,$app_name
+  - DOMAIN-SUFFIX,aspnetcdn.com,$app_name
+  - DOMAIN-SUFFIX,att.com,$app_name
+  - DOMAIN-SUFFIX,awsstatic.com,$app_name
+  - DOMAIN-SUFFIX,azureedge.net,$app_name
+  - DOMAIN-SUFFIX,azurewebsites.net,$app_name
+  - DOMAIN-SUFFIX,bing.com,$app_name
+  - DOMAIN-SUFFIX,bintray.com,$app_name
+  - DOMAIN-SUFFIX,bit.com,$app_name
+  - DOMAIN-SUFFIX,bit.ly,$app_name
+  - DOMAIN-SUFFIX,bitbucket.org,$app_name
+  - DOMAIN-SUFFIX,bjango.com,$app_name
+  - DOMAIN-SUFFIX,bkrtx.com,$app_name
+  - DOMAIN-SUFFIX,blog.com,$app_name
+  - DOMAIN-SUFFIX,blogcdn.com,$app_name
+  - DOMAIN-SUFFIX,blogger.com,$app_name
+  - DOMAIN-SUFFIX,blogsmithmedia.com,$app_name
+  - DOMAIN-SUFFIX,blogspot.com,$app_name
+  - DOMAIN-SUFFIX,blogspot.hk,$app_name
+  - DOMAIN-SUFFIX,bloomberg.com,$app_name
+  - DOMAIN-SUFFIX,box.com,$app_name
+  - DOMAIN-SUFFIX,box.net,$app_name
+  - DOMAIN-SUFFIX,cachefly.net,$app_name
+  - DOMAIN-SUFFIX,chromium.org,$app_name
+  - DOMAIN-SUFFIX,cl.ly,$app_name
+  - DOMAIN-SUFFIX,cloudflare.com,$app_name
+  - DOMAIN-SUFFIX,cloudfront.net,$app_name
+  - DOMAIN-SUFFIX,cloudmagic.com,$app_name
+  - DOMAIN-SUFFIX,cmail19.com,$app_name
+  - DOMAIN-SUFFIX,cnet.com,$app_name
+  - DOMAIN-SUFFIX,cocoapods.org,$app_name
+  - DOMAIN-SUFFIX,comodoca.com,$app_name
+  - DOMAIN-SUFFIX,crashlytics.com,$app_name
+  - DOMAIN-SUFFIX,culturedcode.com,$app_name
+  - DOMAIN-SUFFIX,d.pr,$app_name
+  - DOMAIN-SUFFIX,danilo.to,$app_name
+  - DOMAIN-SUFFIX,dayone.me,$app_name
+  - DOMAIN-SUFFIX,db.tt,$app_name
+  - DOMAIN-SUFFIX,deskconnect.com,$app_name
+  - DOMAIN-SUFFIX,disq.us,$app_name
+  - DOMAIN-SUFFIX,disqus.com,$app_name
+  - DOMAIN-SUFFIX,disquscdn.com,$app_name
+  - DOMAIN-SUFFIX,dnsimple.com,$app_name
+  - DOMAIN-SUFFIX,docker.com,$app_name
+  - DOMAIN-SUFFIX,dribbble.com,$app_name
+  - DOMAIN-SUFFIX,droplr.com,$app_name
+  - DOMAIN-SUFFIX,duckduckgo.com,$app_name
+  - DOMAIN-SUFFIX,dueapp.com,$app_name
+  - DOMAIN-SUFFIX,dytt8.net,$app_name
+  - DOMAIN-SUFFIX,edgecastcdn.net,$app_name
+  - DOMAIN-SUFFIX,edgekey.net,$app_name
+  - DOMAIN-SUFFIX,edgesuite.net,$app_name
+  - DOMAIN-SUFFIX,engadget.com,$app_name
+  - DOMAIN-SUFFIX,entrust.net,$app_name
+  - DOMAIN-SUFFIX,eurekavpt.com,$app_name
+  - DOMAIN-SUFFIX,evernote.com,$app_name
+  - DOMAIN-SUFFIX,fabric.io,$app_name
+  - DOMAIN-SUFFIX,fast.com,$app_name
+  - DOMAIN-SUFFIX,fastly.net,$app_name
+  - DOMAIN-SUFFIX,fc2.com,$app_name
+  - DOMAIN-SUFFIX,feedburner.com,$app_name
+  - DOMAIN-SUFFIX,feedly.com,$app_name
+  - DOMAIN-SUFFIX,feedsportal.com,$app_name
+  - DOMAIN-SUFFIX,fiftythree.com,$app_name
+  - DOMAIN-SUFFIX,firebaseio.com,$app_name
+  - DOMAIN-SUFFIX,flexibits.com,$app_name
+  - DOMAIN-SUFFIX,flickr.com,$app_name
+  - DOMAIN-SUFFIX,flipboard.com,$app_name
+  - DOMAIN-SUFFIX,g.co,$app_name
+  - DOMAIN-SUFFIX,gabia.net,$app_name
+  - DOMAIN-SUFFIX,geni.us,$app_name
+  - DOMAIN-SUFFIX,gfx.ms,$app_name
+  - DOMAIN-SUFFIX,ggpht.com,$app_name
+  - DOMAIN-SUFFIX,ghostnoteapp.com,$app_name
+  - DOMAIN-SUFFIX,git.io,$app_name
+  - DOMAIN-KEYWORD,github,$app_name
+  - DOMAIN-SUFFIX,globalsign.com,$app_name
+  - DOMAIN-SUFFIX,gmodules.com,$app_name
+  - DOMAIN-SUFFIX,godaddy.com,$app_name
+  - DOMAIN-SUFFIX,golang.org,$app_name
+  - DOMAIN-SUFFIX,gongm.in,$app_name
+  - DOMAIN-SUFFIX,goo.gl,$app_name
+  - DOMAIN-SUFFIX,goodreaders.com,$app_name
+  - DOMAIN-SUFFIX,goodreads.com,$app_name
+  - DOMAIN-SUFFIX,gravatar.com,$app_name
+  - DOMAIN-SUFFIX,gstatic.com,$app_name
+  - DOMAIN-SUFFIX,gvt0.com,$app_name
+  - DOMAIN-SUFFIX,hockeyapp.net,$app_name
+  - DOMAIN-SUFFIX,hotmail.com,$app_name
+  - DOMAIN-SUFFIX,icons8.com,$app_name
+  - DOMAIN-SUFFIX,ifixit.com,$app_name
+  - DOMAIN-SUFFIX,ift.tt,$app_name
+  - DOMAIN-SUFFIX,ifttt.com,$app_name
+  - DOMAIN-SUFFIX,iherb.com,$app_name
+  - DOMAIN-SUFFIX,imageshack.us,$app_name
+  - DOMAIN-SUFFIX,img.ly,$app_name
+  - DOMAIN-SUFFIX,imgur.com,$app_name
+  - DOMAIN-SUFFIX,imore.com,$app_name
+  - DOMAIN-SUFFIX,instapaper.com,$app_name
+  - DOMAIN-SUFFIX,ipn.li,$app_name
+  - DOMAIN-SUFFIX,is.gd,$app_name
+  - DOMAIN-SUFFIX,issuu.com,$app_name
+  - DOMAIN-SUFFIX,itgonglun.com,$app_name
+  - DOMAIN-SUFFIX,itun.es,$app_name
+  - DOMAIN-SUFFIX,ixquick.com,$app_name
+  - DOMAIN-SUFFIX,j.mp,$app_name
+  - DOMAIN-SUFFIX,js.revsci.net,$app_name
+  - DOMAIN-SUFFIX,jshint.com,$app_name
+  - DOMAIN-SUFFIX,jtvnw.net,$app_name
+  - DOMAIN-SUFFIX,justgetflux.com,$app_name
+  - DOMAIN-SUFFIX,kat.cr,$app_name
+  - DOMAIN-SUFFIX,klip.me,$app_name
+  - DOMAIN-SUFFIX,libsyn.com,$app_name
+  - DOMAIN-SUFFIX,linode.com,$app_name
+  - DOMAIN-SUFFIX,lithium.com,$app_name
+  - DOMAIN-SUFFIX,littlehj.com,$app_name
+  - DOMAIN-SUFFIX,live.com,$app_name
+  - DOMAIN-SUFFIX,live.net,$app_name
+  - DOMAIN-SUFFIX,livefilestore.com,$app_name
+  - DOMAIN-SUFFIX,llnwd.net,$app_name
+  - DOMAIN-SUFFIX,macid.co,$app_name
+  - DOMAIN-SUFFIX,macromedia.com,$app_name
+  - DOMAIN-SUFFIX,macrumors.com,$app_name
+  - DOMAIN-SUFFIX,mashable.com,$app_name
+  - DOMAIN-SUFFIX,mathjax.org,$app_name
+  - DOMAIN-SUFFIX,medium.com,$app_name
+  - DOMAIN-SUFFIX,mega.co.nz,$app_name
+  - DOMAIN-SUFFIX,mega.nz,$app_name
+  - DOMAIN-SUFFIX,megaupload.com,$app_name
+  - DOMAIN-SUFFIX,microsofttranslator.com,$app_name
+  - DOMAIN-SUFFIX,mindnode.com,$app_name
+  - DOMAIN-SUFFIX,mobile01.com,$app_name
+  - DOMAIN-SUFFIX,modmyi.com,$app_name
+  - DOMAIN-SUFFIX,msedge.net,$app_name
+  - DOMAIN-SUFFIX,myfontastic.com,$app_name
+  - DOMAIN-SUFFIX,name.com,$app_name
+  - DOMAIN-SUFFIX,nextmedia.com,$app_name
+  - DOMAIN-SUFFIX,nsstatic.net,$app_name
+  - DOMAIN-SUFFIX,nssurge.com,$app_name
+  - DOMAIN-SUFFIX,nyt.com,$app_name
+  - DOMAIN-SUFFIX,nytimes.com,$app_name
+  - DOMAIN-SUFFIX,omnigroup.com,$app_name
+  - DOMAIN-SUFFIX,onedrive.com,$app_name
+  - DOMAIN-SUFFIX,onenote.com,$app_name
+  - DOMAIN-SUFFIX,ooyala.com,$app_name
+  - DOMAIN-SUFFIX,openvpn.net,$app_name
+  - DOMAIN-SUFFIX,openwrt.org,$app_name
+  - DOMAIN-SUFFIX,orkut.com,$app_name
+  - DOMAIN-SUFFIX,osxdaily.com,$app_name
+  - DOMAIN-SUFFIX,outlook.com,$app_name
+  - DOMAIN-SUFFIX,ow.ly,$app_name
+  - DOMAIN-SUFFIX,paddleapi.com,$app_name
+  - DOMAIN-SUFFIX,parallels.com,$app_name
+  - DOMAIN-SUFFIX,parse.com,$app_name
+  - DOMAIN-SUFFIX,pdfexpert.com,$app_name
+  - DOMAIN-SUFFIX,periscope.tv,$app_name
+  - DOMAIN-SUFFIX,pinboard.in,$app_name
+  - DOMAIN-SUFFIX,pinterest.com,$app_name
+  - DOMAIN-SUFFIX,pixelmator.com,$app_name
+  - DOMAIN-SUFFIX,pixiv.net,$app_name
+  - DOMAIN-SUFFIX,playpcesor.com,$app_name
+  - DOMAIN-SUFFIX,playstation.com,$app_name
+  - DOMAIN-SUFFIX,playstation.com.hk,$app_name
+  - DOMAIN-SUFFIX,playstation.net,$app_name
+  - DOMAIN-SUFFIX,playstationnetwork.com,$app_name
+  - DOMAIN-SUFFIX,pushwoosh.com,$app_name
+  - DOMAIN-SUFFIX,rime.im,$app_name
+  - DOMAIN-SUFFIX,servebom.com,$app_name
+  - DOMAIN-SUFFIX,sfx.ms,$app_name
+  - DOMAIN-SUFFIX,shadowsocks.org,$app_name
+  - DOMAIN-SUFFIX,sharethis.com,$app_name
+  - DOMAIN-SUFFIX,shazam.com,$app_name
+  - DOMAIN-SUFFIX,skype.com,$app_name
+  - DOMAIN-SUFFIX,smartdns$app_name.com,$app_name
+  - DOMAIN-SUFFIX,smartmailcloud.com,$app_name
+  - DOMAIN-SUFFIX,sndcdn.com,$app_name
+  - DOMAIN-SUFFIX,sony.com,$app_name
+  - DOMAIN-SUFFIX,soundcloud.com,$app_name
+  - DOMAIN-SUFFIX,sourceforge.net,$app_name
+  - DOMAIN-SUFFIX,spotify.com,$app_name
+  - DOMAIN-SUFFIX,squarespace.com,$app_name
+  - DOMAIN-SUFFIX,sstatic.net,$app_name
+  - DOMAIN-SUFFIX,st.luluku.pw,$app_name
+  - DOMAIN-SUFFIX,stackoverflow.com,$app_name
+  - DOMAIN-SUFFIX,startpage.com,$app_name
+  - DOMAIN-SUFFIX,staticflickr.com,$app_name
+  - DOMAIN-SUFFIX,steamcommunity.com,$app_name
+  - DOMAIN-SUFFIX,symauth.com,$app_name
+  - DOMAIN-SUFFIX,symcb.com,$app_name
+  - DOMAIN-SUFFIX,symcd.com,$app_name
+  - DOMAIN-SUFFIX,tapbots.com,$app_name
+  - DOMAIN-SUFFIX,tapbots.net,$app_name
+  - DOMAIN-SUFFIX,tdesktop.com,$app_name
+  - DOMAIN-SUFFIX,techcrunch.com,$app_name
+  - DOMAIN-SUFFIX,techsmith.com,$app_name
+  - DOMAIN-SUFFIX,thepiratebay.org,$app_name
+  - DOMAIN-SUFFIX,theverge.com,$app_name
+  - DOMAIN-SUFFIX,time.com,$app_name
+  - DOMAIN-SUFFIX,timeinc.net,$app_name
+  - DOMAIN-SUFFIX,tiny.cc,$app_name
+  - DOMAIN-SUFFIX,tinypic.com,$app_name
+  - DOMAIN-SUFFIX,tmblr.co,$app_name
+  - DOMAIN-SUFFIX,todoist.com,$app_name
+  - DOMAIN-SUFFIX,trello.com,$app_name
+  - DOMAIN-SUFFIX,trustasiassl.com,$app_name
+  - DOMAIN-SUFFIX,tumblr.co,$app_name
+  - DOMAIN-SUFFIX,tumblr.com,$app_name
+  - DOMAIN-SUFFIX,tweetdeck.com,$app_name
+  - DOMAIN-SUFFIX,tweetmarker.net,$app_name
+  - DOMAIN-SUFFIX,twitch.tv,$app_name
+  - DOMAIN-SUFFIX,txmblr.com,$app_name
+  - DOMAIN-SUFFIX,typekit.net,$app_name
+  - DOMAIN-SUFFIX,ubertags.com,$app_name
+  - DOMAIN-SUFFIX,ublock.org,$app_name
+  - DOMAIN-SUFFIX,ubnt.com,$app_name
+  - DOMAIN-SUFFIX,ulyssesapp.com,$app_name
+  - DOMAIN-SUFFIX,urchin.com,$app_name
+  - DOMAIN-SUFFIX,usertrust.com,$app_name
+  - DOMAIN-SUFFIX,v.gd,$app_name
+  - DOMAIN-SUFFIX,v2ex.com,$app_name
+  - DOMAIN-SUFFIX,vimeo.com,$app_name
+  - DOMAIN-SUFFIX,vimeocdn.com,$app_name
+  - DOMAIN-SUFFIX,vine.co,$app_name
+  - DOMAIN-SUFFIX,vivaldi.com,$app_name
+  - DOMAIN-SUFFIX,vox-cdn.com,$app_name
+  - DOMAIN-SUFFIX,vsco.co,$app_name
+  - DOMAIN-SUFFIX,vultr.com,$app_name
+  - DOMAIN-SUFFIX,w.org,$app_name
+  - DOMAIN-SUFFIX,w3schools.com,$app_name
+  - DOMAIN-SUFFIX,webtype.com,$app_name
+  - DOMAIN-SUFFIX,wikiwand.com,$app_name
+  - DOMAIN-SUFFIX,wikileaks.org,$app_name
+  - DOMAIN-SUFFIX,wikimedia.org,$app_name
+  - DOMAIN-SUFFIX,wikipedia.com,$app_name
+  - DOMAIN-SUFFIX,wikipedia.org,$app_name
+  - DOMAIN-SUFFIX,windows.com,$app_name
+  - DOMAIN-SUFFIX,windows.net,$app_name
+  - DOMAIN-SUFFIX,wire.com,$app_name
+  - DOMAIN-SUFFIX,wordpress.com,$app_name
+  - DOMAIN-SUFFIX,workflowy.com,$app_name
+  - DOMAIN-SUFFIX,wp.com,$app_name
+  - DOMAIN-SUFFIX,wsj.com,$app_name
+  - DOMAIN-SUFFIX,wsj.net,$app_name
+  - DOMAIN-SUFFIX,xda-developers.com,$app_name
+  - DOMAIN-SUFFIX,xeeno.com,$app_name
+  - DOMAIN-SUFFIX,xiti.com,$app_name
+  - DOMAIN-SUFFIX,yahoo.com,$app_name
+  - DOMAIN-SUFFIX,yimg.com,$app_name
+  - DOMAIN-SUFFIX,ying.com,$app_name
+  - DOMAIN-SUFFIX,yoyo.org,$app_name
+  - DOMAIN-SUFFIX,ytimg.com,$app_name
 
   # Telegram
-  - DOMAIN-SUFFIX,telegra.ph,MATCH
-  - DOMAIN-SUFFIX,telegram.org,MATCH
-  - IP-CIDR,91.108.4.0/22,MATCH,no-resolve
-  - IP-CIDR,91.108.8.0/21,MATCH,no-resolve
-  - IP-CIDR,91.108.16.0/22,MATCH,no-resolve
-  - IP-CIDR,91.108.56.0/22,MATCH,no-resolve
-  - IP-CIDR,149.154.160.0/20,MATCH,no-resolve
-  - IP-CIDR6,2001:67c:4e8::/48,MATCH,no-resolve
-  - IP-CIDR6,2001:b28:f23d::/48,MATCH,no-resolve
-  - IP-CIDR6,2001:b28:f23f::/48,MATCH,no-resolve
+  - DOMAIN-SUFFIX,telegra.ph,$app_name
+  - DOMAIN-SUFFIX,telegram.org,$app_name
+  - IP-CIDR,91.108.4.0/22,$app_name,no-resolve
+  - IP-CIDR,91.108.8.0/21,$app_name,no-resolve
+  - IP-CIDR,91.108.16.0/22,$app_name,no-resolve
+  - IP-CIDR,91.108.56.0/22,$app_name,no-resolve
+  - IP-CIDR,149.154.160.0/20,$app_name,no-resolve
+  - IP-CIDR6,2001:67c:4e8::/48,$app_name,no-resolve
+  - IP-CIDR6,2001:b28:f23d::/48,$app_name,no-resolve
+  - IP-CIDR6,2001:b28:f23f::/48,$app_name,no-resolve
 
   # LAN
   - DOMAIN,injections.adguard.org,DIRECT
@@ -552,4 +552,4 @@ rules:
 
   # 最终规则
   - GEOIP,CN,DIRECT
-  - MATCH,MATCH
+  - MATCH,$app_name