インストール前に確認:アプリ・設定形式・サービス契約の違い
iPhoneで「iOS版Clash」を検索したら、まずアプリの正体を確認しましょう。Clashの設定形式、mihomoコア、App Storeで配信されるアプリは、それぞれ別のものです。アプリ名にClashが含まれていても、名前だけでは使用コアや対応ルール、デスクトップ版の設定をすべて読み込めるかどうかは判断できません。
この記事でいう「Clashクライアント」とは、Clash形式の設定を読み込める、または関連するインポート・変換機能を備えたiOSアプリを指します。対応するプロトコル、プロキシグループ、ルールセット、DNS項目はアプリによって異なります。ダウンロード前に、App Storeのアプリ詳細や開発者のドキュメントで対応状況を確認してください。「サブスクリプション対応」と書かれていても、すべてのClash YAMLを読み込めるとは限りません。
- クライアント:設定を読み込み、iOSのネットワーク拡張機能を使って接続を確立し、通信を処理します。
- 設定またはサブスクリプション:サーバー情報を提供します。ルールやプロキシグループ、DNS設定が含まれる場合もあります。
- サービスアカウント:サブスクリプションの有効性やサーバーの利用可否を決めます。クライアントアプリを購入しても、通常はネットワークサービスの契約にはなりません。
App Storeの国や地域:配信ストアとダウンロード条件を確認
App Storeで特定のクライアントが検索できるかどうかは、Apple Accountに設定されたストアの国や地域、そして開発者が指定する配信地域によって決まります。iPhoneの表示言語を変えたり、「設定」→「一般」→「言語と地域」で地域を変更したりしても、App Storeのストアが切り替わるわけではありません。
まずアプリを確認し、その後でストアの地域を確認
- 当サイトのダウンロードページでiOS向けの案内を確認し、対象アプリと入手方法をチェックします。
- App Storeのアプリページで、アプリ名、開発者、必要なiOSバージョン、料金を確認してください。同名のアプリが複数ある場合は、開発者情報と公式案内を基準に選びましょう。
- 「このAppはお住まいの国または地域ではご利用いただけません」と表示された場合は、まずアプリのリンクが正しいか確認してください。サブスクリプションのリンク切れとは別の問題です。
- 対象アプリが現在のストアで配信されていないと確認できた場合に限り、自分の状況に合った別地域のアカウントを使えるか検討してください。すべてのクライアントで同じ地域のアカウントが必要なわけではありません。
ストア用アカウントとiCloudアカウントは分けて扱う
比較的新しいiOSでは、「設定」→画面上部のApple Account→「メディアと購入」→「アカウントを表示」→「国または地域」でストアの設定を確認できます。項目名はiOSのバージョンによって多少異なり、旧バージョンでは「Apple ID」と表示される場合があります。国や地域を変更すると、残高、有効なサブスクリプション、ファミリー共有、支払い方法の確認が必要になることがあります。操作前に画面の案内をよく読んでください。
自分が所有する別のストアアカウントを使う場合は、「メディアと購入」だけでサインインしてください。アプリを1つダウンロードするために、端末全体のiCloudからサインアウトする必要はありません。支払い情報は正確かつ有効で、Appleの要件を満たしている必要があります。見知らぬ人と共有するアカウントは使わず、パスワードや確認コードをアプリの代行インストール業者に教えないでください。
- 有料アプリの購入履歴は購入時に使用したアカウントに紐づきます。後日のアップデートや再ダウンロードで、そのアカウントが必要になる場合があります。
- App Storeに表示されるアプリの価格と、サブスクリプションサービスの料金は別々に確認してください。
- 公式のTestFlightテスト版が案内されている場合は、参加枠とビルドの有効期限を確認しましょう。テスト版は、長期利用できるApp Store版と同じではありません。
サブスクリプションの読み込み:形式を確認してからURLを貼り付ける
サブスクリプションURLにはアカウントのトークンが含まれていることが多く、URLを完全な形で入手した人はサーバー情報を取得できる可能性があります。読み込み前に提供元とドメインを確認し、公開コメント欄にURLを投稿しないでください。トラブル対応のために、不明なオンライン変換サイトへ完全なURLを渡すのも避けましょう。
クライアントに合った形式を選ぶ
| サブスクリプションの内容 | 読み込み前の確認 | よくある質問 |
|---|---|---|
| Clash YAML設定 | クライアントがClash設定の読み込みに対応し、設定内の項目もサポートしていることを確認 | ノードは読み込めても、ルールセットやDNS設定が反映されない |
| mihomo拡張設定 | プロトコル、ルール構文、拡張項目の対応状況を確認 | デスクトップでは使えるのに、iOSでは不明な項目や非対応プロトコルのエラーが出る |
| 汎用プロキシノードのサブスクリプション | クライアントが対応するエンコード方式とノードURLの形式を確認 | ノード一覧だけで、プロキシグループや振り分けルールがない |
| 他のクライアント専用の設定 | サービス提供元に、対象クライアント用のエクスポート方法を確認 | URLからダウンロードはできるが、内容を解析できない |
あるプロキシプロトコルに対応していても、別のクライアント向け設定ファイルをすべて読み込めるとは限りません。サービスの管理画面に「Clash」「汎用サブスクリプション」や特定アプリ名の選択肢がある場合は、利用するクライアントのドキュメントに従って選んでください。形式の問題をファイル拡張子の変更で解決しようとするのは避けましょう。
「リモート設定を追加」の手順で進める
クライアントによって画面の項目名は異なります。以下では機能ごとに手順を説明します。ボタン名は「設定」「サブスクリプション」「Profiles」「Subscriptions」など、実際の画面に表示される名称を確認してください。
- サービスの管理画面からサブスクリプションURLを全体コピーします。クエリパラメーターを残し、空白や引用符、改行を付け加えないでください。
- クライアントの設定管理画面を開き、「リモート設定を追加」または「URLから読み込む」を選びます。
- 「個人用サブスクリプション」など、見分けやすい名前を入力し、URL欄にアドレスを貼り付けます。iOSから他のアプリの内容をペーストする許可を求められた場合は、コピー元を確認してから今回の操作を許可してください。
- ダウンロードまたは更新を実行し、成功、認証エラー、ネットワークタイムアウト、解析エラーのどれが表示されたか確認します。
- 読み込んだ設定を現在の設定として選び、ノード、プロキシグループ、ルールが表示されているか確認します。
VPNの許可:ネットワーク拡張を許可し、システムの状態を確認
iOSクライアントは通常、Network Extensionのパケットトンネル機能を使って通信を処理します。初回接続時に、VPN構成の追加を求めるメッセージが表示されることがあります。アプリが正しいことを確認して「許可」を選び、必要に応じて端末のパスコード入力や認証を行ってください。ここで許可するのは端末上のネットワーク設定であり、サービス提供元にApple Accountのパスワードを送る操作ではありません。
- クライアントに戻り、現在の設定が有効か確認します。手動選択が必要なプロキシグループでは、利用可能なノードを選んでください。
- 接続スイッチをタップし、システムに表示されるVPN構成の追加を許可します。
- 「設定」→「一般」→「VPNとデバイス管理」→「VPN」を開き、該当する構成があり、接続済みになっているか確認します。
- クライアントに戻って接続ログを確認し、その後Webページへのアクセスをテストします。
ステータスバーやコントロールセンターのVPN表示から分かるのはトンネルの状態だけです。アクセスしたいすべてのサイトが開けることや、ルールが意図したポリシーに一致したことまでは確認できません。iPhoneによってはステータスバーにVPN表示が常時出ないため、システムのVPN画面とクライアントのログをあわせて確認してください。
デスクトップのシステムプロキシやTUN設定をそのまま適用しない
WindowsやmacOSの解説にある「システムプロキシを有効化」「TUNサービスをインストール」は、iPhone共通の手順ではありません。iOSではクライアントのVPN接続手順に従ってトンネルを有効にしてください。初回接続のためにWi-Fiの手動HTTPプロキシを変更する必要はありません。デスクトップ設定の mixed-port: 7890 も、iPhoneのWi-Fi設定でポート7890を指定するという意味ではありません。
初回テストの前に、通常のVPNやVPN構成を使う他のネットワークツールを一時的に切断してください。組織管理下の端末では、アプリ単位のVPNや端末の制限が設定されている場合があります。組織のルールに従い、管理プロファイルを独断で削除しないでください。
初回接続の確認:設定・ノード・ルールを個別にチェック
初回接続ではルールモードを使い、まずノードを1つ手動で選ぶのがおすすめです。グローバルプロキシは短時間の比較テストには使えますが、ルール設定の誤りを覆い隠すために使うものではありません。モード名やルールの処理方法はクライアントによって異なるため、使用中のアプリの説明を確認してください。
- 切断時の状態を記録:Safariで普段使えるページを開き、Wi-Fiまたはモバイル通信自体が使えることを確認します。
- 接続後に同じ方法で再テスト:まず同じページを開き、次にプロキシ経由になる想定のサイトへアクセスします。速度テストのボタンが緑色になったかだけで判断しないでください。
- 接続ログを確認:接続の詳細を表示できる場合は、対象ドメイン、一致したルール、選択したプロキシグループ、最終的に使われたノードを確認します。直接接続する想定のリクエストには、対応する直接接続のログがあるはずです。
- 接続先ネットワークを変えて再試行:Wi-Fiとモバイル通信の両方で確認し、特定のネットワークだけの制限かどうかを切り分けます。テスト前にモバイルデータの使用量も確認してください。
- 基準となる状態を記録:クライアントのバージョン、iOSのバージョン、設定の更新日時、テスト時刻を記録し、その後は一度に変更する項目を1つに絞ります。
たとえばノードテストで80ミリ秒と表示されても、それはそのテスト方法での応答時間を示すだけで、ダウンロード速度やすべてのアプリの通信状況を推測する根拠にはなりません。80ミリ秒は説明用の例であり、この記事で実測した値ではありません。ブラウザーの閲覧、動画の読み込み、バックグラウンドアプリの通信では接続方法が異なる場合があるため、それぞれ確認してください。
よくあるトラブル:発生した段階に応じて対処
サブスクリプションを取得できない/401・403が表示される
401は通常、認証が必要であることを示し、403はサーバーがリクエストを拒否したことを示します。詳しい原因はサービス提供元の案内によりますが、トークンの期限切れ、アカウントの状態、アクセス制限などが考えられます。まずサービスの管理画面でURLを再取得し、サブスクリプションが有効か確認してください。URLを誤って公開してしまった場合は、古いURLを広めて調査を続けるのではなく、トークンをすぐに再発行してください。
リクエストがタイムアウトする場合は、端末のネットワーク、サービスのドメイン、クライアントのサブスクリプション更新方法を確認します。更新リクエストを直接接続するか、既存のプロキシ経由にするか指定できるクライアントもありますが、設定場所はアプリによって異なります。利用可能な設定をまだ読み込んでいない場合、更新リクエストがプロキシ経由になっているとは限りません。
YAMLエラーが表示される/一部しか読み込まれない
サービス提供元から設定ファイルではなく、ログイン画面や期限切れの案内、エラーページが返されていないか確認します。次に、エクスポート形式がクライアントに合っているか確認してください。エラーに項目名やルールプロバイダーが表示されている場合は、クライアントの対応範囲を調べます。エラー項目を削除しただけで、ルール振り分けが完全だと判断しないでください。リモートルールセットの取得に失敗していると、設定の読み込みは完了したように見えても、実際の動作が想定と異なる場合があります。
VPNは接続済みなのにWebページが開かない
- まず別のノードに切り替え、ログに接続タイムアウトや認証エラーが出ていないか確認します。
- ログにドメインの名前解決エラーがある場合は、設定のDNS項目とクライアントが実際に使用する名前解決方式を確認してください。見知らぬDNSアドレスを一度に複数追加するのは避けましょう。
- 特定のアプリだけで問題が起きる場合は、そのアプリが接続するドメインとルールを確認します。それだけでトンネル全体が使えないと判断しないでください。
- Wi-Fiとモバイル通信で結果が異なる場合は、接続中のネットワークを確認し、クライアントに関連するネットワーク権限の案内が表示されていないか調べます。
VPNを許可しても接続を開始できない
まず接続を停止し、競合する可能性のあるVPNツールを終了してから再試行します。必要であれば、システムのVPN画面で、そのクライアントのものと確認できる構成を削除し、クライアントから再度許可します。削除前に構成名を記録し、職場や学校から追加された項目を誤って消さないようにしてください。システムのVPN構成とクライアントのサブスクリプションは通常別のデータですが、アプリを再インストールするとローカル設定に影響する場合があります。操作前にバックアップしてください。
アップデートとプライバシー:復元できる設定記録を残す
接続が安定してから、クライアントが対応するサブスクリプションの自動更新を設定してください。更新頻度はサービス提供元の案内に従いましょう。頻繁に手動更新してもノードの障害は直らず、リクエスト制限にかかる可能性もあります。更新時にどの設定が変わるかは、クライアントのマージ・上書き方式によって異なります。ローカルで加えた変更が必ず残るとは限りません。
- 更新前:現在の設定、ノードの選択、ローカルで加えた変更を記録し、復元できるバックアップがあることを確認します。
- 更新後:ノード数だけでなく、プロキシグループ、ルール、実際のリクエストを確認します。
- ログを共有する場合:エラーの種類と発生時刻は残し、サブスクリプショントークン、パスワード、サーバー認証情報、不要なアクセス履歴は隠してください。
- クライアントを変更する場合:設定形式の互換性とVPNの許可を確認し、以前のクライアントのメニューや動作が新しいクライアントでも同じだと思い込まないでください。
iPhoneの設定を確実に行うには、次の4点を説明できる状態にしておきましょう。アプリの開発者、サブスクリプションの形式、システムがVPNを許可したクライアント、実際のリクエストに適用されたルールです。まずこの4点を確認してから、自動更新や細かなルール振り分けを設定すると、トラブルの原因を絞り込みやすくなります。