ポリシーグループ
ポリシーグループは複数のポリシーを含むことができます。プロキシポリシー、別のポリシーグループ、または組み込みポリシー(DIRECTとREJECT)を含めることができます。
グループタイプは5つあります: select、url-test、fallback、load-balance、ssid。[Proxy Group]セクションでポリシーグループを宣言します。smartタイプも受け付けられ、url-testとして扱われます。
手動選択グループ
ユーザーインターフェース上で使用するポリシーを選択します。
SelectGroup = select, ProxyHTTP, ProxyHTTPS, DIRECT, REJECT
オプションパラメータ: default=<index>(初期選択されるメンバーのインデックス)、policy-provider:Name(プロキシプロバイダーからメンバーをインポート)、filter= / exclude-filter=(プロバイダー提供のメンバーに適用される正規表現)、およびHIDDEN=true。
iOS版では、Todayウィジェットを使用して最初の'select'グループのポリシーを素早く切り替えることができます。macOS版では、メニューバーメニューでポリシーを切り替えることができます。
自動URLテストグループ
URLへのレイテンシをベンチマークすることで、使用するポリシーを自動的に選択します。
AutoTestGroup = url-test, ProxySOCKS5, ProxySOCKS5TLS, url = http://www.google.com/generate_204
パラメータ
url: オプション
ChuteはURLにHTTP GETリクエストを送信します。テストはレスポンスデータを受信するかどうかのみを重視し、レスポンスがHTTPエラーであっても構いません。省略した場合、デフォルトのプローブURL http://www.gstatic.com/generate_204 が使用されます。
interval: オプション、秒(デフォルト: 600秒)。
ポリシーを再テストする頻度です。グローバルな1秒タイマーが、ポリシーグループが使用されているかどうかに関わらずinterval秒ごとに自動再テストを実行します。例外は2つあります: lazy=trueのグループは最初に使用されるまでテストを開始しません。また、グループがidle-timeoutより長くアイドル状態のままの場合、テストは一時停止します。
tolerance: オプション、ミリ秒(デフォルト: 100ミリ秒)。
新しい勝者のスコアが古い勝者のスコアに許容値を加えたものよりも高い場合にのみ、ポリシーが変更されます。
timeout: オプション、秒(デフォルト: 5秒)。
タイムアウト内に完了しない場合、ポリシーを破棄します。
lazy: オプション(true/false、デフォルト: false)。
有効にすると、ポリシーは起動時ではなく最初の使用時にのみテストされます。
max-failed-times: オプション(デフォルト: 0、無効)。
ポリシーが不健全と見なされるまでの連続テスト失敗回数。このオプションが有効なのはロードバランスグループのみで、そこでは不健全なポリシーが選択から除外されます。url-testおよびfallbackグループでは失敗回数は記録されますが、選択には影響しません。未設定(0)の場合、テストの失敗によってポリシーが除外されることはありません。
expected-status: オプション(デフォルト: 空)。
expected-status=204
予約済み。現在のカーネルでは解析されますが有効ではありません。ステータスコードに関わらず、レスポンスデータを受信した時点でテストは成功となります。
idle-timeout: オプション、秒。
idle-timeout = 120
ポリシーグループがこの時間より長く使用されなかった場合(このグループからポリシーを選んだ新しい接続がない場合)、定期的なURLテストが一時停止します。グループが再び使用されるとテストが再開されます。このオプションによって接続が閉じられることはありません。
その他のサポート: HIDDEN=true、filter=、exclude-filter=、policy-provider:Name。
フォールバックグループ
優先度によって利用可能なポリシーを選択します。可用性は自動URLテストグループと同様に、URLにアクセスすることでテストされます。前方に定義されたポリシーが高い優先度を持ちます。
FallbackGroup = fallback, ProxySOCKS5, ProxySOCKS5TLS, url = http://www.google.com/generate_204
パラメータ
url: オプション
テストするURLを指定します。省略した場合、デフォルトのプローブURL http://www.gstatic.com/generate_204 が使用されます。
interval: オプション、秒(デフォルト: 600秒)。
ポリシーを再テストする頻度です。セマンティクスは自動URLテストグループと同じです。
timeout: オプション、秒(デフォルト: 5秒)。
タイムアウトまでに完了しない場合、ポリシーを破棄します。
lazy / max-failed-times: オプション。
自動URLテストグループと同じです。その他のサポート: HIDDEN=true、filter=、exclude-filter=、policy-provider:Name。
SSIDグループ
現在のWi-Fi SSIDに応じてポリシーを選択します。
SSIDGroup = ssid, default = ProxyHTTP, cellular = ProxyHTTP, SSIDName = ProxySOCKS5
パラメータ
default: 必須。
マッチするSSIDオプションが見つからなかった場合のポリシー。
cellular: オプション。
携帯電話ネットワーク下でのポリシー。指定されない場合、デフォルトポリシーが使用されます。
defaultに加えて、少なくとも1つのSSIDマッピング(例:SSIDName = ProxySOCKS5)が必要です。
ロードバランスグループ
ロードバランシング戦略を使用して、複数のプロキシにリクエストを分散します。
LBGroup = load-balance, ProxySOCKS5, ProxyHTTPS, url = http://www.google.com/generate_204, strategy = round-robin
パラメータ
strategy: オプション(デフォルト: round-robin)
ロードバランシング戦略を指定します:
| 戦略 | 説明 |
|---|---|
round-robin |
全てのプロキシに順番に均等にリクエストを分散 |
consistent-hashing |
同じホスト名を一貫して同じプロキシにルーティング |
sticky-sessions |
最後に選択したプロキシを全ての接続で再利用し続ける。固定された選択はグローバル(クライアントごとではない)で、選択時から600秒後に失効 |
url: オプション
url = http://www.google.com/generate_204
Chuteはプロキシの可用性をテストするためにHTTP GETリクエストを送信します。省略した場合、デフォルトのプローブURL http://www.gstatic.com/generate_204 が使用されます。テスト結果が選択に影響するのはmax-failed-timesが0より大きい場合のみで、デフォルトの0では不健全なプロキシは除外されません。
interval: オプション、秒(デフォルト: 600秒)。
interval = 300
プロキシの可用性を再テストする頻度。
timeout: オプション、秒(デフォルト: 5秒)。
timeout = 3
可用性テストリクエストのタイムアウト。
lazy: オプション(true/false、デフォルト: false)。
自動URLテストグループと同じです。グループが最初に使用されるまでテストは開始されません。
max-failed-times: オプション(デフォルト: 0、無効)。
max-failed-times = 3
プロキシが不健全とマークされ、ロードバランシングから除外されるまでの連続テスト失敗回数。デフォルトの0では、テスト結果によってプロキシが除外されることはありません。全てのプロキシが不健全な場合は、再び全てのプロキシが使用されます。
HIDDEN: オプション(true/false、デフォルト: false)。
HIDDEN = true
有効にすると、ポリシーグループはユーザーインターフェースから非表示になります。キーは慣例として大文字で記述しますが、照合は大文字と小文字を区別しないためhidden=trueでも動作します。select、url-test、fallbackグループでも利用可能です。
注意:
interrupt-exist-connectionsパラメータは現在、グローバルな[General]設定になっています。その他オプションを参照してください。
プロキシプロバイダー
プロキシプロバイダーを使用すると、外部ソース(ファイルまたはURL)からプロキシリストをインポートできます。[Proxy Provider]セクションで定義します:
[Proxy Provider]
MyProvider = url=https://example.com/proxies.yaml, interval=3600
パラメータ
| パラメータ | 必須 | 説明 |
|---|---|---|
type |
いいえ | http(デフォルト)、file、またはinline |
url |
type=httpでははい |
プロキシリストを取得するURL |
path |
type=fileでははい |
プロキシリストのローカルファイルパス |
interval |
いいえ | 更新間隔(秒)(デフォルト: 86400)。0以下の値は自動更新を無効にします |
format |
いいえ | ペイロード形式。値は解析されますが、変換には現在この設定に関わらず常にmihomo-YAMLコンバーターが使用されます |
filter |
いいえ | マッチするプロキシ名のみを含めるフィルタ正規表現 |
exclude-filter |
いいえ | マッチするプロキシ名を除外するフィルタ正規表現 |
ペイロードは
proxies:(またはpayload:)リストを持つmihomoスタイルのYAMLドキュメントである必要があります。
プロキシプロバイダーはpolicy-provider:プレフィックスを付けてポリシーグループから参照されます:
[Proxy Group]
MyGroup = select, policy-provider:MyProvider
本ページは英語版からの翻訳です。内容に相違がある場合は、英語版が優先されます。