始める前
下の二つを用意してから、右上の「+」をタップする。サブスク無しで無理に書くと、接続の段で失敗し、Appが壊れたように見える。
- Shadowrocketが開くこと。初回のローカルネットワーク / VPNの許可は先に許可してよい。
- サブスクURL1件(たいていhttpsで始まる、または業者が渡したss / vmessの共有リンク)、またはサーバーの一式(住所、ポート、パスワード、プロトコル)。
- システムの時刻は自動。ずれが大きいとTLS系ノードはすぐ失敗する。
設定の取り込み
入口はだいたい三つ。一つで足りる。多くの人はサブスクを使う。
右の図:+ のあと Type を開き Subscribe を選ぶ。初期の Shadowsocks のままにしない。URL を貼って Done。
種類は中身と一致させる。サブスクURLを単一のShadowsocksとして書かない。メモは自分用の名前であり、「自宅のサブスク」でも接続には影響しない。
| 方法 | いつ使うか | 操作 |
|---|---|---|
| Subscribe | 業者がサブスクURLを渡し、ノードが随時更新される | ホームの「+」→ 種類はSubscribe → URLを貼る → メモを書く → 保存 |
| QR読み取り | パソコンや紙に二次元コードがある | 「+」横の読み取りでコードに合わせる。読み取ったあとも、種類がサブスクか単一ノードかを確認する |
| 手入力 | 自建サーバーで、住所とポートだけある | 「+」→ 該当プロトコルを選ぶ → 項目を埋める。一つ間違えると繋がらない |
見えるもの保存後、ホームにサブスクまたはサーバーの項目が増える。この時点でノード一覧が空なのはよくある。次の手順であり、取り込み失敗ではない。
ノードを更新する
サブスクでは、保存はURLを端末に記すだけだ。Shadowrocketはまだサーバーから一覧を取っていない。詳しくはサブスク管理。店の図は + のあとの初期の追加画面だ。先に Type を変える。購読URLを Host / Port に Shadowsocks として書かない。
そのサブスクを開き、「更新」をタップする(バージョンによっては右上)。成功して初めて地域名や回線名の列が出る。失敗したら、リンクが完全か、余分な空白が無いか、今の回線でサブスク住所自体が開くかを見る(サブスク元に先に届く必要があることもある)。
いちばん多い誤解:保存しただけで「ノードが無い」と言う。先に更新し、それから一覧を見る。
ノードはあとから変わる。設定で「起動時に更新」またはバックグラウンド更新をオンにすると、毎回手で押さなくてよい。バックグラウンド更新は、システムの「設定 → 一般 → Appのバックグラウンド更新」でShadowrocketを許可する。
ノードを選ぶ
右の図:ノードはホームの SERVER に出る。空のときは Add Server だけ。注記は「点は初期ノード」。遅延は上の Connectivity Test。一覧には遅延の数字が出ることが多い。小さいほど往復は速いが、通信速度の保証ではない。遅延が低くても帯域が狭いことがある。先に「タイムアウト」と赤く出ている項目を外す。
分からなければ遅延測定:クライアントにまとめてpingさせ、緑または数の小さいものを選ぶ。通信量は少ないが、回数が多いと一部の業者に制限される。一度か二度で足りる。
ノードを一度タップすれば選択になる。選んだだけでは転送は始まらない。それは次のスイッチだ。
接続を入れる
ホームに戻り、上部のスイッチを入れる。初回はシステムのダイアログが出て、VPN構成の追加を求める。許可し、Face IDまたはパスコードで確認する。
これはiOSのNetwork Extensionだ。この許可が無いと、どのプロキシクライアントも通信を受け取れない。許可の相手は本機のShadowrocketであり、本サイトへ通信を渡すことでも、「公式アカウント」へ入ることでもない。
スイッチが入り、状態が接続済みになって、この手順は完了だ。スイッチが点滅し続けるなら、今のノードのハンドシェイク失敗が多い。ノードを替える。オンオフや削除・再インストールを繰り返さない。
見えるものステータスバーにVPNアイコンが出る。アイコンが無くても接続済みと出るときは、目的のページが開くかを基準にする。
通ったことを確認する
普段開けず、プロキシが必要なページを一つ開く。読み込めれば、たいていは成功だ。
通信がノードを通ったかを見る:下部のDataを開く。このページは iCloud、ノードの入出力、Statistics、ログ。通信量は Statistics。Logging の Proxy / DNS はリクエスト記録。Statistics の Proxy が増えればノードを通っている。両方が0ならスイッチとルーティングを見る。
普段のサイトが遅くなったのは、グローバルで直通でよい通信までノードへ送っていることが多い。次の節でルーティングを変える。「より速い」ノードで押し切らない。
ルーティング
ホームまたは設定によく出る三つ。名前は少し違うことがある。
右の図:下部 Config はルールファイル(点は初期、チェックは使用中)。ホームの Global Routing で Config を選ぶとそのファイルに従う。Proxy はグローバル、Direct はオフ。
| モード | 動き | いつ使うか |
|---|---|---|
| Config / ルール | ルールファイルに従い直通かプロキシかを決める | 日常。ローカルは直通、必要なものだけノードへ |
| Proxy / グローバル | できるだけ今のノードへ送る | 「ルールがそのサイトを誤判定していないか」を見るとき、一時的に使う |
| Direct / 直通 | ノードを通さない。プロキシがオフと同じ | 対照、またはしばらくプロキシを使わないとき |
日常はルールモードでよい。グローバルは繋がり、ルールでは繋がらないなら、ルールがそのサイトを直通にした。ルールを直すか、ルール用サブスクを替える。ノード不良と決めつけない。
ルール分流
ルールは上から照合し、当たれば止まる。最後の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
DIRECT:ノードを通さない。ローカルサイトとApple向け。PROXY:今選んでいるノードへ送る。REJECT系はリクエストを捨てる。よく使うドメインに安易に足さない。
App単位の振り分けもできる。あるアプリを常に直通、または常にプロキシにする。ルールもノードと同じく本機にあり、削除前にバックアップしてよい。
日常の手入れ
サブスクは期限切れ、ノードは無効になる。Appを開いたときに更新する方が、完全に繋がらなくなってから探すより安い。業者がドメインやトークンを変えたら、旧サブスクを消して新しいリンクを足す。更新だけでは、すでに無効な住所を取りに行くことがある。
機種変更:DataでiCloud同期をオンにし、システムの設定でもShadowrocketのiCloud利用を許可する。ノードと設定はApple IDに付いていく。シーンやグループはバージョンによって同期されない。重要な設定はスクリーンショットか書き出しを残す。
プロキシが不要なときはスイッチを切る。すべてのリクエストがクライアントを一周しなくて済む。ノードは消えない。
繋がらないときの見方
この順で見る。いきなり再インストールしない。
- スイッチは安定して入っているか。点滅するならノードを替える。先にAppを疑わない。
- そのノードの遅延測定はタイムアウトか。列が全滅なら、サブスク無効か今の回線がノードに届いていない。サブスクを更新するか、回線を替えて一度試す。
- システムの時刻は自動か。
- VPNの許可を出したか。設定 → 一般 → VPNとデバイス管理に、Shadowrocketの構成が見えるはずだ。
- ルーティングがルールモードなら、グローバルで一度試す。グローバルは通り、ルールは通らない → ルールを直す。グローバルも通らない → ノードかローカル回線の問題。
- まだ通らないならトラブルまたはFAQ。再インストールは最後であり、バックアップしていない設定は消える。
使い方はShadowrocketが開ける前提だ。そうでなければ先にダウンロード案内へ。