provider・プロキシグループ・選択中ノードを分ける

proxy-providers はノード集合の取得元です。リモート URL、ローカルファイル、またはインライン設定からプロキシ項目を読み込みます。proxy-groups は use でその集合を参照し、手動選択、遅延テスト、フェイルオーバーなどの方針を決めます。画面で最後に選ぶものは具体的なノード、または別の子グループです。

provider の更新成功は「内容を取得して解析できた」ことしか証明しません。グループが空なら、まず use、名前フィルター、除外プロトコルを確認します。項目があるのにすべてタイムアウトする場合は、ノードへの接続とヘルスチェック先を調べます。

秘密情報:購読 URL のトークンはパスワードと同様に扱い、公開ログやスクリーンショットでは必ず伏せます。

HTTP・file・inline の使い分け

通常のリモート購読は type: http とし、url、固有のキャッシュ path、更新 interval を指定します。file はローカルファイルを読むだけで、リモート更新は行いません。inline は自分で保守する少数の固定ノード向けです。

YAMLproxy-providers:
  main-subscription:
    type: http
    url: "https://provider.example/sub?token=REDACTED"
    path: ./providers/main.yaml
    interval: 21600
    proxy: DIRECT
    size-limit: 10485760

proxy は購読を取得するリクエスト自体の経路です。購読サーバーが直結で届かないなら DIRECT は不適切です。また、複数 provider で同じキャッシュパスを共有しないでください。size-limit はバイト単位で、例は 10 MiB です。異常に大きい応答を抑えますが、配布元の信頼性は保証しません。

名前とプロトコルを段階的に絞り込む

filter は名前が正規表現に一致する項目を残し、exclude-filter は一致項目を除外します。名前条件は provider 側にも、それを参照するグループ側にも設定できます。provider の exclude-type はその集合のプロトコルを除外しますが、グループ側の同名項目は公式資料上、直接追加した outbound だけが対象で、use の provider 項目は除外しません。地域別なら一つの provider を名前条件で分けます。

YAMLproxy-groups:
  - name: Japan
    type: select
    use: [main-subscription]
    filter: '(?i)(日本|東京|大阪|japan|tokyo|osaka|\bjp\b)'
    exclude-filter: '(?i)(期限|残量|公式|プラン)'

判定対象は配布元が付けた表示名であり、サーバーの実所在地ではありません。名称変更だけでグループが空になることがあります。YAML と正規表現の両方がバックスラッシュを解釈するため、まずテスト用グループで一条件ずつ確認します。

ヘルスチェックが証明する範囲

ヘルスチェックは各ノード経由で指定 URL にアクセスし、遅延、タイムアウト、期待する HTTP ステータスを評価します。主な項目は enable、url、interval、timeout、lazy、expected-status です。小さく安定し、候補となる出口から到達可能な URL を選びます。

YAMLhealth-check:
  enable: true
  url: https://www.gstatic.com/generate_204
  interval: 600
  timeout: 5000
  lazy: true
  expected-status: 204

成功は、その時点でその URL に届いたという意味です。動画、ゲーム、特定 API の利用可否までは保証しません。逆にテスト先だけが特定出口を拒否して失敗する場合もあります。短すぎる間隔はノード数に比例して通信を増やすので避けます。

select・url-test・fallback に接続する

固定出口が必要なら select、通常のブラウジングで自動選択したいなら url-test、順序付きの主回線と予備回線なら fallback を検討します。provider のヘルスチェックとグループのテストは階層が異なり、同じ数字に見えても役割は別です。

用途種類確認点
会議・固定出口select途中で自動変更しない
一般閲覧url-testテスト先の偏り
主系・予備系fallback順序と復旧時の動作

複雑な条件を付けない「全ノード」グループも残しておくと便利です。地域グループだけが空になった場合、リモート購読ではなくフィルター条件に原因を絞れます。

一層ずつ検証する

  1. provider を手動更新し、時刻、サイズ、解析ログを確認します。
  2. フィルターなしの一時グループで元の名前と件数を確認します。
  3. 包含、除外、プロトコル条件を一つずつ追加します。
  4. ヘルスチェックを実行し、空グループ、テスト失敗、対象サービス失敗を区別します。
  5. 最後にグループ種類や間隔を調整します。

取得内容が HTML のログイン画面、認証エラー、空ファイルなら、正規表現ではなく配布元を直します。現行項目は公式の proxy-providers 資料と proxy-groups 資料で確認できます。

変更前の設定を保存し、「取得成功」「グループに項目あり」「テスト成功」「目的サービス成功」を別々に記録してください。この順序なら、配布元の名称変更やノード入れ替えにも落ち着いて対応できます。

公式情報源とバージョン範囲

バージョン番号、ファイル名、画面表示は更新で変わる場合があります。作業前にリンク先の公式資料を確認してください。