まずチップに合ったv2rayN Desktopのインストーラーを選び、システムによるセキュリティ制限、アプリの起動失敗、プロキシ接続の問題を切り分けます。Macにクライアントを初めてインストールする方向けに、アプリの許可、隔離属性の確認からシステムプロキシ、TUNの権限まで、影響の小さい順に確認します。システムのセキュリティ機能を無効にする方法は案内しません。
1. macOSインストーラーの選び方:ARM64とx64
MacではWindows WPF版ではなく、v2rayN DesktopのmacOS用インストーラーを選びます。DesktopはクロスプラットフォームのUIフレームワークを使用していますが、OSごとの実行ファイルに互換性はありません。ファイル名にWPFやWindowsとある場合は、ダウンロードページに戻って選び直してください。
チップの種類は「Appleメニュー」→「このMacについて」で確認できます。Apple Mシリーズと表示される場合はARM64、Intelプロセッサと表示される場合はx64を選択します。対応するmacOSのバージョンは、利用するインストーラーのリリースノートで確認してください。チップの種類が合っていても、古いOSで動作するとは限りません。
ARM64ネイティブ版
おすすめAppleシリコン搭載Macでは、プロセッサに合ったARM64版を優先してください。起動時の切り分けに変換環境が加わるのを避けられます。この推奨はAppleシリコン搭載機向けで、Intel Macには当てはまりません。
対象:M1、M2、M3、M4などのAppleシリコンを搭載したMac。
x64インストーラー
Intel Macではx64版を使用します。Appleシリコン搭載Macで一部のx64アプリを実行するには、Rosetta 2が必要になる場合があります。画面が開いたとしても、同梱のコアや補助プログラムがすべて正常に動作するとは限りません。
対象:Intelプロセッサ搭載のMac。
2. DMGのインストールと初回起動
アプリを「アプリケーション」にコピーしてから、Mac上のコピーを起動してください。DMGのマウント先から直接実行すると、更新や書き込み、権限の確認で考慮すべき要因が増えます。再インストールする場合は、「ダウンロード」フォルダ内の古いコピーを開いていないかも確認しましょう。
-
チップを確認
「Appleメニュー」→「このMacについて」を開き、チップの種類とmacOSのバージョンを確認してから、当サイトのダウンロードセンターで対応するmacOSインストーラーを選びます。
-
アプリをコピー
DMGをダブルクリックし、インストーラーの案内に従ってv2rayNアプリを「アプリケーション」にドラッグします。コピーが完了したらディスクイメージを取り出してください。デスクトップにアプリのエイリアスを置くだけでは不十分です。
-
初回起動
「Finder」→「アプリケーション」からv2rayNを開きます。起動をブロックされた場合は、表示されたメッセージを記録し、次のセクションに従って「プライバシーとセキュリティ」で許可してください。何度もダブルクリックして試す必要はありません。
-
設定をインポート
クライアントの「サブスクリプショングループ」→「サブスクリプショングループ設定」を開き、サービス提供元から案内されたサブスクリプションURLを追加して保存します。その後、「サブスクリプショングループ」メニューから更新してください。メニューの表記はバージョンによって異なる場合があるため、現在の画面に従ってください。
-
まず通常のプロキシをテスト
サーバーを選択し、まずシステムプロキシを使ってブラウザーからアクセスできるか確認します。コアが起動することを確認してからTUNを検討してください。初回インストール時にコア、ルーティング、DNS、通信の取り込み方式を一度に変更するのは避けましょう。
サブスクリプションURLはサーバー設定を取得するためのもので、アプリのインストーラーでも、アカウントやパスワードの入力欄でもありません。インポート後にサーバーが表示されない場合は、サブスクリプションの応答内容と更新ログを確認してください。アプリが起動して一覧が空の場合、システムの許可設定をやり直す必要はありません。
3. 開発元を検証できない場合:システムの案内に従って個別に許可
「開発元を検証できません」という表示は、現在のセキュリティポリシーに基づいてmacOSがアプリを確認できなかったことを示します。ファイルが破損していると確定したわけではありません。まずダウンロード元とファイルの種類を確認してください。入手元が不明なコピーは実行せず、信頼できる配布元から改めて入手しましょう。
macOS 13以降では、一般的な操作経路は「Appleメニュー」→「システム設定」→「プライバシーとセキュリティ」です。アプリの起動を試した後、ページ内のセキュリティ欄に今回のブロック記録と「このまま開く」ボタンが表示されているか確認します。ボタンをクリックし、システムから求められた認証を行って、確認画面で「開く」を選択してください。
右クリックして「開く」を選んでもブロックされる場合は?
新しいmacOSでは、「システム設定」→「プライバシーとセキュリティ」で明示的な許可が必要な場合があります。右クリックして開く方法がすべてのバージョンで使えるとは限りません。今回表示されたセキュリティ警告に従ってください。
セキュリティ画面に「このまま開く」が表示されない場合は?
まず「アプリケーション」からもう一度起動し、すぐにこの画面を再確認してください。それでも記録が表示されない場合は、アーキテクチャの誤り、OSのバージョン要件、または組織のデバイス管理ポリシーによる制限がないか確認します。
「コンピュータに損害を与える可能性があります」と表示されても許可できますか?
通常の「開発元を検証できません」という警告と同じように扱わないでください。実行を中止し、疑わしいコピーを削除して、入手元を再確認します。取り消された署名やマルウェアの判定を、ターミナルコマンドで無理に回避してはいけません。
Gatekeeperを無効にする必要はありますか?
必要ありません。まずmacOSが用意しているアプリごとの承認手順を利用してください。クライアントを1つインストールするためにシステム全体のセキュリティ設定を変更したり、入手元不明の一括許可スクリプトを実行したりしないでください。
古いmacOSでは「システム環境設定」→「セキュリティとプライバシー」→「一般」が該当する画面です。管理対象のMacでは、ユーザーがアプリを許可できない場合があります。その場合はデバイス管理者に相談し、管理上の制限を解除しようとしないでください。
4. アプリが破損している場合:再ダウンロードしてから隔離属性を確認
「アプリが破損しているため開けません」という表示の原因には、ダウンロードの不完全、アプリパッケージの変更、署名の問題、ダウンロードファイルに対するシステムの隔離処理などがあります。この表示だけでディスク上のファイルが実際に壊れているとは断定できません。また、隔離属性をすぐに削除する理由にもなりません。
- ディスクイメージを確認:DMGをマウントできない、またはコピー中にエラーが出る場合は、今回のダウンロードファイルを削除し、インストーラーを最初からダウンロードし直してください。
- コピー先を確認:クライアントを終了し、「アプリケーション」にある新しいコピーを起動してください。マウント中の古いディスクイメージ内のアプリを使っていないか確認します。
- システム要件を確認:macOSが古すぎる場合やアーキテクチャが合わない場合は、対応するインストーラーを選ぶかOSをアップグレードしてください。権限を変更しても動作要件は満たせません。
- エラーメッセージを記録:署名が無効、開発元を検証できない、マルウェアの警告はそれぞれ別の問題です。すべてを「権限不足」とひとくくりにしないでください。
入手元が信頼できると確認でき、再ダウンロード後も隔離に関連するブロックが起きる場合に限り、影響を理解したうえでアプリの拡張属性を確認してください。以下のコマンドではアプリが/Applications/v2rayN.appにあるものとします。名前が異なる場合は実際のパスに変更してください。Finderからアプリをターミナルにドラッグしてパスを確認する方法もあります。
# 読み取り専用の確認:アプリにダウンロード時の隔離属性が付いているか確認
xattr -p com.apple.quarantine "/Applications/v2rayN.app"
# 任意の操作:信頼性を確認済みのこのアプリパッケージのみ隔離属性を削除
xattr -r -d com.apple.quarantine "/Applications/v2rayN.app"
5. システムプロキシの許可とローカルポートの確認
システムプロキシは、macOSのプロキシ設定に従うアプリの通信をローカルクライアントに渡します。リモートサーバー側のポート設定ではありません。v2rayNの画面が開いていても、プロキシコアが正常に待ち受けているとは限らず、すべてのアプリがシステムプロキシを使うとも限りません。
以下では127.0.0.1:10808を例にしていますが、すべてのバージョンで同じポートが使われるわけではありません。まずv2rayNの「設定」→「パラメータ設定」で、実際のローカル待ち受け設定を確認してください。古い設定ではHTTPとSOCKSのポートが別々の場合があります。SOCKS専用ポートをHTTPプロキシ欄に入力しないでください。
| 確認箇所 | 操作方法 | 判断の目安 |
|---|---|---|
| クライアントのシステムプロキシメニュー | 「システムプロキシを自動設定」を選び、システムの確認画面が表示されたら許可します。 | これはシステムプロキシ設定を書き込む操作です。ドメインごとの振り分けがすべて自動設定されるわけではありません。 |
| macOSで使用中のネットワークサービス | 「システム設定」→「ネットワーク」→使用中のWi-FiまたはEthernet→「詳細」→「プロキシ」。 | サーバーアドレス、ポート、有効化項目がクライアントの待ち受けプロトコルと一致していることを確認します。 |
| クライアントのログ | 起動後のコアの出力を確認し、待ち受けの失敗、アドレスの競合、権限エラーを探します。 | address already in useと表示される場合は、サブスクリプションを変更する前にポートを使用中のプロセスを確認してください。 |
許可した後もプロキシ設定が反映されない場合は、現在Wi-FiとEthernetのどちらを使っているか、デバイスが管理ポリシーの対象かを確認してください。そのために「フルディスクアクセス」を有効にする必要はありません。この権限と、ネットワークプロキシ設定の通常の書き込みは別のものです。
# システムプロキシの状態を確認(設定は変更しない)
scutil --proxy
# 使用中のポートをプロセスが待ち受けているか確認。実際のポートに合わせて変更
lsof -nP -iTCP:10808 -sTCP:LISTEN
# このポートがHTTPプロキシに対応している場合のみテスト
curl -I --connect-timeout 10 --proxy http://127.0.0.1:10808 https://example.com/
HTTPレスポンスが返れば、少なくとも今回のリクエストはそのプロキシ経由で接続できています。タイムアウトの原因は権限とは限らず、ノード、DNS、リモート接続の失敗も考えられます。ポートがSOCKSに対応している場合は、curl -I --connect-timeout 10 --proxy socks5h://127.0.0.1:10808 https://example.com/でもテストできます。socks5hでは接続先のドメイン名をプロキシ側で名前解決します。
6. TUN、ネットワーク拡張、ローカルネットワークの権限
TUNとシステムプロキシは、通信を取り込む方法が異なります。TUNは通常、仮想ネットワークインターフェース、ルーティング、DNS設定を使って通信を取り込み、権限の昇格が必要になる場合があります。ただし、実装はクライアントのバージョンと選択したコアによって異なり、TUNの起動をすべてmacOSのネットワーク拡張のインストールと同一視することはできません。
- 通常のシステムプロキシ:まずブラウザーを使って、ノードとコアが正常に動作するか確認します。一部のアプリがシステムプロキシを無視しても、クライアントのインストール失敗を意味するわけではありません。
- TUNの権限昇格要求:TUNを自分で有効にし、要求が実行中のクライアントから出ていると確認できた場合のみ許可してください。失敗する場合は、ログで権限、仮想インターフェース、ルーティングのエラーを確認します。
- ネットワーク拡張の承認:現在のバージョンが実際にネットワーク拡張を使い、システムの確認画面が表示された場合のみ対応します。新しいmacOSでは「システム設定」→「一般」→「ログイン項目と機能拡張」→「ネットワーク機能拡張」を確認できます。ほかのバージョンでは、案内に従って「プライバシーとセキュリティ」を確認してください。
- ローカルネットワークの権限:この設定があるmacOSでは、「システム設定」→「プライバシーとセキュリティ」→「ローカルネットワーク」を開き、アプリによるLANへのアクセスが許可されているか確認します。この権限はインターネットへのすべての接続を許可するものではなく、TUNの権限昇格の代わりにもなりません。
TUNを調べる際は、ネットワークを制御しているほかのツールを終了し、通信の取り込み方式を1つだけ有効にして比較してください。システムプロキシは使えるのにTUNが使えない場合は、すぐにクライアントを再インストールしたり、すべてのサーバーを変更したりせず、権限、インターフェース、ルーティング、DNSを優先して確認します。FakeDNSはインストールに必須ではありません。アプリが開かない問題を解決するために、ついでに有効にする必要はありません。
7. インストール後の動作確認と終了後の復元
インストール後は、「接続済み」という表示だけで判断せず、再現可能な手順で動作を確認しましょう。クライアントの管理画面、プロキシコア、通信の取り込み方式、リモートサーバーはそれぞれ役割が異なるため、順番に確認します。
- アプリ層:「アプリケーション」から起動し、セキュリティによってブロックされないことを確認します。終了後にもう一度開き、同じアプリを使っていることも確認してください。
- 設定層:サブスクリプションからサーバー設定が追加され、選択したVMessまたはVLESSの設定がサービス提供元の指定と一致していることを確認します。プロトコル、トランスポート、TLSのパラメータを推測で変更しないでください。
- コア層:起動ログに継続的なクラッシュや待ち受け失敗がなく、ローカルポートに対応するプロセスがあることを確認します。複数のクライアントを同時に実行してポートを奪い合わないようにしてください。
- 接続方式:まずシステムプロキシを確認し、その後TUNを個別に検証します。一度に変更する設定は1つだけにし、切り替え前後の結果を記録してください。
- 復元:終了する前にTUNを無効にし、システムプロキシを「システムプロキシをクリア」に切り替えます。異常終了した場合は、macOSで使用中のネットワークサービスの「プロキシ」画面に設定が残っていないか確認してください。
クライアントを終了した後にすべてのWebページが開けなくなった場合、システムがすでに停止したローカルポートを参照し続けていることがよくあります。残ったプロキシ設定をクリアしてから直接接続を試してください。ネットワークサービス全体を削除する必要はありません。再インストール前に必要な設定をバックアップし、ログを他人に渡す際はサブスクリプションURL、サーバーの認証情報、アカウント情報を隠してください。
最終的な確認手順は、適切なインストーラーを選ぶ、Macにコピーする、アプリごとのセキュリティ許可を行う、コアの待ち受けを確認する、システムプロキシを確認する、最後にTUNの権限を確認する、という順序です。「開けない」問題の原因を特定しやすくなり、インストールの問題とノード接続の問題を混同せずに済みます。
チップに合ったmacOSクライアントをダウンロード
ダウンロードセンターでv2rayN DesktopのARM64またはx64インストーラーを選択してください。初期設定については、サブスクリプションのインポート方法やプロキシモードのガイドもご覧ください。