始める前にクライアント、サブスクリプション、回線の違いを理解する
Macで初めて国際ネットワークを設定するとき、特に混同しやすいのがクライアント、サブスクリプションURL、回線です。クライアントはmacOS上で動作する接続ツールで、設定の読み込み、トンネルの確立、ルールに該当する通信の制御を担います。サブスクリプションURLは適切に管理すべきアドレスで、クライアントに回線設定を提供します。回線は、実際に通信を中継する接続先と出口です。
3つはどれも欠かせません。クライアントをインストールしただけで有効な設定を追加していなければ、利用可能な回線は自動で取得されません。サブスクリプションURLをコピーしただけで、対応するクライアントがなければ接続は確立できません。回線が一覧に表示されていても、システム権限が許可されていなければ、通信は従来のローカルネットワークを経由し続ける可能性があります。
プロキシプロトコルと従来のシステムVPN設定の違い
macOSのシステム設定では標準的なVPN構成を管理できますが、Shadowsocks、VMess、Trojan、VLESS、Hysteria2、TUICなどのプロトコルには、通常それぞれに対応したサードパーティ製クライアントが必要です。こうしたクライアントは、macOSのネットワーク拡張機能を利用してローカルプロキシや仮想ネットワークインターフェースを作成し、ルールに応じてどの通信を回線へ送るかを判断します。
Shadowsocksは暗号化プロキシに重点を置き、設定構造も比較的シンプルです。VMessとVLESSは複数の通信方式に対応するクライアントでよく使われ、VLESSは通常、外側の安全な通信方式によって暗号化を行います。Trojanは一般にTLSと組み合わせて利用します。Hysteria2とTUICはUDPベースの通信に適しており、ネットワークの揺らぎがある環境では異なる特性を示すことがありますが、現在のネットワークでUDPが制限されていると接続に失敗する場合があります。プロトコル名だけで速度が決まるわけではなく、サーバー負荷、接続品質、経路、ローカルネットワークが結果に影響します。
macOSクライアントをインストールし、入手元を確認する
クライアントを選ぶときは、画面のシンプルさだけでなく、サブスクリプションで使われているプロトコルを読み込めるかを最初に確認してください。同じサブスクリプションに複数のノード形式が含まれる場合もあり、対応プロトコルが不足していると、追加後にノードが表示されない、設定を認識できない、接続ボタンを押すとすぐ切断されるといった問題が起こります。
インストールパッケージは、サービスのページまたはクライアントプロジェクトが案内する正式なダウンロード先から入手してください。ダウンロード後にインストーラーを開き、アプリを「アプリケーション」フォルダへ移してから、そのフォルダから起動します。ダウンロードフォルダやディスクイメージから長期間直接実行すると、アプリの更新、権限の保存、自動起動で問題が起きる可能性があります。
macOSに起動をブロックされた場合の対処法
システムが開発元を確認できない、またはアプリの実行を阻止したと表示した場合は、異なる入手元のインストーラーを何度もダウンロードしないでください。「システム設定」を開き、「プライバシーとセキュリティ」に進みます。ページ下部に、先ほどの起動操作に対応する通知が表示されているか確認してください。アプリ名と入手元に問題がないことを確認したうえで、システムが提供する許可方法を使って続行します。
該当する通知が見つからない場合は、インストーラーを終了し、「アプリケーション」フォルダからもう一度起動してから、プライバシー設定を再確認してください。組織が管理するMacでは、管理ポリシーによって制限されていることがあります。その場合、一般ユーザーが関連設定を変更することはできないため、デバイス管理者に許可されているネットワークツールの範囲を確認してもらう必要があります。
初回起動時に求められるシステム権限
クライアントが初めて接続を確立するとき、macOSからVPN構成、ネットワーク拡張、フィルタの追加を求められることがあります。表示内容はクライアントの実装によって異なりますが、目的はアプリがシステムレベルのネットワーク経路を作成できるようにすることです。許可すると、Macのローカル認証方式で操作の確認を求められる場合があります。
システムプロキシモードだけで動作するクライアントもあり、その場合は主にシステムプロキシ設定に従うアプリが対象になります。一方、仮想ネットワークインターフェースモードを備え、システムプロキシを参照しないプログラムにも対応できるクライアントもあります。両者に単純な優劣があるわけではありません。普段のブラウジングではまずルールプロキシモードを使い、コマンドラインツールや独立したアップデーター、特定のデスクトップアプリまで対象にしたい場合に、仮想ネットワークインターフェースモードを検討するとよいでしょう。
サブスクリプションURLを追加して初回接続を完了する
インストールと権限設定が完了したら、次にサブスクリプションをクライアントへ追加します。一般的な入口には「サブスクリプション」「設定」「リモート設定」「URLから追加」などがあります。完全なURLを対応する入力欄に貼り付けて保存し、更新を実行してください。正常であれば、クライアントには地域、回線名、プロトコルの種類などが表示され、認識できない元のテキストが1行残るだけにはなりません。
- ユーザーパネルでサブスクリプションURLをコピーし、文字列の一部だけを手動で選択しないようにします。
- クライアントのサブスクリプション管理画面を開き、URLからリモート設定を追加する項目を選びます。
- URLを貼り付け、識別しやすい名前をサブスクリプションに設定します。
- 更新を実行し、クライアントが回線一覧を解析するまで待ちます。
- 対象地域の回線を選び、システムプロキシまたは仮想ネットワークインターフェースモードを有効にします。
- 出口IPの確認ページを開き、接続結果が変わったか確認します。
サブスクリプションURLは、アカウントへのアクセス情報の一部として扱ってください。第三者がURLを入手すると、そこに含まれるノード情報を読み取れる可能性があります。URLを公開スクリーンショット、共有クリップボード、管理されていない同期ツールに保存したことがある場合は、クライアントから古いサブスクリプションを削除するだけでなく、サービスの管理画面で認証情報を更新してください。
サブスクリプション追加後にノードが表示されない
まず、URLがブラウザやチャットツールによって途中で切れていないか確認します。特に先頭のプロトコル、クエリパラメーター、末尾の文字が完全かを確認してください。次に、クライアントがサブスクリプションの返却形式に対応しているかを確認します。単一の共有URLには対応していても、リモートサブスクリプションには対応していないクライアントがあります。また、正しい形式で解析するために、先にサブスクリプションの種類を選ぶ必要があるクライアントもあります。
クライアントが現在、サブスクリプションURLへ直接接続できるかも確認してください。更新リクエスト自体がネットワーク環境の影響を受けている場合は、一時的に別の利用可能なネットワークへ切り替えて更新できます。ただし、サブスクリプションの内容をオンライン変換サイトへアップロードしないでください。オンライン変換では機密設定が別のサービスを経由するため、不要な公開範囲が広がります。
ノードが多いときの選び方
まず、利用するサービスの所在地に合わせておおまかな地域を選び、その後に回線タイプを比較します。日本向けのコンテンツへアクセスする場合は、まず日本の出口を試してください。北米向けに展開されているAIツールを利用する場合は、サービス地域に近い出口を選ぶとよいでしょう。地理的に近いほど経路が短くなる傾向はありますが、事業者間接続や国際経路は必ずしも直線的ではありません。最終的には実際の接続安定性を基準に判断してください。
| 回線タイプ | 経路の特徴 | 適した用途 | 確認しておきたい点 |
|---|---|---|---|
| IEPL専用線 | サービス側が専用の通信基盤で接続拠点と海外リソースを結ぶ | 国際経路の安定性を重視するアクセス | 「専用線」は通常、サービス側の経路を示すものであり、端末から接続拠点までの全区間が専用になるとは限りません |
| 中継回線 | 近い接続拠点へつないだ後、目的の出口へ転送する | ローカルネットワークから海外ノードへの直結経路が適していない場合 | 接続拠点と中継経路の両方が利用感に影響します |
| 直結回線 | クライアントが海外サーバーへ直接接続する | ローカルネットワークから目的地域への経路が良好な場合 | 国際経路の変化がより大きく表れる可能性があります |
VPNが正しく機能しているか確認する
クライアントに「接続済み」と表示されても、すべての対象通信が回線を経由している証明にはなりません。確認時は出口IP、DNS名前解決、アプリ単位のルーティングを同時に確認してください。1項目だけでは、システムプロキシの対象外、DNSがローカルネットワークを経由、ルールのマッチングミスといった問題を見落とす可能性があります。
接続前後の出口IPを比較する
まずクライアントを切断し、信頼できるIP確認ページを開いて、現在の出口地域とネットワーク事業者を記録します。次に目的の回線へ接続してページを更新してください。出口情報が選択した地域に切り替われば、ブラウザの通信はおそらく回線を経由しています。変化がなければ、クライアントがノードとのハンドシェイクだけを完了してシステムプロキシを有効にしていない可能性を確認し、ブラウザに独自のプロキシ設定がないかも確認します。
ブラウザによっては、拡張機能やプライバシー機能の影響が異なります。キャッシュの影響を除外するため、プライベートブラウジングウインドウを新しく開いて再テストしてください。ブラウザでは正常なのに、コマンドラインのダウンロードツールでローカルの出口が表示される場合、現在のシステムプロキシモードをそのツールが参照していない可能性があります。
DNSが想定した経路で名前解決されているか確認する
DNSリークとは、通信がプロキシやトンネルを経由していても、ドメイン名の問い合わせだけがローカルネットワークのリゾルバーへ送られる状態です。これにより地域判定が一致しない、対象ドメインの名前解決に失敗する、ローカルネットワークに問い合わせ先のドメインが見えるといった問題が起きる可能性があります。DNS検査ページを使い、リゾルバーの所属ネットワークが現在の回線設定と一致しているか確認できます。
macOSのターミナルでは、システムが現在認識している名前解決設定も確認できます:
scutil --dns
出力には通常、複数の名前解決範囲が含まれるため、特定のアドレスが表示されたからといってすぐに異常とは判断できません。仮想ネットワークインターフェース、ローカルネットワークのドメイン、システムサービスがそれぞれ別のリゾルバーを保持する場合があります。クライアントのDNS設定、実際の問い合わせ結果、対象アプリがルールどおり動作しているかを組み合わせて判断することが重要です。
グローバルモードを無条件に使わず、ルーティングルールを確認する
ルーティングルールは、どのドメイン、IP、アプリを国際回線へ送り、どれをローカルネットワークに残すかを決めます。適切に振り分ければ不要な迂回を減らせるほか、出口地域の変化によってローカルサービスで追加確認が発生することも避けられます。初心者はまずクライアント付属のルールモードを使い、よく使うサービスが正常に動作することを確認してから、必要な範囲だけ調整するとよいでしょう。
グローバルモードでは、より多くの通信を現在の回線へ送ろうとします。ルールのマッチ漏れを短時間で調べるには役立ちますが、長期的な標準設定に適しているとは限りません。グローバルモードではアクセスできるのにルールモードで失敗する場合、原因は通常、ルールセット、DNSの振り分け、対象ドメインの判定にあります。設定ミスを隠すためにプロトコルを何度も変更しないでください。
macOSでよくある権限・接続トラブルの解決方法
クライアント接続後、すぐに切断される
まず、同じサブスクリプションにある別の回線へ切り替えてください。特定の回線だけが失敗する場合は、ノード設定または現在の経路に問題がある可能性があります。すべての回線で失敗する場合は、システム時刻、ネットワーク権限、プロトコルの互換性を確認します。TLS系の接続では正確なシステム時刻が必要で、時刻のずれにより証明書の検証に失敗することがあります。macOSの日付と時刻は自動設定を推奨します。
Hysteria2またはTUICを使用している場合は、サブスクリプションにある別タイプのプロトコルへ切り替え、現在のネットワークでUDPが制限されているか確認できます。このテストは通信条件の切り分けを目的とするもので、特定のプロトコルがすべてのネットワークで優れていることを示すものではありません。
システムがVPN構成の追加を繰り返し求める
ネットワーク拡張が正しく保存されていない、アプリの場所が変わった、古いバージョンの設定が残っている場合によく起こります。まずクライアントを完全に終了し、macOSのVPNおよびネットワーク拡張に関する設定で重複した項目がないか確認してください。現在のクライアントに明確に対応する古い設定だけを削除し、「アプリケーション」フォルダから再起動して権限を許可します。
クライアントを更新したばかりなら、Macを再起動して古いネットワーク拡張プロセスを完全に終了させることもできます。システムプロキシや仮想ネットワークインターフェースを制御するクライアントを複数同時に実行しないでください。設定が互いに上書きされ、状態が頻繁に切り替わったり、接続成功後にウェブページを開けなくなったりする可能性があります。
接続は正常なのにウェブページが開けない
まずルールモードで別の回線へ一時的に切り替え、これまで直接接続できていたウェブサイトを試してください。すべてのページで失敗する場合は、DNS設定と、仮想ネットワークインターフェースで互換性のない厳格なルーティング設定が有効になっていないか確認します。特定のサイトだけが失敗する場合は、出口地域、ドメインルール、対象サービスの方針が原因かもしれません。VPN全体が機能していないとすぐに判断しないでください。
ブラウザ内で個別に設定したプロキシ拡張機能を無効にし、多重プロキシを避けることもできます。企業ネットワーク、ホテルのネットワーク、公共の接続環境では、先にウェブ認証を完了する必要がある場合があります。認証前にトンネルを起動すると、認証ページが正常に表示されないことがあります。その場合はクライアントを切断し、ネットワーク側の接続手続きを完了してから再接続してください。
スリープ復帰後に接続を再開できない
Macがスリープから復帰すると、ネットワークインターフェースが変わっているのに、クライアントが古い接続状態を保持していることがあります。まずクライアントで切断してから再接続してください。復旧しない場合は、現在のネットワークインターフェースをいったん無効にしてから再び有効にします。異なるネットワークを頻繁に切り替える場合は、クライアントの自動再接続機能を有効にすると便利ですが、制限のあるネットワークで再試行を繰り返さないか確認してください。
メニューバーでは接続中なのに、アプリが回線を経由しない
多くの場合、アプリがシステムプロキシに従うかどうかが関係しています。ブラウザの多くはシステムのネットワーク設定を読み込みますが、一部の開発ツール、ゲームランチャー、独立したランタイムは独自の接続方式を使うことがあります。クライアントの仮想ネットワークインターフェースモードへ切り替えるか、クライアントのドキュメントに従って対象アプリにプロキシ環境変数を設定してください。変更後は出口IPを再確認し、メニューバーのアイコンだけで判断しないようにします。
ルーティング、プロトコル、プラットフォームの違いをどう使い分けるか
macOSのクライアントは、デスクトップシステムでより多くのネットワーク状況に対応できるため、iOS向けクライアントよりも詳細なルール編集、ログ確認、ローカルプロキシ設定を備えていることが一般的です。Windowsの同種クライアントでは異なる仮想インターフェースドライバーを使う場合があります。Androidではアプリ単位の振り分けが一般的で、Linuxではディストリビューションのネットワークスタック、コマンドラインサービス、権限設定への依存度が高くなります。同じサブスクリプションでも、各プラットフォームの追加入口や通信の制御方法が完全に一致するとは限りません。
そのため、別のプラットフォームからMacへ移行するときは、各スイッチを機械的にコピーしないでください。まずはサブスクリプションの追加、回線の選択、ネットワーク拡張の許可、ブラウザの出口確認という最小構成を完成させます。その後、仮想ネットワークインターフェース、自動サブスクリプション更新、ルールの適用範囲、自動接続を少しずつ有効にしてください。重要な設定は一度に1つだけ変更すると、問題が起きたときに戻しやすくなります。
システムプロキシモードを使う場面
- 主な用途がウェブ閲覧や、システムプロキシに従うデスクトップアプリである場合。
- ローカルネットワークへのアクセスを従来どおりの経路で維持したい場合。
- 基本的な接続を確認中で、システムのネットワーク動作を一度に大きく変えたくない場合。
仮想ネットワークインターフェースモードを検討する場面
- 対象アプリがmacOSのシステムプロキシ設定を明確に読み込まない場合。
- コマンドラインツールや独立したネットワークコンポーネントを、ルールに従って回線へ送る必要がある場合。
- ローカルネットワークのバイパス、DNSの制御、ルーティングルールの影響を理解している場合。
プロトコルの選択も、実際のネットワーク条件に合わせる必要があります。特定のプロトコルで現在のネットワーク上のハンドシェイクに頻繁に失敗する場合は、サブスクリプションが対応する別のプロトコルへ切り替えてテストしてください。特定の時間帯だけ不安定になる場合は、接続拠点と回線タイプの違いも比較します。プロトコル名だけで結論を出したり、1回の速度テストを長期的な結果と見なしたりしないでください。
日常のメンテナンスとプライバシー設定のポイント
サブスクリプションは、回線の調整に合わせて更新されることがあります。クライアントの定期更新機能を有効にしてもよいですが、手動更新を頻繁に行うのは避けてください。カスタムルールがある場合は、更新前にクライアントがルールとリモート設定を分けて保存するか確認し、サブスクリプション更新でローカルの変更が上書きされないようにします。
ログは接続トラブルの調査に役立ちますが、ノードのドメイン、エラー原因、ローカルネットワーク情報が含まれることがあります。テクニカルサポートへログを提供する前に、サブスクリプションURL、認証情報、不要なローカル情報を確認してマスキングしてください。サービス側のログを保存しない、または閲覧内容を記録しない方針はサーバー側のプライバシー説明に該当しますが、ユーザーもローカルクライアントのログと設定バックアップを適切に管理する必要があります。
クライアントをしばらく使わない場合は、まず接続を切断し、システム設定から対応するVPN構成またはネットワーク拡張を削除して、最後にアプリを削除します。アプリをゴミ箱へ移すだけでは、システムに許可済みのネットワーク項目が残ることがあります。再インストールする場合も、古い設定をそのまま使うのではなく、権限を改めて確認してください。