ClashX 高級使用技巧:釋放代理工具的全部潛能

Article 14 cover image

引言:高級技巧概述

當你掌握了 ClashX 的基礎使用方法後,下一步就是學習如何充分發揮這個強大工具的潛能。高級技巧不僅能提升代理性能,還能建立更加靈活和智慧的網路分流方案。

本文將系統地介紹 ClashX 的高級使用方法,包括智能分流、自動化指令碼、效能調優、規則最佳化等專業技巧。這些技巧適合已有一定 ClashX 使用基礎的進階使用者。

💡
進階使用者必讀

掌握這些技巧後,你將能夠建立完全定製化的代理方案,提升網絡性能,並能夠應對各種復雜的網路場景。

智能分流策略

智慧分流的核心是根據不同的流量特徵(域名、IP、地理位置等)將其路由到不同的代理節點或直連。這樣可以優化性能、降低延遲,並繞過地區限制。

基於域名的復雜分流

article14.smart-routing.auto.h3_1

rules:
  # 第一級:白名單直連(最高優先順序)
  - DOMAIN,localhost,DIRECT
  - DOMAIN-SUFFIX,local,DIRECT
  - DOMAIN-SUFFIX,lan,DIRECT

  # 第二級:國內服務直連
  - DOMAIN-SUFFIX,alipay.com,DIRECT
  - DOMAIN-SUFFIX,baidu.com,DIRECT
  - DOMAIN-SUFFIX,taobao.com,DIRECT
  - DOMAIN-SUFFIX,qq.com,DIRECT

  # 第三級:國外流媒體
  - DOMAIN-SUFFIX,netflix.com,🎬 流媒體
  - DOMAIN-SUFFIX,youtube.com,🎬 流媒體
  - DOMAIN-SUFFIX,twitch.tv,🎬 流媒體
  - DOMAIN-KEYWORD,spotify,🎬 流媒體

  # 第四級:遊戲加速
  - DOMAIN-SUFFIX,epicgames.com,🎮 遊戲加速
  - DOMAIN-SUFFIX,steampowered.com,🎮 遊戲加速

  # 第五級:特殊應用
  - DOMAIN-SUFFIX,telegram.org,💬 即時通訊
  - DOMAIN-SUFFIX,whatsapp.com,💬 即時通訊

  # 最終規則
  - GEOIP,CN,DIRECT
  - MATCH,🚀 智慧選擇

基於 IP 的精細化分流

article14.smart-routing.auto.h3_2

rules:
  # 優先順序最高:區域網 IP 直連
  - IP-CIDR,192.168.0.0/16,DIRECT,no-resolve
  - IP-CIDR,10.0.0.0/8,DIRECT,no-resolve
  - IP-CIDR,172.16.0.0/12,DIRECT,no-resolve
  - IP-CIDR,127.0.0.0/8,DIRECT,no-resolve

  # 中國 IP 直連
  - IP-CIDR,1.0.1.0/24,DIRECT,no-resolve
  - IP-CIDR,1.1.1.0/24,DIRECT,no-resolve

  # 特定 IP 段代理
  - IP-CIDR,8.8.8.0/24,🚀 智慧選擇,no-resolve
  - IP-CIDR,1.1.1.0/24,🚀 智慧選擇,no-resolve

  # 最終規則
  - MATCH,🚀 智慧選擇

基於 GeoIP 的地理位置分流

article14.smart-routing.auto.h3_3

rules:
  # 中國 IP 直連
  - GEOIP,CN,DIRECT

  # 美國流量用美國節點
  - GEOIP,US,🇺🇸 美國節點

  # 日本流量用日本節點
  - GEOIP,JP,🇯🇵 日本節點

  # 歐洲流量用歐洲節點
  - GEOIP,DE,🇩🇪 歐洲節點
  - GEOIP,FR,🇫🇷 歐洲節點
  - GEOIP,GB,🇬🇧 歐洲節點

  # 預設代理
  - MATCH,🚀 智慧選擇
⚠️
article14.smart-routing.auto.strong1

article14.smart-routing.auto.p1

高級策略組配置

策略組不僅能組合節點,還能實現復雜的流量控制和自動選擇邏輯。掌握高階策略組配置是最佳化代理效能的關鍵。

Fallback 故障轉移高級用法

article14.advanced-groups.auto.h3_1

proxy-groups:
  # 主節點層:自動測速
  - name: "🇭🇰 香港主節點"
    type: url-test
    proxies:
      - "HK-001"
      - "HK-002"
      - "HK-003"
    url: "http://www.gstatic.com/generate_204"
    interval: 300
    tolerance: 50

  # 故障轉移層:監測主節點的健康狀態
  - name: "🚀 智慧選擇"
    type: fallback
    proxies:
      - "🇭🇰 香港主節點"
      - "🇯🇵 日本備用節點"
      - "🇸🇬 新加坡備用節點"
      - "DIRECT"
    url: "http://www.gstatic.com/generate_204"
    interval: 300

Load Balance 負載均衡最佳化

article14.advanced-groups.auto.h3_2

proxy-groups:
  # 一致性雜湊負載均衡:同一連線使用同一節點
  - name: "⚖️ 一致性哈希"
    type: load-balance
    proxies:
      - "HK-001"
      - "HK-002"
      - "HK-003"
      - "JP-001"
      - "JP-002"
    url: "http://www.gstatic.com/generate_204"
    interval: 300
    strategy: consistent-hashing

  # 輪詢負載均衡:依次切換節點
  - name: "⚖️ 輪詢"
    type: load-balance
    proxies:
      - "HK-001"
      - "HK-002"
      - "HK-003"
    url: "http://www.gstatic.com/generate_204"
    interval: 300
    strategy: round-robin

URL Test 引數調優

article14.advanced-groups.auto.h3_3

proxy-groups:
  # 鏈式代理:流量經過兩個代理節點
  - name: "🔗 雙層加密"
    type: relay
    proxies:
      - "HK-001"
      - "JP-001"

  # 應用場景:高風險網路環境下使用鏈式代理
  - name: "🔐 超級安全"
    type: relay
    proxies:
      - "HK-001"
      - "SG-001"
      - "JP-001"

rules:
  - DOMAIN-SUFFIX,sensitive.com,🔗 雙層加密

Relay 鏈式代理

article14.advanced-groups.auto.h3_4

proxy-groups:
  # 區域節點組
  - name: "🇭🇰 香港"
    type: url-test
    proxies:
      - "HK-001"
      - "HK-002"
      - "HK-003"
    url: "http://www.gstatic.com/generate_204"
    interval: 300

  - name: "🇯🇵 日本"
    type: url-test
    proxies:
      - "JP-001"
      - "JP-002"
    url: "http://www.gstatic.com/generate_204"
    interval: 300

  # 目的組(流媒體、遊戲等)
  - name: "🎬 流媒體"
    type: select
    proxies:
      - "🇭🇰 香港"
      - "🇯🇵 日本"
      - "🇺🇸 美國"

  # 總選擇組
  - name: "🚀 總選擇"
    type: select
    proxies:
      - "🎬 流媒體"
      - "🇭🇰 香港"
      - "🇯🇵 日本"
      - "DIRECT"

自動化與指令碼

透過自動化指令碼,你可以實現配置自動切換、訂閱自動更新、定時任務執行等功能,大幅提升使用效率。

自動配置切換

article14.automation.auto.h3_1

#!/bin/bash

# ClashX 配置備份和恢復指令碼

CLASH_CONFIG_DIR="$HOME/.config/clash"
BACKUP_DIR="$HOME/.clash_backup"
BACKUP_DATE=$(date +%Y%m%d_%H%M%S)

# 建立備份
backup_config() {
    mkdir -p "$BACKUP_DIR"
    cp "$CLASH_CONFIG_DIR/config.yaml" "$BACKUP_DIR/config_$BACKUP_DATE.yaml"
    echo "配置已備份到: $BACKUP_DIR/config_$BACKUP_DATE.yaml"
}

# 恢復配置
restore_config() {
    local latest_backup=$(ls -t "$BACKUP_DIR"/config_*.yaml | head -1)
    if [ -z "$latest_backup" ]; then
        echo "未找到備份檔案"
        return 1
    fi
    cp "$latest_backup" "$CLASH_CONFIG_DIR/config.yaml"
    echo "配置已恢復"
}

# 重新載入配置
reload_config() {
    curl -X PUT http://127.0.0.1:9090/configs -H "Content-Type: application/json" \
        -d "{\"path\": \"$CLASH_CONFIG_DIR/config.yaml\"}"
    echo "配置已重新載入"
}

case "$1" in
    backup) backup_config ;;
    restore) restore_config ;;
    reload) reload_config ;;
    *) echo "用法: $0 {backup|restore|reload}" ;;
esac

定時任務自動化

article14.automation.auto.h3_2

#!/bin/bash # 定時更新 ClashX 規則提供者 CLASH_HOME="$HOME/.config/clash" API_URL="http://127.0.0.1:9090" SECRET="your-secret-key" # 更新規則提供者 update_rule_providers() { local providers=("reject" "proxy" "direct" "streaming") for provider in "${providers[@]}"; do echo "更新規則提供者: $provider" curl -X PUT "$API_URL/providers/rules/$provider" \ -H "Authorization: Bearer $SECRET" sleep 2 done echo "所有規則提供者已更新" } # 檢查 ClashX 狀態 check_clash_status() { local response=$(curl -s -w "\n%{http_code}" "$API_URL/version") local http_code=$(echo "$response" | tail -n 1) if [ "$http_code" == "200" ]; then echo "ClashX 執行正常" return 0 else echo "ClashX 狀態異常,嘗試重啟" killall -9 ClashX 2>/dev/null || true sleep 2 open /Applications/ClashX.app return 1 fi } # 主函式 main() { check_clash_status if [ $? -eq 0 ]; then update_rule_providers fi } main
💡
article14.automation.auto.strong1

article14.automation.auto.p1

訂閱更新自動化

article14.automation.auto.h3_3

#!/usr/bin/env python3

import requests
import json
import yaml
from datetime import datetime

class ClashXManager:
    def __init__(self, api_url="http://127.0.0.1:9090", secret=None):
        self.api_url = api_url
        self.headers = {}
        if secret:
            self.headers["Authorization"] = f"Bearer {secret}"

    def get_proxies(self):
        """獲取所有代理節點"""
        response = requests.get(f"{self.api_url}/proxies", headers=self.headers)
        return response.json() if response.status_code == 200 else None

    def get_traffic_stats(self):
        """獲取流量統計"""
        response = requests.get(f"{self.api_url}/traffic", headers=self.headers)
        return response.json() if response.status_code == 200 else None

    def test_proxy_speed(self, proxy_name, url="http://www.gstatic.com/generate_204"):
        """測試代理速度"""
        test_url = f"{self.api_url}/proxies/{proxy_name}/delay?url={url}"
        response = requests.get(test_url, headers=self.headers)
        return response.json() if response.status_code == 200 else None

    def switch_proxy(self, group_name, proxy_name):
        """切換策略組使用的代理"""
        data = json.dumps({"name": proxy_name})
        response = requests.put(
            f"{self.api_url}/proxies/{group_name}",
            data=data,
            headers={**self.headers, "Content-Type": "application/json"}
        )
        return response.status_code == 204

    def get_logs(self, level="info"):
        """獲取日誌"""
        response = requests.get(f"{self.api_url}/logs?level={level}", headers=self.headers)
        return response.json() if response.status_code == 200 else None

    def batch_test_proxies(self, proxy_names):
        """批次測試代理速度"""
        results = {}
        for proxy in proxy_names:
            result = self.test_proxy_speed(proxy)
            if result:
                results[proxy] = result.get("delay", -1)
        return results

# 使用示例
if __name__ == "__main__":
    manager = ClashXManager(secret="your-secret-key")

    # 獲取代理資訊
    proxies = manager.get_proxies()
    if proxies:
        print(json.dumps(proxies, indent=2, ensure_ascii=False))

    # 獲取流量統計
    stats = manager.get_traffic_stats()
    print(f"上行: {stats['up']} B/s, 下行: {stats['down']} B/s")

    # 批次測試代理
    proxy_names = ["HK-001", "JP-001", "US-001"]
    speeds = manager.batch_test_proxies(proxy_names)
    print("代理速度測試結果:")
    for proxy, speed in sorted(speeds.items(), key=lambda x: x[1]):
        print(f"  {proxy}: {speed}ms")

性能優化技巧

除了基礎配置外,還有許多技巧可以進一步提升 ClashX 的性能,降低資源佔用。

DNS 解析優化

article14.performance.auto.h3_1

dns:
  enable: true
  listen: 0.0.0.0:53
  enhanced-mode: fake-ip  # 效能更優,但兼容性略低

  # Fake-IP 地址池配置
  fake-ip-range: 198.18.0.1/16

  # 使用 Fake-IP 時應該排除的域名
  fake-ip-filter:
    - "*.lan"
    - "*.local"
    - "*.internal"
    - localhost.ptlogin2.qq.com
    - "*.qq.com"
    - "*.tencent.com"

  # 主 DNS 伺服器(國內解析快速)
  nameserver:
    - 119.29.29.29  # DNSPod 國內
    - 223.5.5.5     # 阿里 DNS 國內
    - https://doh.pub/dns-query  # DoH 協議更安全

  # 回落 DNS(當主 DNS 失敗時使用)
  fallback:
    - https://1.1.1.1/dns-query    # Cloudflare DoH
    - https://dns.google/dns-query  # Google DoH
    - https://9.9.9.9/dns-query     # Quad9 DoH

  # 域名策略性 DNS 選擇(關鍵最佳化點)
  nameserver-policy:
    # 國內域名使用國內 DNS
    "geosite:cn":
      - 119.29.29.29
      - 223.5.5.5

    # 國外域名使用國外 DNS
    "geosite:geolocation-!cn":
      - https://1.1.1.1/dns-query
      - https://dns.google/dns-query

    # 特定域名的 DNS
    "domain:example.com":
      - 119.29.29.29

    "domain:google.com":
      - https://8.8.8.8/dns-query

連接優化

article14.performance.auto.h3_2

general: # 出站接口 interface-name: en0 # TCP 連線池大小 tcp-concurrent: true # UDP 連線超時(毫秒) udp-timeout: 300 # 連線空閒超時時間 keep-alive-interval: 15 # SOCKS5 UDP 支持 socks-version: 5 # 高階效能調優引數 experimental: # 啟用介面檢測 interface-name: en0 # 忽略解析失敗的域名(減少重試) ignore-resolve-fail: true

資源佔用最佳化

article14.performance.auto.h3_3

規則型別效能對比(從快到慢):
1. IP-CIDR/IP6-CIDR(最快,O(1) 查詢)
   時間: ~0.1ms

2. DOMAIN-SUFFIX(快速,字首樹查詢)
   時間: ~0.2-0.5ms

3. DOMAIN(中等,精確匹配)
   時間: ~0.3-0.8ms

4. DOMAIN-KEYWORD(較慢,包含匹配)
   時間: ~1-2ms

5. GEOIP(較慢,需要 IP 庫查詢)
   時間: ~2-5ms

6. RULE-SET(取決於規則集大小)
   時間: ~0.5-5ms
💡
article14.performance.auto.strong1

article14.performance.auto.p1

規則最佳化與維護

良好組織和維護的規則是保證 ClashX 長期穩定執行的關鍵。以下是專業的規則管理技巧。

Rule Providers 使用

article14.rule-optimization.auto.h3_1

rule-providers:
  # 廣告攔截規則
  reject:
    type: http
    behavior: domain
    url: "https://cdn.jsdelivr.net/gh/Loyalsoldier/clash-rules@release/reject.txt"
    path: ./ruleset/reject.yaml
    interval: 86400  # 24小時更新一次

  # 代理規則
  proxy:
    type: http
    behavior: domain
    url: "https://cdn.jsdelivr.net/gh/Loyalsoldier/clash-rules@release/proxy.txt"
    path: ./ruleset/proxy.yaml
    interval: 86400

  # 直連規則
  direct:
    type: http
    behavior: domain
    url: "https://cdn.jsdelivr.net/gh/Loyalsoldier/clash-rules@release/direct.txt"
    path: ./ruleset/direct.yaml
    interval: 86400

  # 流媒體規則
  streaming:
    type: http
    behavior: domain
    url: "https://cdn.jsdelivr.net/gh/Loyalsoldier/clash-rules@release/streaming.txt"
    path: ./ruleset/streaming.yaml
    interval: 86400

  # Apple 規則
  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:
    type: http
    behavior: domain
    url: "https://cdn.jsdelivr.net/gh/Loyalsoldier/clash-rules@release/google.txt"
    path: ./ruleset/google.yaml
    interval: 86400

  # 國內 IP 規則
  cncidr:
    type: http
    behavior: ip
    url: "https://cdn.jsdelivr.net/gh/Loyalsoldier/clash-rules@release/cncidr.txt"
    path: ./ruleset/cncidr.yaml
    interval: 86400

  # 國外 IP 規則
  lancidr:
    type: http
    behavior: ip
    url: "https://cdn.jsdelivr.net/gh/Loyalsoldier/clash-rules@release/lancidr.txt"
    path: ./ruleset/lancidr.yaml
    interval: 86400

# 使用規則提供者
rules:
  # 區域網直連
  - RULE-SET,lancidr,DIRECT

  # 廣告攔截
  - RULE-SET,reject,REJECT

  # 直連規則
  - RULE-SET,direct,DIRECT

  # 流媒體
  - RULE-SET,streaming,🎬 流媒體

  # Apple
  - RULE-SET,apple,🍎 Apple 服務

  # Google
  - RULE-SET,google,🔍 Google 服務

  # 國內 IP
  - RULE-SET,cncidr,DIRECT

  # 代理規則
  - RULE-SET,proxy,🚀 智慧選擇

  # 最終規則
  - MATCH,🚀 智慧選擇

規則維護最佳實踐

article14.rule-optimization.auto.h3_2

#!/usr/bin/env python3 import requests import yaml from pathlib import Path class RuleManager: """動態規則管理工具""" def __init__(self, config_path): self.config_path = Path(config_path) self.config = self._load_config() def _load_config(self): """載入配置檔案""" with open(self.config_path, 'r', encoding='utf-8') as f: return yaml.safe_load(f) def _save_config(self): """保存配置文件""" with open(self.config_path, 'w', encoding='utf-8') as f: yaml.dump(self.config, f, allow_unicode=True, default_flow_style=False) def add_rule(self, rule_text, position=None): """新增新規則""" if 'rules' not in self.config: self.config['rules'] = [] if position is None: # 在末尾添加(MATCH 規則前) position = len(self.config['rules']) - 1 self.config['rules'].insert(position, rule_text) self._save_config() print(f"規則已新增: {rule_text}") def remove_rule(self, keyword): """根據關鍵字移除規則""" if 'rules' not in self.config: return original_count = len(self.config['rules']) self.config['rules'] = [ r for r in self.config['rules'] if keyword not in r ] removed_count = original_count - len(self.config['rules']) self._save_config() print(f"已移除 {removed_count} 條規則") def update_rule_provider(self, provider_name, new_url): """更新規則提供者 URL""" if 'rule-providers' not in self.config: self.config['rule-providers'] = {} if provider_name in self.config['rule-providers']: self.config['rule-providers'][provider_name]['url'] = new_url self._save_config() print(f"規則提供者 {provider_name} 已更新") else: print(f"規則提供者 {provider_name} 不存在") def list_rules(self, limit=20): """列出規則""" if 'rules' not in self.config: return rules = self.config['rules'][-limit:] for i, rule in enumerate(rules, 1): print(f"{i}. {rule}") # 使用示例 manager = RuleManager(Path.home() / '.config/clash/config.yaml') # 新增新規則 manager.add_rule("DOMAIN-SUFFIX,example.com,DIRECT") # 列出規則 manager.list_rules(10) # 更新規則提供者 manager.update_rule_provider("proxy", "https://new-url.com/proxy.yaml")

實用場景配置

根據不同的使用場景,這裡提供一些完整的配置方案,你可以直接參考使用。

開發環境配置

article14.scenarios.auto.h3_1

proxy-groups: # 流媒體專用策略組 - name: "🎬 流媒體" type: select proxies: - "🇭🇰 香港節點" # 節目豐富 - "🇯🇵 日本節點" # 低延遲 - "🇺🇸 美國節點" # 最新內容 - DIRECT # Netflix 專用 - name: "🍿 Netflix" type: url-test proxies: - "HK-Netflix-01" - "US-Netflix-01" url: "https://www.netflix.com/nrdp/v6/www/user" interval: 300 tolerance: 100 rules: # 流媒體平臺分流 - DOMAIN-SUFFIX,netflix.com,🍿 Netflix - DOMAIN-SUFFIX,nflxso.net,🍿 Netflix - DOMAIN-SUFFIX,youtube.com,🎬 流媒體 - DOMAIN-SUFFIX,youtu.be,🎬 流媒體 - DOMAIN-SUFFIX,hulu.com,🎬 流媒體 - DOMAIN-SUFFIX,disneyplus.com,🎬 流媒體 - DOMAIN-KEYWORD,spotify,🎬 流媒體

遊戲最佳化配置

article14.scenarios.auto.h3_2

proxy-groups: # 遊戲加速組:低延遲優先 - name: "🎮 遊戲加速" type: url-test proxies: - "HK-Game-01" - "SG-Game-01" - "JP-Game-01" url: "http://www.gstatic.com/generate_204" interval: 300 tolerance: 30 # 遊戲對延遲敏感,容差設定小 rules: # Steam - DOMAIN-SUFFIX,steampowered.com,🎮 遊戲加速 - DOMAIN-SUFFIX,steamcommunity.com,🎮 遊戲加速 # Epic Games - DOMAIN-SUFFIX,epicgames.com,🎮 遊戲加速 - DOMAIN-SUFFIX,unrealengine.com,🎮 遊戲加速 # 其他遊戲平臺 - DOMAIN-SUFFIX,battlenet.com,🎮 遊戲加速 - DOMAIN-SUFFIX,playstation.com,🎮 遊戲加速

流媒體優化

article14.scenarios.auto.h3_3

proxy-groups: # 下載專用:頻寬優先 - name: "📥 下載加速" type: load-balance proxies: - "HK-Download-01" - "HK-Download-02" - "US-Download-01" url: "http://www.gstatic.com/generate_204" interval: 300 strategy: round-robin # 輪詢實現負載均衡 rules: # 常見下載站點 - DOMAIN-SUFFIX,github.com,📥 下載加速 - DOMAIN-SUFFIX,githubusercontent.com,📥 下載加速 - DOMAIN-SUFFIX,releases.ubuntu.com,📥 下載加速

高級功能探索

ClashX 還有許多隱藏的高階功能,合理利用這些功能可以帶來意想不到的便利。

External Control API

article14.advanced-features.auto.h3_1

tun: enable: true stack: system # 或 gvisor(性能更好但兼容性略低) # DNS 劫持 dns-hijack: - any:53 - tcp://any:53 # 自動路由 auto-route: true # 自動檢測介面 auto-detect-interface: true # 指定特定網絡卡(可選) interface-name: en0 # MTU 大小最佳化 mtu: 9000

TUN 模式高級應用

article14.advanced-features.auto.h3_2

#!/usr/bin/env python3 import requests import json import asyncio from datetime import datetime class ClashXDashboard: """ClashX Dashboard API 高階應用""" def __init__(self, base_url="http://127.0.0.1:9090", secret=None): self.base_url = base_url self.headers = {"Content-Type": "application/json"} if secret: self.headers["Authorization"] = f"Bearer {secret}" def get_system_info(self): """獲取系統資訊""" response = requests.get(f"{self.base_url}/version", headers=self.headers) return response.json() if response.status_code == 200 else None def get_connections(self): """獲取當前連線""" response = requests.get(f"{self.base_url}/connections", headers=self.headers) return response.json() if response.status_code == 200 else None def get_traffic_stats(self): """獲取流量統計""" response = requests.get(f"{self.base_url}/traffic", headers=self.headers) if response.status_code == 200: data = response.json() return { "upload": data["up"], "download": data["down"], "timestamp": datetime.now() } return None def change_mode(self, mode): """切換模式: rule, global, direct""" valid_modes = ["rule", "global", "direct"] if mode not in valid_modes: return False data = json.dumps({"mode": mode}) response = requests.put( f"{self.base_url}/configs", data=data, headers=self.headers ) return response.status_code == 200 def get_rules_info(self): """獲取規則資訊""" response = requests.get(f"{self.base_url}/rules", headers=self.headers) return response.json() if response.status_code == 200 else None def test_url_latency(self, url, timeout=5000): """測試 URL 延遲""" response = requests.get( f"{self.base_url}/configs/latency?url={url}&timeout={timeout}", headers=self.headers ) return response.json() if response.status_code == 200 else None def get_proxy_latency(self, proxy_name, url="http://www.gstatic.com/generate_204"): """測試單個代理延遲""" response = requests.get( f"{self.base_url}/proxies/{proxy_name}/delay?url={url}", headers=self.headers ) return response.json() if response.status_code == 200 else None # 使用示例:實時流量監控 async def monitor_traffic(): dashboard = ClashXDashboard(secret="your-secret") print("開始監控流量...") while True: stats = dashboard.get_traffic_stats() if stats: print(f"[{stats['timestamp']}] 上行: {stats['upload']:.2f} B/s, " f"下行: {stats['download']:.2f} B/s") await asyncio.sleep(2) # 執行監控 # asyncio.run(monitor_traffic())

自定義規則集

article14.advanced-features.auto.h3_3

general: # 啟用外部控制器 external-controller: 0.0.0.0:9090 # API 訪問金鑰(強烈建議設定) secret: "your-very-secure-secret-key-here" # CORS 支持 external-ui: true # 外部 UI 路徑 external-ui-url: "https://clash.razord.top/"
⚠️
article14.advanced-features.auto.strong1

article14.advanced-features.auto.p1

article14.sec.auto.h3_1

DNS 最佳化前
DNS 查詢: 80ms
DNS 最佳化後
DNS 查詢: 15ms
規則最佳化前
平均延遲: 120ms
規則最佳化後
平均延遲: 45ms

article14.sec.auto.h3_2

  • article14.sec.auto.li1
  • article14.sec.auto.li2
  • article14.sec.auto.li3
  • article14.sec.auto.li4
  • article14.sec.auto.li5
  • article14.sec.auto.li6
  • article14.sec.auto.li7

常見問題與解決方案

Q
article14.sec.auto.strong1

article14.sec.auto.p1

Q
article14.sec.auto.strong2

article14.sec.auto.p2

Q
article14.sec.auto.strong3

article14.sec.auto.p3