iPhoneとiPadでClashを使う手順は、デスクトップ版のようにコアを直接実行してシステムプロキシを設定する方法とは異なります。iOSクライアントはAppleが提供するネットワーク拡張機能を通じて通信を処理するため、初回接続時にVPN構成の追加を求められます。サブスクリプションURLはノード、プロキシグループ、ルールをクライアントに提供します。アプリのインストール、サブスクリプションのインポート、システム権限の許可はそれぞれ独立した手順であり、どれか一つでも欠けると正常に接続できません。
App Storeで利用できる互換クライアントは、ストアの地域、システムバージョン、開発者のメンテナンス状況によって変わり、アプリ名や機能も変更される場合があります。開始前に、まず当サイトのダウンロードセンターで現在推奨されているiOSクライアント名を確認し、その後App Storeでアプリ名、開発者情報、更新日、システム要件を確認してください。似たアイコンだけで判断したり、デスクトップ版のインストーラーをiPhone用ファイルとして扱ったりしないでください。
インストール前の確認:端末、ストア、サブスクリプション情報
まず「設定 → 一般 → ソフトウェアアップデート」を開き、端末のiOSまたはiPadOSが対象クライアントの要件を満たしているか確認します。古いシステムでは現在のバージョンをインストールできず、以前にダウンロードしたことがあっても、旧システム対応の過去バージョンしか入手できない場合があります。端末が学校や企業の管理下にある場合は、「VPNとデバイス管理」でネットワーク拡張の制限、新しいVPNの追加禁止、組織プロキシの強制設定がないかも確認してください。
続いて有効なサブスクリプションURLを用意します。サブスクリプションは通常、サービス提供元が発行するHTTPS URLで、クライアントがアクセスすると設定内容を取得できます。URLにはアカウント識別子やアクセストークンが含まれる場合があるため、認証情報と同じように扱ってください。使用するクライアントにのみコピーし、公開メモ、スクリーンショット、フォーラム、オンライン変換サイトには貼り付けないでください。提供元が「汎用サブスクリプション」「Clash設定」「他クライアント専用形式」を併記している場合は、ClashまたはMihomo対応と明記された設定を優先します。
| 確認項目 | 確認する内容 | 主な影響 |
|---|---|---|
| システムバージョン | App Storeのページに記載された最低要件を満たしている | ダウンロード、インストール、起動の可否を左右する |
| ストアの地域 | 対象アプリが現在のアカウント地域で表示される | 検索結果とダウンロード可否が異なる場合がある |
| 空き容量 | アプリ、設定、ログの保存に必要な容量を確保する | 容量不足によりインストールや更新に失敗する |
| サブスクリプション形式 | ClashまたはMihomo互換の設定を使用する | 形式が不正だとプロキシグループを生成できない |
| デバイス管理 | 新しいVPNとネットワーク拡張が制限されていない | 権限の確認を完了できない場合がある |
App Storeから入手:アプリ名と開発者を一つずつ確認
App Storeを開き、ダウンロードセンターに記載されたクライアント名を完全な形で検索欄に入力します。検索結果には名前が似たネットワークツールが表示されることがあるため、詳細ページを開き、開発者、アプリの説明、最終更新日、プライバシー情報、システム互換性を順番に確認してください。iPhoneとiPadで同じAppleアカウントを使っている場合、購入履歴から過去に入手したアプリを確認できますが、再ダウンロードできるかどうかはアプリの現在の提供状況とシステム互換性によって決まります。
- 当サイトのダウンロードセンターで、現在推奨されているクライアントと対応プラットフォームを確認します。
- App Storeを開き、完全なアプリ名で検索します。アイコンだけで判断して選ばないでください。
- 詳細ページを開き、開発者名、バージョンの更新履歴、必要なシステムバージョンを確認します。
- 「入手」または購入ボタンをタップし、画面の指示に従ってFace ID、Touch ID、またはアカウントのパスワードで認証します。
- インストールが完了するまで待ち、ホーム画面からアプリを起動して初回利用時の説明を確認します。
一部のiOSネットワーククライアントは有料アプリです。価格と提供地域はApp Storeの現在のページを基準にしてください。購入1回分がファミリー共有に対応するか、他の端末にもインストールできるかも、開発者とストアの規約に従います。対象アプリが検索に出ない場合は、まずスペル、ストア地域、システムバージョンを確認し、開発者情報が一致しない類似アプリをインストールしないでください。
iPadでは、検索結果が初期状態で「iPad App」のみを表示する場合があります。対象クライアントがiPhone互換モードで提供されている場合は、検索フィルターから該当カテゴリを確認してください。インストールが成功しただけでは、クライアントが端末に入ったことを示すにとどまり、サブスクリプション設定もシステムVPNもまだ構成されていません。メイン画面に空の設定が表示されたり、ノードがなかったりするのは初期状態として正常です。
サブスクリプション設定の読み込み:URL、ファイル、クリップボード
クライアントによってボタン名はProfile、設定、サブスクリプション、Remote Config、Download from URLなど異なりますが、処理の流れはほぼ同じです。リモート設定を新規作成し、サブスクリプションURLを入力すると、クライアントがダウンロードしてYAMLを解析します。読み込み後は、プロキシグループ、ノード一覧、ルール情報などが表示されます。テキストが一部表示されるだけ、またはノード数が0の場合は、URL形式が非対応、リンク切れ、サーバーが設定ファイルではなくログインページを返している可能性があります。
サブスクリプションURLから読み込む
- サービス提供元のアカウントページから、Clash互換のサブスクリプションリンクをコピーします。
- クライアントの設定またはProfileページを開き、リモート設定の追加を選択します。
- URL欄にリンクを貼り付け、判別しやすい設定名を入力します。
- 自動更新間隔を設定できる場合は、利用頻度に合わせます。不明な場合はクライアントの初期値を使用してください。
- ダウンロードまたは保存を実行し、クライアントの解析が完了するまで待ちます。
- 設定一覧に戻り、新しく読み込んだ設定を現在の有効な設定にします。
一部のサービスページには「ワンタップで読み込む」ボタンがあります。タップするとSafariがクライアントに登録されたURL Schemeでアプリを開こうとし、iOSに「アプリで開きますか」と確認が表示される場合があります。確認前に、起動しようとしているアプリ名を確認してください。ボタンが反応しない場合は、サブスクリプションURLを直接コピーして手動読み込みの手順を試すと、問題を切り分けやすくなります。
ローカルYAMLファイルから読み込む
YAMLファイルを受け取った場合は、まず「ファイル」アプリに保存し、クライアントでファイルからの読み込みを選択します。設定ファイルの拡張子は通常 .yaml または .yml です。iOSの共有メニューに「対象クライアントで開く」が表示される場合もありますが、対応状況はクライアントの実装によります。ファイルからの読み込みは固定設定に適していますが、サブスクリプションサーバーから後続のノードやルール変更を自動取得することはありません。
Clash系列のカーネルで認識できる設定には、通常、リスナー、プロキシ、プロキシグループ、ルールなどのフィールドが含まれます。サービス提供元が生成するモバイル向け設定ではすべてのフィールドが公開されない場合もありますが、少なくとも選択可能なポリシーと最終ルールを構成できる必要があります。以下は構造の関係を説明するためだけのもので、実際のサブスクリプションの代わりにはなりません。
mode: rule
proxies:
- name: Example
type: socks5
server: 192.0.2.10
port: 1080
proxy-groups:
- name: Select
type: select
proxies:
- Example
- DIRECT
rules:
- DOMAIN-SUFFIX,example.com,Select
- MATCH,Select
設定内の proxy-groups はメイン画面で選択できるポリシーを決め、rules は上から順に通信へ適用され、末尾に置かれることの多い MATCH が最終的なフォールバックを担います。クライアントがMihomoカーネルを使用している場合は、より多くのルール形式、DNSオプション、プロキシプロバイダーのフィールドに対応することもあります。特定フィールドの対応可否はクライアント内蔵カーネルのバージョンによるため、デスクトップ版で使えるからといって、iOS版でも使えるとは限りません。
VPN権限の確認:iOSのシステム通知を理解する
初回接続時に、iOSはクライアントがVPN構成を追加することを許可するか尋ねます。許可すると、端末のロック解除パスコードの入力を求められる場合があり、その後ステータスバーやコントロールセンターにVPNの状態が表示されます。この手順は、Network Extensionを使ってアプリがローカルネットワークトンネルを構築することを許可するもので、iPhoneやiPadでシステム通信を制御するために必要です。
追加済みの設定は「設定 → 一般 → VPNとデバイス管理 → VPN」で確認できます。システムバージョンによってメニュー名は多少異なります。対象クライアントに対応するVPN項目が一覧にない場合は、認証手順が完了していません。クライアントに戻って再接続し、システムの確認画面が再び表示されるか確認してください。「VPN構成を追加」がキャンセルされた場合、サブスクリプションを再読み込みするだけでは権限は追加されません。
デスクトップ版Clashでは、通信の取り込み方式を「システムプロキシ」と「TUNモード」で使い分けます。一方、iOSクライアントは通常、システムネットワーク拡張を通じて動作し、画面には接続スイッチ、VPN、拡張モードなどが表示されます。デスクトップ版のTUNスイッチの位置をiPhoneにそのまま当てはめないでください。LANをプロキシ経由にするか、特定ドメインを迂回するか、DNSをどう解決するかは、クライアント独自のルーティングとDNS設定を確認します。
端末に他のVPN、企業向けセキュリティソフト、DNSネットワーク拡張がすでにインストールされている場合、複数のネットワーク拡張が切り替わって競合することがあります。iOSでは通常、同種のVPNを2つ同時に全通信へ適用できません。Clash互換クライアントを有効にする前に、他のVPNを切断し、対象設定が安定して接続できるか確認してください。古いVPN構成を削除する前に用途を確認し、企業や学校の管理設定は自分で削除しないでください。
初回接続のチェック:設定選択からログの読み方まで
権限を許可した後、DNS、ルール、ルーティングの項目をいきなり大量に変更しないでください。まずは読み込んだ設定の初期値で最小限のテストを行うと、問題がサブスクリプション、ノード、ポリシー、追加設定のどこにあるか判断しやすくなります。
- 現在有効なのが、読み込んだばかりのProfileであり、空の設定や古い設定ではないことを確認します。
- プロキシグループを開き、主要な選択グループで利用可能なノードを指定します。使えない過去の選択が残らないようにしてください。
- 接続をタップしてVPN構成を許可し、状態が接続済みのまま維持されるか確認します。
- まずルールが明確なウェブサイトを開き、その後よく使うアプリをテストします。単一の速度テスト結果だけで判断しないでください。
- 接続ログを開き、どのルールに一致したか、どのポリシーを使ったか、DNSまたはハンドシェイクエラーがないか確認します。
ルールモードでは、ウェブサイトごとに異なるポリシーが適用される場合があります。あるページが開けても、そのドメインと関連リクエストが処理されたことを示すだけで、すべてのノードとルールが正常とは限りません。逆に、特定のアプリだけ通信できなくても、VPN全体が停止しているとは限りません。そのアプリのドメインが DIRECT、REJECT、または利用できないプロキシグループに一致している可能性があります。ログに表示されるルール名、ポリシー名、対象ドメインが、設定順序を確認する主な手がかりです。
初回テストでは、Wi-Fiとモバイルデータ通信を分けて試してください。Wi-Fiでは使えるのにモバイルデータ通信で失敗する場合は、システムが対象クライアントのモバイルデータ通信を許可しているか、サブスクリプション内のサーバーアドレスに現在のネットワークから到達できるかを確認します。ネットワークを切り替えた後も接続中のままリクエストが止まる場合は、いったん切断して再接続し、ネットワーク拡張に経路を再構築させてください。
サブスクリプションの更新と複数設定の管理
リモートサブスクリプションは、一度読み込めば永久に変わらないローカルファイルではありません。サーバー側でノード、プロキシグループ、ルールが変更されることがあり、クライアントは再ダウンロードして更新を取得する必要があります。設定ページには通常、手動更新機能があり、一定間隔での自動更新に対応している場合もあります。更新前にサブスクリプションの有効期限を確認し、更新後は現在のポリシーで選択中のノードがまだ存在するか確認してください。
自動更新の間隔を短くしすぎないでください。頻繁なリクエストでノードの品質が改善するわけではなく、サーバー側のアクセス頻度制限にかかる可能性があります。普段はクライアントの初期間隔を使い、サービス提供元から設定変更の通知があったときに手動更新を実行するとよいでしょう。更新に失敗した場合は、まず設定の詳細画面でHTTPステータスやエラー内容を確認し、短時間に何度も更新しないでください。
複数のProfileを管理する場合は、「日常用サブスクリプション」「ルールのテスト」「ローカル直結の検証」のように、用途と取得元が分かる名前を付けることをおすすめします。同じサブスクリプションを重複して読み込むと、似た設定が複数でき、更新やポリシー選択で混乱しやすくなります。重複項目を使わなくなったことを確認してから削除し、接続を確認済みの設定を1つ、切り戻し用に残してください。
- リモートサブスクリプション:ノードとルールの継続的な更新に適しています。
- ローカルYAML:固定ルールのテストに適していますが、サーバー側の変更は自動同期されません。
- 一時テスト設定:フィールドの確認が終わったら、誤って選択しないようアーカイブまたは削除します。
- 設定名:用途を明記し、「新しい設定」「設定2」のように区別しにくい名前は避けます。
サブスクリプションの更新では通常、リモート設定に含まれるサーバー側のフィールドが上書きされます。クライアントが上書きやOverrideに対応している場合は、カスタムルールを明確な上書きレイヤーに置き、適用順序を確認してください。サブスクリプションのダウンロード後にキャッシュ内容を直接編集すると、次回更新時に失われる可能性があります。複雑なYAMLを長期的に管理する場合は、当サイトのYAMLマニュアルでフィールドとルールの順序を確認してください。
よくあるトラブルの切り分け:症状から原因箇所を確認
App Storeでクライアントが見つからない
まずアプリ名とスペルを完全に確認し、現在のAppleアカウントのストア地域、端末のシステムバージョン、アプリの対応範囲を確認します。検索で見つからないことは、サブスクリプションに問題があることを意味しません。この時点ではまだ設定の読み込み段階に入っていないためです。アプリが現在の地域で配信停止になっている場合、購入履歴からでもインストール可能なバージョンを再取得できないことがあります。ダウンロードセンターに戻り、現在利用できる方法を確認してください。
サブスクリプションを貼り付けると形式エラーになる
コピーした内容が完全なHTTPS URLか、先頭や末尾に空白、改行、説明文が混ざっていないか確認します。ブラウザで開いた際にログインページ、エラーページ、通常のウェブページHTMLが返る場合、クライアントはYAMLとして解析できません。Clash互換サブスクリプションを選んでいるか、他のプロトコル用クライアント専用の生URLではないかも確認してください。
設定を読み込んだのにノードがない
サブスクリプションが空の内容を返している、アカウントの状態に問題がある、または設定が主に proxy-providers を使っているものの、現在のクライアントカーネルが対応プロバイダーを読み込めていない可能性があります。ログにプロバイダーのダウンロード失敗、未対応フィールド、認証エラーがないか確認してください。同じサブスクリプションでもクライアントによって結果が異なる場合は、カーネルの種類とバージョンを比較し、システムVPNの削除を繰り返さないでください。
接続をタップするとすぐ切断される
まずVPN権限が実際に追加されているか確認し、起動ログで設定解析、ポート初期化、DNS、ネットワーク拡張のエラーを確認します。デバイス管理による制限、他のVPNの稼働、クライアントが対応していないフィールドを含む設定が、拡張機能の起動失敗を引き起こす場合があります。接続確認済みの基本設定へ一時的に切り替え、アプリの権限問題と現在のProfileの問題を切り分けてください。
VPNは接続済みなのにウェブページが開かない
プロキシグループで利用可能なノードが選択されているか、DNSが応答を返しているか、ルールが対象リクエストを正しいポリシーへ送っているかを順番に確認します。別のノードへ切り替えて再テストし、ログにタイムアウトがないか確認してください。すべてのリクエストにログがない場合は、現在有効なVPNが本当に対象クライアントのものか確認します。リクエストの記録はあるもののすべてタイムアウトする場合は、ノードへの到達性とネットワーク環境を重点的に確認します。
画面ロック後に接続が切れる、または自動復帰しない
iOSはシステムリソース、ネットワーク切り替え、クライアントの実装に応じてネットワーク拡張を管理します。クライアントにオンデマンド接続またはOn Demand機能がある場合は、ルールを理解したうえで有効にし、Wi-Fi、モバイルデータ通信、機内モードの切り替えを個別にテストしてください。オンデマンド接続はノードのフェイルオーバー機能ではありません。ノードが自動で切り替わるかどうかは、url-test、fallbackなどのプロキシグループとクライアントの対応状況によって決まります。
上記の確認が終わると、端末上で4つの状態を検証できるはずです。App Storeのクライアント提供元を確認済みであること、Profileを正常に解析できること、iOSのVPN権限が追加済みであること、実際のリクエストがログ上で想定したルールに一致することです。その後の最適化は、明確な症状に対して1項目ずつ行い、クライアント、サブスクリプション、DNS、ルールを同時に交換しないでください。