使い方のヒント

プロキシグループ実践:負荷分散・フェイルオーバー・自動速度選択

プロキシグループ(proxy-groups)は Clash のプロキシアーキテクチャにおけるコアスケジューリングレイヤーで、トラフィックが最終的にどのノードを経由して出力されるかを決定します。適切なプロキシグループ設計により、速度・安定性・柔軟性のバランスを最適化できます。本記事は Clash 公式のプロキシグループ使用ガイドです。完全な設定例を通じて、4種類のプロキシグループタイプの適用シナリオと公式推奨の設定方法を詳しく説明します。

select:手動選択

select タイプは最も基本的なプロキシグループで、ユーザーが GUI 上で手動クリックして現在使用するノードまたはサブプロキシグループを切り替えます。proxies リストには具体的なプロキシノード名と他のプロキシグループ名を混在させることができ、この特性によりプロキシグループ間のネスト組み合わせが可能になります。

proxy-groups:
  - name: "🚀 ノード選択"
    type: select
    proxies:
      - "♻️ 自動選択"   # 別のプロキシグループを参照
      - "🇯🇵 日本ノード"
      - "🇺🇸 米国ノード"
      - DIRECT            # 内蔵ダイレクト接続ポリシー

select プロキシグループは通常、最上位のエントリーポイントとして機能し、ユーザーが設定ファイルを変更せずにいつでも別のノードや自動ポリシーに切り替えられるようにします。

url-test:自動速度選択

url-test タイプは url フィールドに指定したアドレスに定期的に HTTP リクエストを送信し、各ノードのレイテンシを計測して、最もレイテンシの低いノードに自動的にトラフィックを切り替えます。

  - name: "♻️ 自動選択"
    type: url-test
    url: http://www.gstatic.com/generate_204
    interval: 300      # 速度テスト間隔(秒単位)
    tolerance: 50      # 許容差:新しい最優秀ノードが現在のノードより50ms以上速い場合のみ切り替え
    lazy: true         # 遅延テスト:トラフィックがある時のみテスト実行。リソースを節約
    proxies:
      - "🇯🇵 日本-01"
      - "🇯🇵 日本-02"
      - "🇯🇵 日本-03"

tolerance(許容差)パラメータは非常に重要です。許容差を設定しない場合、複数のノードのレイテンシが近似しているときに url-test が微小なレイテンシの変動で頻繁にノードを切り替え、接続が中断される問題が発生します。50ms の許容差を設定することで、新たに発見された最優秀ノードが現在のノードより 50ms 以上速い場合のみ切り替えが行われ、安定性が大幅に向上します。

fallback:フェイルオーバー

fallback タイプも定期的な速度テストを実施しますが、その動作ロジックは url-test とは異なります。リスト内の最初の利用可能な(速度テスト成功の)ノードを常に優先使用し、現在のノードが利用不能(速度テスト失敗またはタイムアウト)になった場合のみ次のノードに切り替えます。

  - name: "🛡️ フェイルオーバー"
    type: fallback
    url: http://www.gstatic.com/generate_204
    interval: 180
    proxies:
      - "🇯🇵 日本-01"   # メインノード。優先使用
      - "🇺🇸 米国-01"   # バックアップノード1
      - "🇸🇬 シンガポール-01" # バックアップノード2

fallback はビデオ通話やライブストリーミングなど、接続が途切れることのできない安定性が重視されるシナリオに最適です。メインノードに障害が発生した場合、fallback は次回の速度テスト後(デフォルトで 180 秒以内)に自動的にバックアップノードに切り替わり、メインノードが復旧したら元に戻ります。

load-balance:負荷分散

load-balance タイプは新しく確立される接続を proxies リスト内の複数のノードに均等に分散させ、各ノードの帯域幅を最大限に活用します。多数の接続を同時に確立する必要があるシナリオ(マルチスレッドダウンロード、バルク API リクエストなど)に適しています。

  - name: "⚖️ 負荷分散"
    type: load-balance
    url: http://www.gstatic.com/generate_204
    interval: 300
    strategy: consistent-hashing  # 同一ドメインの接続は同一ノードに固定割り当て
    proxies:
      - "🇯🇵 日本-01"
      - "🇯🇵 日本-02"
      - "🇯🇵 日本-03"

strategy パラメータは分散アルゴリズムを制御します。consistent-hashing(コンシステントハッシュ)モードは同一の宛先ドメインへのすべての接続を同一ノードに固定割り当てし、IP の一貫性を要求するウェブサイト(ログイン状態の検証など)での異常を防ぎます。round-robin モードは完全なラウンドロビン方式で、ステートレスなバルクリクエストシナリオに適しています。

プロキシグループアーキテクチャ設計のガイドライン

適切なプロキシグループアーキテクチャは通常、階層設計を採用します。最上位にはユーザーが手動制御できる総エントリーポイントとして select プロキシグループを配置し、中間層には地域や用途別に分けた url-test 自動速度選択グループを、最下層には具体的なプロキシノードを配置します。トラフィック分類ルールは最上位のプロキシグループを指し、ユーザーは最上位グループで自動速度選択または特定ノードの使用をいつでも切り替えられます。

地域限定ストリーミングサービスの視聴シナリオには、「ストリーミング」専用のプロキシグループを別途作成し、Netflix や Disney+ などのプラットフォームの視聴に対応したノードのみを配置することをお勧めします。そして関連ドメインをルールでそのプロキシグループに向けることで、メインノードと視聴用ノードの頻繁な切り替えを避けられます。日常使用に影響を与えることなく、ストリーミングサービスを視聴したいときに対応するプロキシグループに切り替えるだけで済みます。

Clash
Clashを使い始めませんか?
無料でダウンロード。Windows・macOS・Linux・Android 全プラットフォーム対応。
今すぐダウンロード
記事ナビゲーション
関連記事
Clash
Clashをダウンロード
全プラットフォーム対応・無料
ダウンロードページへ