プラットフォーム 読了時間:約10分

iOSで使えるClashクライアント:App Storeでの入手方法と設定ファイルの読み込み

iOS対応のClash設定クライアントをApp Storeから入手し、サブスクリプションURL・ファイル・QRコードから設定を読み込んでVPNを有効にする手順を解説します。

まず確認:Clash設定に対応していてもmihomoコアを使うとは限らない

iPhoneのプロキシアプリを選ぶ際は、現在のApp Storeの国または地域で入手できるか、手元の設定形式を読み込めるか、ノードで使うプロトコルに対応しているかの3点を確認しましょう。アプリ名にClashが含まれていたり、「Clashサブスクリプション対応」と記載されていたりしても、mihomoの設定項目をすべて扱えるとは限りません。

Clash YAMLは設定形式、mihomoはプロキシコア、iOSクライアントは設定管理・ノード選択・システムのネットワーク拡張を担います。YAMLを読み込むと独自形式に変換するアプリもあれば、ノードだけを取り込み、元のルールやDNS設定を読み込まないアプリもあります。そのため、「読み込み成功」と「元の設定どおりに動作」は別々に確認する必要があります。

  • フル設定:通常はproxies、proxy-groups、rulesを含み、DNS、ルールプロバイダー、ノードプロバイダーなどが含まれる場合もあります。
  • ノードサブスクリプション:主にサーバー情報を提供します。読み込み後、ポリシーグループやルーティングルールはクライアントまたは別の設定から用意する必要があります。
  • クライアント専用形式:アプリの案内に従って読み込んでください。拡張子を.yamlに変更するだけでは使えません。

App Storeで入手する:地域・開発元・システム要件を確認

ダウンロードページからApp Storeへ

  1. 当サイトのダウンロードセンターを開き、iOSを選択して、掲載中のクライアントと入手方法を確認します。
  2. 該当するApp Storeページを開き、アプリ名、開発元、バージョン履歴、「互換性」に記載された最低iOS要件を確認します。
  3. アプリの説明で対応する設定形式を確認します。Clash YAML、リモートサブスクリプション、ファイルからの読み込みに加え、必要なプロトコルに対応しているかをチェックしましょう。
  4. 価格と購入条件を確認してインストールします。インストール後は一度アプリを開き、設定管理と接続の項目があることを確認してから読み込みを始めましょう。

検索結果には、名前がよく似たアプリが複数表示されることがあります。アイコンだけで判断せず、検索広告の掲載位置を互換性の根拠にしないでください。提供元の確認には、App Storeの開発元情報とアプリの公式ドキュメントが役立ちます。

App Storeで見つからない場合はアカウントの地域を確認

App Storeでの提供状況は、主に購入に使うApple Accountの国または地域によって決まり、プロキシを有効にしても自動で切り替わりません。「設定」→「自分の名前」→「メディアと購入」→「アカウントを表示」→「国または地域」で確認できます。iOSのバージョンによって表示が多少異なる場合があります。地域を変更すると、残高・既存のサブスクリプション・支払い方法に影響することがあります。Appleの案内を確認し、アプリを1つ入手するためだけに安易に変更しないでください。

「このAppは現在、お住まいの国または地域ではご利用いただけません」と表示された場合は、現在の地域で入手でき、設定形式への対応が明記されているクライアントを選びましょう。見知らぬ人とApple Accountを共有したり、出所不明のエンタープライズ証明書やデバイス管理プロファイルを許可したりしないでください。

サブスクリプションURLから読み込む:保存・更新・選択

リモートサブスクリプションは、ノードを定期的に更新したい場合に便利です。まずサービス提供元からClash専用のURLを取得してください。同じアカウントでClash用、汎用ノード用、その他のクライアント用の形式が提供されることもあり、URLの見た目だけでは取得内容を判断できません。

  1. URLをそのままコピー:提供元のコピー機能を使い、ページタイトルや前後の空白、チャットアプリが付け足した句読点までコピーしないようにします。
  2. リモート設定を追加:クライアントの設定管理画面を開き、「追加」「URLから読み込む」「リモート設定」などの項目を探します。アプリごとにメニューは異なります。これらは機能名であり、すべてのクライアントで共通する固定の操作手順ではありません。
  3. 初回ダウンロードを実行:見分けやすい名前を付けて保存し、手動で一度更新します。ダウンロードと解析が終わるまで待ちましょう。
  4. 読み込み結果を確認:ノードやポリシーグループが表示されているか確認します。ルール数が表示されるアプリでは、ルールも読み込まれているかチェックしましょう。
  5. 現在の設定に指定:複数の設定を保存できるアプリでも、同時に有効にできるのは1つだけの場合があります。保存後、読み込んだ設定を選択してください。

更新に失敗したら、まずエラーの種類を確認します。401や403はアクセス権限またはサーバー側の制限、404はURLの有効性に関係していることがよくあります。解析エラーの場合は、取得した内容とクライアントの対応範囲を確認してください。ブラウザーでURLを開けても、YAMLが返されるとは限りません。ログイン画面やエラーメッセージが表示される場合もあります。

ファイルとQRコードから読み込む:内容を確認してから操作

「ファイル」アプリからYAMLを読み込む

ローカルファイルは、既存の設定を移行するときやサブスクリプションを一時的に取得できないときに便利です。まず.yamlまたは.ymlファイルを「ファイル」アプリの「このiPhone内」またはiCloud Driveに保存し、クライアントの「ファイルから読み込む」から選択します。共有拡張機能に対応している場合は、「ファイル」アプリでファイルを長押しし、「共有」から該当のクライアントに渡す方法もあります。

  • ファイルはUTF-8のプレーンテキストにしてください。リッチテキスト文書、Webページのアーカイブ、拡張子だけを変更したPDFは使用できません。
  • YAMLのインデントにはスペースを使い、エディターでタブに置き換えられないようにしてください。引用符やコロンも元の形式のまま保ちます。
  • 設定内の外部リソースURLを確認してください。メインファイルがローカルにあっても、proxy-providersやrule-providersがオフラインで使えるとは限りません。
  • 読み込み時にアプリ内のコピーが作成されるのが一般的です。「ファイル」アプリ内の元ファイルを変更しても自動同期されるとは限らないため、再読み込みが必要になる場合があります。

以下は構造を確認するための断片であり、そのまま接続に使える完全な設定ではありません。「手動選択」というポリシーグループを参照しているため、実際に使うには対応するポリシーグループと利用可能なノードが必要です。

mode: rule
rules:
  - DOMAIN-SUFFIX,apple.com,DIRECT
  - MATCH,手動選択

読み込み後にポリシーが見つからないと表示された場合は、rulesが参照する名前とproxy-groupsの名前が完全に一致しているか確認してください。デスクトップ用の設定をiPhoneに移す際は、ノードだけでなく、ローカルファイルのパス、待ち受けポート、コア固有の設定項目も確認する必要があります。

QRコードの中身はノード1つだけの場合も

QRコードはテキストを格納する手段であり、統一されたサブスクリプション形式ではありません。HTTPSのサブスクリプションURL、ss://やtrojan://などの単一ノード用リンク、アプリ専用の読み込み指示が含まれる場合があります。読み込み後にノードが1つだけ表示されても、QRコードがそのノードだけを格納していた可能性があります。元のルールまで読み込まれたことを意味するわけではありません。

  1. クライアント内のQRコード読み取り機能を開き、初回は必要に応じてカメラへのアクセスを許可します。
  2. QRコードが同じiPhone上にある場合は、クライアントが写真ライブラリからの読み取りに対応しているか確認します。対応していなければ、提供元から元のテキストURLを入手してください。
  3. 読み取り後のプレビューを確認します。リモート設定のURLなのか、ノード情報なのか、不明な指示なのかを見極めてから保存しましょう。
  4. 読み込み後は、設定一覧とポリシーグループを確認してください。「スキャン成功」という表示だけで完了と判断しないようにしましょう。

QRコード画像にも認証情報が含まれる場合があります。公開の読み取りサービスにアップロードしないでください。カメラへのアクセスを拒否した場合は、システム設定で該当アプリを開き、権限を確認します。iOS 18では通常、「設定」→「アプリ」→「アプリ名」から確認できます。

VPNを有効にする:システムのトンネルを許可して出口を選択

設定の準備ができたら、まずプロキシのポリシーグループで利用可能なノードを選び、クライアントの接続スイッチをオンにします。初回接続時には、VPN構成の追加を許可するかシステムの確認画面が表示されるのが一般的です。インストールしたクライアントからの要求だと確認したうえで、案内に従って許可し、システム認証を完了します。この許可により、アプリはシステムのネットワーク拡張を通じて通信を処理できるようになりますが、すべてのリクエストが必ずリモートノードを経由するわけではありません。

  1. システム構成を確認:「設定」→「一般」→「VPNとデバイス管理」→「VPN」で、該当する構成と接続状態を確認します。必要なのはVPNの管理だけで、別途デバイス管理プロファイルをインストールする必要はありません。
  2. プロキシモードを確認:普段はルールモードを使いましょう。クライアントにグローバルモードがある場合は、診断時に短時間だけ使用し、実際の出口ノードを指定します。
  3. ポリシーグループの選択を確認:ルールに一致したグループでDIRECTが選択されていると、システム上でVPN接続中と表示されていても通信は直接接続されます。
  4. まず接続をテスト:最初はデフォルト設定で一度接続し、その後でDNS、オンデマンド接続などの高度な機能を調整しましょう。複数の設定を同時に変更するのは避けてください。

デスクトップでよく見る「システムプロキシ」や「TUN」のスイッチを、そのままiOSに当てはめることはできません。iOSクライアントは通常、Network ExtensionのPacket Tunnelで通信を処理します。「TUN」と表示されるかどうかはアプリの設計によります。デスクトップの手順を再現するために、Wi-FiのHTTPプロキシ欄へ127.0.0.1:7890を入力しないでください。これはiPhone自身を指すアドレスで、対応する待ち受けサービスをアプリが実際に提供している場合にのみ意味があります。

接続の確認とトラブルシューティング

同じリクエストでルールと出口を確認

普段プロキシ経由でアクセスするHTTPSページを開き、同時にクライアントの接続画面またはログを確認します。ルール、ポリシーグループ、出口ノードが表示されたら、3項目をまとめて確認してください。ドメイン名が表示されても正常な応答がなければ、DNS、ハンドシェイク、リモート接続経路に問題が残っている可能性があります。出口IP確認サービスを使う場合も、そのリクエスト自体がルールによって直接接続に振り分けられていないか確認しましょう。

遅延テストの結果は、指定したテスト先がその時点でどの程度応答したかを示すだけです。たとえば画面に120 msと表示されても、ダウンロード速度を表すわけではなく、動画やゲームの接続先に到達できる保証にもなりません。この数値は表示例であり、当サイトでの実測値ではありません。実際の確認ではページを一度開き、Wi-Fiとモバイルデータの両方でテストしてください。

症状 まず確認する項目 次に行う操作
サブスクリプションは保存できるが、ノードが表示されない 取得した内容と読み込み形式 HTMLのログインページではないことを確認し、ノードサブスクリプションをフル設定として読み込んでいないか確認します。
不明な設定項目または未対応プロトコルが表示される クライアントの設定形式とコアの互換性 そのアプリに対応したサブスクリプションを入手してください。エラーの設定項目を削除してそのまま使い続けるのは避けましょう。
VPNは接続中なのにWebページが開かない 現在の設定、ノード、DNSログ 利用可能と確認できている別のノードに切り替え、同じページに再度アクセスして、名前解決エラーが発生するか確認します。
一部のWebサイトだけプロキシ経由になる ルールの一致状況とポリシーグループの選択 意図した振り分けか確認します。グローバルモードは比較・診断のために使い、ルールの修正の代わりにはしないでください。
有効にしてもすぐ別の接続に切り替わる ほかのプロキシアプリやローカルVPNアプリ ほかのアプリの接続と自動接続を一時的にオフにして、使用中のクライアントだけでテストします。
モバイルデータ通信でのみ更新や接続ができない モバイルデータ通信の権限とネットワークの違い 「設定」→「モバイル通信」でアプリの通信許可を確認し、Wi-Fiでの結果と比較します。

設定の更新と記録の保護

ノードが使えなくなった場合は、まずリモート設定を更新し、ポリシーグループで有効なノードが選択されているか確認します。自動更新に対応しているアプリでは、まず1日1回程度から設定し、間隔はサービス提供元の指定に合わせてください。毎分更新する必要はありません。ルールセットとノードサブスクリプションの更新は別々の操作の場合があるため、それぞれ結果を確認しましょう。

問題を報告する際は、iOSとクライアントのバージョン、設定の種類、Wi-Fiかモバイルデータ通信か、発生時刻と操作手順を記録してください。ログを共有する前に、サブスクリプションURL、ノードのパスワード、トークンを伏せましょう。「アプリの入手 → 設定の読み込み → 設定の選択 → VPNの許可 → リクエストの確認」の順に一つずつ確認すると、何度も再インストールするより原因を特定しやすくなります。詳しい読み込み方法とトラブルシューティングは入門ガイドを、設定の仕組みはドキュメントをご覧ください。

Clash をダウンロード