ルール分流

ルールは各リクエストをDIRECT(直通)にするかPROXY(今のノード)へ送るかを決める。自分で書いても、ルール用サブスクを取り込んでもよい。初心者はルールモードと既存の一覧で足り、1行目から打つ必要はない。

振り分ける理由

全部をプロキシにすると、メッセージ、銀行、動画など直通でよいアプリまで遠回りし、遅くなり認証も出やすい。ルールは「プロキシ不要」を直通に残し、必要なドメインだけノードへ送る。

これがShadowrocketと「ワンタップのグローバルVPN」との主な違いだ。位置づけは概要、スイッチと遅延測定は使い方

照合の仕方

ルールは上から見て、最初に当たった行で止まる。具体的な行を先に、フォールバックを最後に書く。

方針はだいたい三つ。DIRECTはノードを通さない。PROXYは今選んでいるサーバーへ送る。REJECTはリクエストを捨てる。よく使うドメインにREJECTを安易に足すと、「開かない」のにノードの問題ではない、という形になる。

よく使うキーワード

種類意味
DOMAIN ホスト名が完全一致 DOMAIN,www.example.com,PROXY
DOMAIN-SUFFIX 末尾一致。サブドメインを含む DOMAIN-SUFFIX,google.com,PROXY
DOMAIN-KEYWORD ドメインにこの文字列を含む DOMAIN-KEYWORD,github,PROXY
IP-CIDR IP範囲 IP-CIDR,172.16.0.0/12,DIRECT
GEOIP 位置情報データベース。CNは中国IPを直通に残すよくある例。別の国の通信を直通にしたいなら国コードを替える GEOIP,CN,DIRECT
FINAL 上のどれにも当たらないときのフォールバック FINAL,PROXY

バージョンによってはApp単位の振り分けもある。指定したアプリを常に直通、または常にプロキシにする。ルールファイルもノードと同じく本機に保存される。

以下は既定の設定ではなく、順番の説明だ。この例ではAppleと中国IPは直通、Google / GitHubはプロキシ、残りもプロキシ。自分の使い方と違うなら、国コードとFINALを変える:

DOMAIN-SUFFIX,apple.com,DIRECT
DOMAIN-SUFFIX,icloud.com,DIRECT
DOMAIN-SUFFIX,google.com,PROXY
DOMAIN-KEYWORD,github,PROXY
GEOIP,CN,DIRECT
FINAL,PROXY

GEOIP,CN,DIRECTはFINALより前に書く。そうしないと中国IPがフォールバックでプロキシへ送られる。中国以外のサイトが誤って直通になるなら、より具体的なDOMAIN-SUFFIXをGEOIPの上へ置く。別の国のIPを直通に残したいならCNを差し替える。

ルール用サブスクを取り込み、一覧を他人にメンテさせることもできる。出所は自分で見極める。ルール用サブスクとノード用サブスクは別物であり、欄を取り違えない。

グローバルとの関係

ホームではConfig / ルール、Proxy / グローバル、Direct / 直通がよく出る。日常はルール。切り分けではグローバルを入れる:グローバルは開き、ルールは開かないなら、ルールがそのサイトを誤判定している。先にノードを替えず、本ページの行を直す。

グローバルでも開かないなら、トラブルでノード、時刻、VPN許可を見る。