サブスクリプションリンクはクライアントのインストールパッケージでも、特定の固定回線でもありません。取り消し可能な設定用の鍵に近いものです。クライアントがリンクにアクセスすると、サーバーが現在公開しているノード、プロトコルパラメータ、グループ情報を取得し、選択可能な回線として表示します。この仕組みを理解すれば、インポート失敗、更新が反映されない問題、リンク漏えいを同じ流れで確認できます。
利用時のトラブルは、いくつかの概念を混同していることから生じがちです。サブスクリプションリンクをアカウント情報だと思ったり、ノードのアドレスをサブスクリプションリンクだと考えたり、インポートに成功すればすべての通信が想定どおり転送されると思ったりするケースがあります。実際には、設定の取得、解析、ノード選択、接続確立、ルール分岐、DNS解析は、連続していても互いに独立した工程です。
サブスクリプションリンクには何が含まれるのか
サーバーが返す内容は、クライアントの形式によって異なります。エンコードされたテキストの場合もあれば、構造化された設定の場合もあり、クライアントの種類に応じて適切な形式を動的に生成するサービスもあります。エンコードは内容の表現方法を変えるだけで、暗号化を意味するものではありません。また、リンク自体のアクセス権限が自動的に消えるわけでもありません。
利用可能なサブスクリプションには通常、ノード名、サーバーの接続先、ポート、プロトコル、認証パラメータ、通信方式、TLS関連の設定が記載されています。クライアントは読み込んだ内容をノード一覧やプロキシグループとして表示します。リンクには、サブスクリプションの権限を識別するトークンが含まれる場合もあります。このトークンが取り消されると、古いリンクから新しい設定を取得できなくなります。
| 対象 | 役割 | よくある誤解 | 正しい扱い |
|---|---|---|---|
| サブスクリプションリンク | サーバーから設定一式を取得する | 通常のWebページのURLだと思う | 認証情報として管理し、公開転送しない |
| 単一ノードのリンク | 1つの接続先を示す | すべての回線が自動で同期されると思う | 一覧が必要な場合はサブスクリプションをインポートする |
| クライアント設定 | ノード、ルール、ローカル設定を保存する | サブスクリプションを削除すればリモート権限も取り消されると思う | 漏えい時はサーバー側でもリセットする |
| プロトコル | クライアントと接続先の通信方法を定める | プロトコル名だけで回線品質を判断する | ネットワーク環境と経路を合わせて判断する |
| ルール分岐 | リクエストごとの経路を決める | ルールのマッチング問題をノード切断だと思う | モード、ルール、最終出口を確認する |
Shadowsocks、VMess、Trojan、VLESS、Hysteria2、TUICはいずれも、クライアントが認識する可能性のあるプロトコルまたは通信方式です。ただし、サブスクリプションリンク自体がこれらのプロトコルというわけではありません。リンクは設定を届け、プロトコルは実際の接続を確立します。あるクライアントでサブスクリプションを開けても、そこに含まれるすべてのプロトコル項目に対応しているとは限りません。非対応の場合、ノードが表示されなかったり無効と表示されたり、接続時に初めてエラーが出たりします。
取得先と提供元の確認方法
信頼できる入口は、サービスの管理パネルにあるサブスクリプションまたはクライアントのダウンロード欄です。ログイン後にシステムが生成したリンクをコピーするか、管理パネルのインポート機能を利用してください。検索結果、転送メッセージ、いわゆる設定集から同名のリンクを探すのは避けましょう。ノード名が同じに見えても、元のサービスが提供した設定だとは限りません。
コピーする際はURL全体を保持してください。チャットアプリによる長文の折りたたみ、ブラウザによるパラメータの自動削除、コピー前後の空白によって、トークンが欠けることがあります。管理パネルに汎用サブスクリプションとクライアント別の形式が用意されている場合は、現在のクライアントに対応する形式を優先し、第三者の変換サイトへの依存を避けてください。
- ✅ ログイン済みのサービス管理パネルから、サブスクリプションまたはクライアントのダウンロード欄を開く。
- ✅ ドメインが現在利用しているサービスと一致することを確認してから、リンク全体をコピーする。
- ✅ クライアントが直接認識できるサブスクリプション形式を優先する。
- ✅ インポート後、ノード名、プロトコル、グループが正しく表示されることを確認する。
- ❌ オンラインのデコード、変換、速度測定ページにリンクを貼り付けない。
- ❌ 完全なリンクやQRコードが写ったページをスクリーンショットで保存しない。
各プラットフォームでクライアントにインポートする方法
クライアントによって画面は異なりますが、インポートの流れは共通する確認項目に分けられます。対応形式の確認、サブスクリプション登録、手動更新、ノード選択、システムプロキシまたはトンネルの有効化、出口の確認です。初回更新を省略しないでください。クライアントによっては、新しいサブスクリプションを作成した時点ではURLだけを保存し、内容をすぐに取得しないことがあります。
Windows と macOS
- クライアントのサブスクリプション、設定、または設定ファイルの管理画面を開きます。
- URLから追加を選び、管理パネルからコピーした完全なリンクを入力欄に貼り付けます。
- 見分けやすいローカル名を付け、名前にトークンを書き込まないでください。
- 保存後に更新を実行し、一覧に想定した回線とプロトコルが表示されることを確認します。
- ノードと動作モードを選択し、システムプロキシまたはシステムトンネルを有効にします。
- IP確認ページを開き、DNSの結果を確認して、通信経路が分岐の想定どおりか確かめます。
デスクトップクライアントには通常、システムプロキシと仮想NICモードの両方が用意されています。システムプロキシは主に、システムのプロキシ設定に従うアプリを制御します。仮想NICモードはより多くの通信を対象にできますが、セキュリティソフト、ほかのネットワークツール、既存のルーティングと競合しやすくなります。サブスクリプションをインポートしてもアクセスできない場合は、まずクライアントがどの方式で通信を制御しているか確認してください。
Android と iOS
- サービス管理パネルでサブスクリプションリンクをコピーするか、信頼できるデバイス間で直接転送します。
- クライアントの設定管理画面を開き、クリップボード、URL、またはQRコードからのインポートを選びます。
- クライアントによるシステムVPN設定の作成を許可し、現在有効なのが新しくインポートした設定であることを確認します。
- サブスクリプションを手動で更新し、使用中のバージョンがプロトコルに対応しているか確認します。
- 接続後、プロキシが必要な接続先と直接接続すべき接続先をそれぞれテストし、分岐結果を確認します。
モバイルプラットフォームでは通常、システムが提供するVPNインターフェースを通じて通信を制御します。省電力設定、ネットワーク切り替え、バックグラウンド制限によってクライアントが停止することがあるため、「ノードは存在するのに後から切断される」場合でも、サブスクリプションが無効とは限りません。まずクライアントでトンネルの状態とエラーログを確認し、更新するか判断してください。
Linux とルーター機器
LinuxクライアントにはGUIが用意されている場合もあれば、設定ファイルを直接読み込む場合もあります。インポート前に、コアプログラムがサブスクリプション内のプロトコルと通信項目に対応しているか確認してください。ルーター機器では、ストレージ容量、カーネルの機能、DNS転送、LAN内の分岐も考慮する必要があります。デスクトップで使える完全な設定を、ルーター環境にそのまま入れられるとは限りません。
ルーター機器でサブスクリプションを更新した後は、新しいファイルをダウンロードしただけでなく、ルールが再読み込みされていることを確認してください。古いプロセスが動作したままだと、画面には新しいノードが表示されても、実際の接続では古い設定が使われ続けることがあります。その場合は、機器の管理画面にある通常の手順で設定を適用するかサービスを再読み込みし、同じリンクを何度もインポートしないでください。
適切な更新頻度とは
サブスクリプションに一律の固定更新周期はありません。ノード名、接続先、認証パラメータ、グループに変更があった場合、サーバーは新しい設定を公開します。クライアントが再取得して初めて、その変更を確認できます。一方、接続が安定していてサーバー側に変更がなければ、頻繁に更新しても回線が自動的に速くなるわけではありません。
実用的なのは、出来事に応じて更新する方法です。初回インポート後、管理パネルで回線の変更が公開された後、複数のノードで同時に認証または解析エラーが出た時、端末を変更した時やクライアントを再インストールした後に、再インポートして更新します。1つのノードに一時的に接続できない場合は、同じサブスクリプション内の別の回線へ切り替え、サブスクリプション全体の期限切れと誤認しないようにしてください。
クライアントの「自動更新」は通常、一定間隔でリモートURLへアクセスするだけです。非対応プロトコルを自動修正したり、ユーザーに代わって分岐ルールを決めたりする機能ではありません。クライアントが長時間スリープ状態にあったり、バックグラウンド動作を制限されていたり、システム時刻がずれていたりすると、自動更新が実行されないことがあります。その場合は接続のオン・オフを繰り返すより、手動更新して更新時刻を確認するほうが効果的です。
更新失敗の原因を特定する方法
更新失敗は、「サブスクリプションを取得できない」場合と「取得できたが解析に失敗した」場合に分けて考えます。前者は、リンクが不完全、トークンが無効、ドメイン解析に問題がある、現在のネットワークからサブスクリプションの入口にアクセスできない、といった原因が一般的です。後者は、クライアント形式、プロトコル項目、設定構文、クライアントのバージョンに関係することが多いです。
- 元のリンクを確認します。サービス管理パネルに戻って再度コピーし、文字を手入力で補ったり、チャット履歴にある古いリンクを使ったりしないでください。
- サブスクリプションの入口を確認します。クライアントのエラーがネットワーク要求の失敗、認証失敗、内容形式の認識不能のどれに当たるか確認します。
- クライアントの互換性を確認します。現在のコアが、サブスクリプションに含まれるShadowsocks、VMess、Trojan、VLESS、Hysteria2、TUICの設定に対応しているか確認してください。
- キャッシュを消去して再試行します。まずローカルに残った無効なサブスクリプション登録を削除し、管理パネルから再度追加します。サブスクリプション名を変更するだけでは権限は更新されません。
- ネットワーク要因を減らします。ほかのプロキシ設定を一時停止し、古いシステムプロキシ、仮想NIC、DNSツールが経路を奪わないようにします。
- 利用可能な設定を残します。確認中に正常なノードをすべて先に削除しないでください。管理パネルへアクセスするための接続手段まで失う可能性があります。
サブスクリプションは更新できるのに一部のノードが表示されない場合は、形式とプロトコルの対応状況を重点的に確認します。古いクライアントは未知の項目を無視することがあります。また、クライアントごとにプロキシグループ、通信層、証明書設定の名称が異なる場合もあります。ノード名が表示されるかどうかだけで判断せず、ログに解析のスキップや非対応項目が出ていないか確認してください。
すべてのノードが表示されるのに接続できない場合、問題はサブスクリプションのダウンロード段階を離れています。次に、システム時刻、プロトコルのハンドシェイク、現在のネットワークにおけるUDPの条件、TLSドメイン、プロキシモード、ローカルファイアウォールを確認してください。Hysteria2とTUICはUDP経路の影響を受けやすく、Trojanと一部のVLESS設定では正しいTLSパラメータが必要になることがあります。エラーを回避するためにサブスクリプション項目を不用意に削除しないでください。見かけ上はインポートできても、実際の接続を確立できなくなる可能性があります。
回線種別、プロトコル、サブスクリプションの関係
IEPL専線、中継、直接接続はネットワーク経路を示すもので、サブスクリプション形式やプロトコル名ではありません。直接接続は通常、ローカルネットワークからリモートの接続先へ直接アクセスします。中継では、まず中間の接続先に入り、そこから対象地域へ転送します。IEPL専線は、特定の国際伝送経路を利用することを示します。クライアントはサブスクリプションから接続先とプロトコルパラメータを取得して初めて、これらの回線を利用できます。
したがって、サブスクリプション形式を変えても直接接続が専線になるわけではなく、プロトコルを変えてもサーバー側の物理経路が自動的に変わるわけではありません。プロトコルは接続のカプセル化、認証、伝送方法を決め、回線種別はデータが通過するネットワーク区間を決めます。夜間の変動を調べるときは、経路品質とクライアントのプロトコルを分けて確認してください。
ルール分岐は別の層にあります。ルールによって、ローカルサービスを直接接続にしたり、海外サイトを指定ノード経由にしたり、ドメイン、IP、アプリごとに出口を決めたりできます。ルールが誤判定すると、ノード自体が正常でもアクセス結果が想定と異なることがあります。確認時は、対象のリクエストがどのルールに一致したかを確認し、対象がノードを経由していないというだけでサブスクリプションを更新しないでください。
DNS漏えいと分岐の確認
サブスクリプションのインポートが完了しても、DNSはローカルネットワークで処理される場合があります。その場合、接続自体は確立しているのに、ドメイン問い合わせだけ別の経路を通ることがあります。DNS漏えいの確認で重要なのは、解析要求を誰が処理し、どこから送信しているかであり、Webページに表示される出口IPだけではありません。
クライアントがシステムプロキシを使う場合、一部のアプリがシステムDNSを使い続けることがあります。仮想NICモードでは、通常より完全にDNS解析を制御できますが、DNS設定とルーティングルールが正しいことが前提です。ブラウザ独自の暗号化DNS、システムキャッシュ、LANゲートウェイも結果に影響します。
- ✅ 接続前後で出口IPとDNSの解析元をそれぞれ確認する。
- ✅ 現在のモードに合ったDNS設定がクライアントで有効になっているか確認する。
- ✅ 対象ドメインがプロキシルールと直接接続ルールのどちらに一致したか確認する。
- ✅ ルールを変更した後、ローカルDNSキャッシュを消去して再テストする。
- ❌ 出口IPが変わっただけで、すべてのDNS要求が制御されていると判断しない。
- ❌ 互いに競合する複数のシステムプロキシやトンネル設定を同時に有効にしない。
特定のWebサイトが誤った回線を通る場合は、まず一時的にグローバルプロキシモードへ切り替えて比較できます。グローバルモードでは正常でルールモードでは異常なら、通常はノードとプロトコルは動作しており、問題はルールのマッチングまたはDNS解析にあります。比較後は必要なモードへ戻してルールを修正し、グローバルモードで設定ミスを隠したままにしないでください。
リンク漏えい後にすぐ行うこと
リンクが公開された後、ローカルのクライアントから削除するだけでは不十分です。削除操作で消えるのは現在の端末上の記録だけで、コピー済みのリンクを使って設定を要求する人を止めることはできません。正しい対応は、サービス管理パネルから古いサブスクリプションを取り消し、リンクをリセットするかアクセス用トークンを再生成して、古いURLを無効にすることです。
- これ以上拡散しない。公開メッセージ、共有ドキュメント、スクリーンショットからリンクを削除します。ただし、助けを求めるために別のサービスへ再度貼り付けないでください。
- リモート権限を取り消す。サービス管理パネルでサブスクリプションのリセットまたはトークンの更新を実行し、古いリンクが有効な設定を返さなくなったことを確認します。
- ローカルの古い記録を削除する。各クライアントで元のサブスクリプションを削除し、自動更新による古いURLへのアクセスを止めます。
- 新しいリンクをインポートする。管理パネルから再度コピーし、設定を更新してノードとプロトコルが完全に表示されることを確認します。
- ほかの端末を確認する。古いサブスクリプションを使っているすべての端末で置き換えが必要です。現在の端末だけを処理してはいけません。
- 分岐とDNSを再確認する。再インポートによってクライアントの初期設定に戻ることがあるため、ルール、システムプロキシ、解析経路を改めて確認します。
漏えいしたのが単一ノードの設定だけであっても、サービス管理パネルが提供する方法で関連する認証情報を更新してください。誰にも使われていないと決めつけたり、ノード名の変更だけで権限の取り消しを判断したりしないでください。ノード名の変更は表示に影響するだけで、古い設定を使い続けられるかどうかを決めるのは認証パラメータが更新されたかどうかです。