Bläddra i källkod

update:clash规则集和规则链优化v2

lvzhiqiang 1 månad sedan
förälder
incheckning
1515f8163d

+ 73 - 29
src/main/resources/clash-template.yml

@@ -62,71 +62,115 @@ proxy-groups:
 # --- 核心优化 3: 规则集 (Rule Providers) ---
 # 引用 GitHub 上的成熟规则,不占用文件体积,自动更新
 rule-providers:
-  Reject:
+  # 广告域名列表 reject.txt
+  reject:
     type: http
     behavior: domain
     url: "https://cdn.jsdelivr.net/gh/Loyalsoldier/clash-rules@release/reject.txt"
     path: ./ruleset/reject.yaml
     interval: 86400
-
-  Apple:
+  # iCloud 域名列表 icloud.txt
+  icloud:
+    type: http
+    behavior: domain
+    url: "https://cdn.jsdelivr.net/gh/Loyalsoldier/clash-rules@release/icloud.txt"
+    path: ./ruleset/icloud.yaml
+    interval: 86400
+  # Apple 在中国大陆可直连的域名列表 apple.txt
+  apple:
     type: http
     behavior: domain
     url: "https://cdn.jsdelivr.net/gh/Loyalsoldier/clash-rules@release/apple.txt"
     path: ./ruleset/apple.yaml
     interval: 86400
-
-  Google:
+  # [慎用]Google 在中国大陆可直连的域名列表 google.txt
+  google:
     type: http
     behavior: domain
     url: "https://cdn.jsdelivr.net/gh/Loyalsoldier/clash-rules@release/google.txt"
     path: ./ruleset/google.yaml
     interval: 86400
-
-  Proxy:
+  # 代理域名列表 proxy.txt
+  proxy:
     type: http
     behavior: domain
     url: "https://cdn.jsdelivr.net/gh/Loyalsoldier/clash-rules@release/proxy.txt"
     path: ./ruleset/proxy.yaml
     interval: 86400
-
-  Direct:
+  # 直连域名列表 direct.txt
+  direct:
     type: http
     behavior: domain
     url: "https://cdn.jsdelivr.net/gh/Loyalsoldier/clash-rules@release/direct.txt"
     path: ./ruleset/direct.yaml
     interval: 86400
-
-  CN:
+  # 私有网络专用域名列表 private.txt:
+  private:
     type: http
     behavior: domain
-    url: "https://cdn.jsdelivr.net/gh/Loyalsoldier/clash-rules@release/cn.txt"
-    path: ./ruleset/cn.yaml
+    url: "https://cdn.jsdelivr.net/gh/Loyalsoldier/clash-rules@release/private.txt"
+    path: ./ruleset/private.yaml
     interval: 86400
-
-  LAN:
+  # Telegram 使用的 IP 地址列表 telegramcidr.txt
+  telegramcidr:
+    type: http
+    behavior: ipcidr
+    url: "https://cdn.jsdelivr.net/gh/Loyalsoldier/clash-rules@release/telegramcidr.txt"
+    path: ./ruleset/telegramcidr.yaml
+    interval: 86400
+  # 中国大陆 IP 地址列表 cncidr.txt
+  cncidr:
+    type: http
+    behavior: domain
+    url: "https://cdn.jsdelivr.net/gh/Loyalsoldier/clash-rules@release/cncidr.txt"
+    path: ./ruleset/cncidr.yaml
+    interval: 86400
+  # 局域网 IP 及保留 IP 地址列表 lancidr.txt
+  lancidr:
     type: http
     behavior: classical
     url: "https://cdn.jsdelivr.net/gh/Loyalsoldier/clash-rules@release/lancidr.txt"
     path: ./ruleset/lancidr.yaml
     interval: 86400
+  # 需要直连的常见软件列表 applications.txt
+  applications:
+    type: http
+    behavior: classical
+    url: "https://cdn.jsdelivr.net/gh/Loyalsoldier/clash-rules@release/applications.txt"
+    path: ./ruleset/applications.yaml
+    interval: 86400
 
 # --- 规则链 ---
 # 从上到下匹配,逻辑清晰
 # 格式: RULE-SET, 规则集名称, 策略组名称
+# 黄金法则:先“强制代理”,再“强制直连”,最后“按地名/兜底”
 rules:
-  # 1. 广告拦截
-  - RULE-SET,Reject,REJECT
-  # 2. 局域网直连
-  - RULE-SET,LAN,DIRECT
-  # 3. 国内直连
-  - RULE-SET,CN,DIRECT
-  - RULE-SET,Direct,DIRECT
-  - GEOIP,LAN,DIRECT
-  - GEOIP,CN,DIRECT
-  # 4. 走代理 (自动选择 或 指定组)
-  - RULE-SET,Apple,DIRECT
-  - RULE-SET,Google,手动选择
-  - RULE-SET,Proxy,手动选择
-  # 5. 兜底规则 (剩下的全部走代理)
+  # 1. 【拦截】最优先,节省带宽和连接数
+  - RULE-SET,reject,REJECT
+
+  # 2. 【局域网/私有】必须最优先直连,防止内网流量走代理
+  - RULE-SET,lancidr,DIRECT
+  - RULE-SET,private,DIRECT
+  - GEOIP,LAN,DIRECT,no-resolve  # 加上 no-resolve 避免不必要的 DNS 解析:告诉 Clash“不要为了匹配这条规则去特意解析域名的 IP”
+
+  # 3. 【强制代理】关键优化点!
+  # 即使它解析出的 IP 是国内的(DNS污染),只要在名单里,就强制走代理
+  - RULE-SET,google,手动选择
+  - RULE-SET,telegramcidr,手动选择
+  - RULE-SET,proxy,手动选择   # 包含推特、脸书等大量被墙域名
+
+  # 4. 【强制直连】国内名站、苹果、微软等
+  - RULE-SET,apple,DIRECT     # 苹果服务通常国内CDN很好,直连即可
+  - RULE-SET,icloud,DIRECT
+  - RULE-SET,applications,DIRECT # 通常 applications 规则集里包含的是微信、QQ 等国产软件的进程名或域名,直连体验最好。
+  - RULE-SET,direct,DIRECT    # 包含百度、淘宝等明确的国内域名
+
+  # 5. 【GeoIP 兜底】
+  # 既不在代理名单,也不在直连名单,那么看 IP 是不是中国的
+  # 加上 no-resolve 是为了防止非 Fake-IP 模式下的 DNS 泄露/污染干扰
+  - GEOIP,CN,DIRECT,no-resolve
+  - RULE-SET,cncidr,DIRECT    # 作为 GeoIP 的补充
+
+  # 6. 【最终兜底】
+  # 既不是国内 IP,也没被上面规则命中,默认视为“国外未知流量”,走代理
   - MATCH,手动选择

+ 1 - 1
src/main/resources/mapper/VideoInfoLoveFootMapper.xml

@@ -6,7 +6,7 @@
 <mapper namespace="top.lvzhiqiang.mapper.CrawlerLoveFootMapper">
 
     <select id="getVideoInfoLoveFootList" resultType="top.lvzhiqiang.entity.VideoInfo">
-        select vi.id,vi.name,vi.identification_code,vi.issue_date,vi.modify_time,vi.update_date,vi.type,vi.img_url,javdb_url,vi.orgin_avnoashi_url,vi.orgin_jpfoot_url,vi.orgin_feetpassion_url,IFNULL(vi.cast, vi.genres) AS main_who,IFNULL(vio.score, 0) AS score, IFNULL(vio.comment, '暂无评论') AS comment,
+        select vi.id,vi.name,vi.identification_code,vi.issue_date,vi.modify_time,vi.update_date,vi.type,vi.img_url,vi.javdb_url,vi.orgin_avnoashi_url,vi.orgin_jpfoot_url,vi.orgin_feetpassion_url,IFNULL(vi.cast, vi.genres) AS main_who,IFNULL(vio.score, 0) AS score, IFNULL(vio.comment, '暂无评论') AS comment,
             IFNULL(temp1.identification_code, 'false') AS videoInfoFlag,IFNULL(temp2.identification_code, 'false') AS videoInfoPoolFlag,temp2.type AS videoInfoPoolType
         from crawler_lovefoot_info vi
         left join video_info_other vio on vi.identification_code = vio.identification_code and vio.delete_flag = 1