v2rayNをダウンロードしたものの、macOSのセキュリティ警告、アーキテクチャの不一致、ネットワーク権限で先に進めない方に向けた内容です。インストールファイルとチップのアーキテクチャを確認し、「プライバシーとセキュリティ」でアプリを明示的に許可した後、システムプロキシ、TUN、ローカルネットワーク、ファイアウォールの権限を確認します。
まず「開けない」箇所を切り分ける
「開けない」症状は、主に3つの段階で発生します。1つ目は、ダブルクリック直後に「開発元を確認できない」「悪意のあるソフトウェアが含まれていないことを確認できない」と表示されるケースです。これは初回起動時にGatekeeperが行うチェックです。2つ目は、アプリケーションが破損している、またはゴミ箱に移動されるという表示が出るケースで、不完全なダウンロード、解凍方法、隔離属性、アーキテクチャの不一致などが原因として考えられます。3つ目は、メイン画面は開くものの、システムプロキシやTUNを有効にすると通信できないケースです。この場合は、再インストールを繰り返すのではなく、プロキシのポート、コアのログ、システム権限を確認します。
まずデバイスのチップを確認します。画面左上のAppleメニューを開き、「このMacについて」を選択して、「チップ」または「プロセッサ」を確認してください。Appleシリコン搭載モデルではarm64版、Intel搭載モデルではx64版を選びます。アーキテクチャを間違えると、アイコンが一瞬跳ねて終了したり、ターミナルに対応するアーキテクチャを実行できないというエラーが表示されたりします。
「プライバシーとセキュリティ」で許可する
おすすめ「開発元を確認できない」と表示された場合に適しています。まず右クリックで開く方法を試し、その後システム設定で今回の起動を許可します。
適したケース:アプリは初回起動で、ファイルを正常に解凍できている
再ダウンロードして解凍する
インストールファイルが不完全、解凍後のフォルダーにコアファイルがない、またはアプリケーションが毎回ゴミ箱に移動される場合に適しています。
適したケース:ファイルサイズが不自然、プログラムフォルダーの内容が不足している
ネットワーク権限を確認する
画面は開くものの、システムプロキシ、TUN、ローカルネットワークへのアクセスが機能しない場合に適しています。
適したケース:ログは動作しているのに、ウェブページへ接続できない
未確認の開発元を許可する標準手順
macOSはブラウザからダウンロードしたアプリケーションに隔離属性を付けます。v2rayNを初めてダブルクリックした際、システムに「キャンセル」しか表示されないことがあります。この場合、何度もダブルクリックしたり、デバイス全体のセキュリティ設定を変更したりせず、対象アプリだけを明示的に一度許可してください。
-
アプリケーションフォルダーへ移動
解凍が完了したら、v2rayN.appを「アプリケーション」フォルダーへドラッグします。圧縮ファイルのプレビュー画面、ダウンロードキャッシュ、読み取り専用のディスクイメージから直接起動しないでください。
-
右クリックで開く
Finderの「アプリケーション」でv2rayNを見つけ、Controlキーを押しながらアイコンをクリックして「開く」を選択します。今回は通常、確認用の「開く」ボタンが表示されます。
-
プライバシー設定を開く
それでもブロックされる場合は、「システム設定」→「プライバシーとセキュリティ」を開き、「セキュリティ」セクションまで下へスクロールして、直前にブロックされたv2rayNの記録を探します。
-
このまま開くを選択
「このまま開く」をクリックし、管理者パスワードを入力するかデバイス認証を完了します。システムに確認画面が再度表示されたら、アプリ名を確認して「開く」を選択します。
-
コアを設定する
メイン画面を開いたら、「設定」→「パラメータ設定」→「Core タイプ」に進みます。VLESS、VMess、Trojanのノードを日常的に使う場合はXrayを選択し、設定を保存してください。
許可の記録は通常、現在のアプリケーションのバージョンと場所に対してのみ有効です。v2rayNを更新してアプリケーションパッケージが変わると、システムが再度確認を求める場合があります。プログラムを「アプリケーション」フォルダーに固定すると、パスの変更によるチェックの再発を抑えられます。
「破損」やゴミ箱への移動が表示される場合の確認方法
「アプリケーションが破損しています」と表示されても、必ずしもプログラム本体に問題があるとは限りません。圧縮ファイルのダウンロードが不完全、他社製の解凍ツールによるアプリケーションパッケージの権限変更、arm64版とx64版の選択ミス、隔離属性をシステム画面で正しく処理できていないことなどがよくある原因です。現在のコピーを削除し、対応するアーキテクチャの完全な圧縮ファイルを再取得してから、Finder標準の解凍機能で展開してください。
再解凍したら、まずアプリケーションを「アプリケーション」フォルダーへドラッグし、右クリックで開きます。「プライバシーとセキュリティ」に「このまま開く」が表示されず、ファイルの入手元とアーキテクチャも確認できている場合は、ターミナルでアプリケーションに隔離属性が残っているか確認できます。
xattr -l "/Applications/v2rayN.app"
xattr -dr com.apple.quarantine "/Applications/v2rayN.app"
1行目では拡張属性を読み取るだけです。結果にcom.apple.quarantineが含まれている場合、2行目でv2rayN.appと内部ファイルの隔離属性を削除します。実行後、再び右クリックで開いてください。パスの二重引用符は必ず残します。アプリ名や場所が異なる場合は、Finderに表示される実際の場所へパスを置き換えてください。
起動ファイルの基準
- インストール場所
- /Applications/v2rayN.app
- Appleシリコン
- arm64
- Intel
- x64
- 初回起動
- Controlキーを押してクリック → 開く
まずアーキテクチャと固定パスを合わせ、その後に隔離属性を処理します。
コア起動の基準
- Core タイプ
- Xray
- ローカルアドレス
- 127.0.0.1
- 一般的な混合ポート
- 10808
- ログレベル
- warning または info
ポートはユーザーが変更できます。切り分ける際は、パラメータ設定に表示される現在の値を基準にしてください。
システムプロキシとTUNの権限は別物
システムプロキシとTUNでは通信を取り込む範囲が異なります。システムプロキシはHTTPやHTTPSなどのプロキシ項目を現在のネットワークサービスに設定し、システムプロキシに対応したアプリケーションがv2rayNのローカル待受ポートへ接続します。一方TUNは仮想ネットワークインターフェースを作成し、システムプロキシ設定を読み取らない通信も処理できるため、通常はより高い権限が必要です。
通信範囲に合わせて動作方式を選ぶ
システムプロキシ
- 先にXrayコアを起動する
- ローカル待受は127.0.0.1:10808が一般的
- ブラウザやシステムプロキシを使用するデスクトップアプリに適しています
- v2rayNを終了する前にシステムプロキシを元に戻す
TUNモード
- 仮想ネットワークインターフェースを作成する
- 初回有効化時に管理者認証を求められることがあります
- VPN構成またはネットワークフィルタリングの権限を確認する画面が表示される場合があります
- 他のVPN構成と同時に動作させると、ルーティングが競合することがあります
初回設定では、まずシステムプロキシが使えることを確認してからTUNを単独で有効にするのがおすすめです。問題がノード、コア、システム権限のどこにあるか切り分けやすくなります。
システムプロキシだけを使う場合、通常はネットワーク拡張を許可する必要はありません。ウェブページを開けないときは、まずv2rayNのログでコアがローカルポートを待ち受けているか確認し、「システム設定」→「ネットワーク」→現在のネットワークサービス→「詳細」→「プロキシ」を開きます。HTTPまたはHTTPSプロキシのアドレスは127.0.0.1、ポートはv2rayNの現在の設定と一致させます。
TUNを有効にした際、macOSにVPN構成の追加、ネットワーク設定の変更、バックグラウンド項目の許可を求められたら、名称を確認して許可します。その後、「システム設定」→「ネットワーク」→「VPNとフィルタ」を開き、該当する構成が手動で無効になっていないことを確認してください。「プライバシーとセキュリティ」の下部にブロックされたシステムソフトウェアが表示されている場合も、先に許可を完了してからv2rayNを再起動します。
- システムプロキシは正常でTUNだけ失敗する場合:管理者認証、仮想インターフェース、VPN構成を重点的に確認します。
- 両方の方式で失敗する場合:ノードの有効性、Core タイプ、ポートの使用状況、コアのログを重点的に確認します。
- ローカルネットワーク上のデバイスだけ接続できない場合:「ローカルネットワーク」権限とルーティングルールを確認し、いきなりサブスクリプションを変更しないでください。
- プログラムを終了しても直接接続できない場合:ネットワークのプロキシ設定を開き、残っている127.0.0.1のプロキシ項目を削除します。
ネットワーク権限のダイアログを項目ごとに処理する
macOSでは、ローカルネットワーク、受信接続、VPN構成、バックグラウンド動作の権限を別々に尋ねられることがあります。これらは対象がそれぞれ異なります。ローカルネットワークを許可すると、ルーター、NAS、LAN上のサービスなどへのアクセスに影響します。ファイアウォールの受信接続は、他のデバイスがこのMacへ能動的に接続できるかを制御します。VPN構成はTUNによる通信の取り込みに関係します。
-
ローカルネットワークを確認する
「システム設定」→「プライバシーとセキュリティ」→「ローカルネットワーク」を開きます。LAN上のノードやサービスへアクセスする必要がある場合は、v2rayNのスイッチがオンになっていることを確認してください。
-
ファイアウォールを確認する
「システム設定」→「ネットワーク」→「ファイアウォール」→「オプション」を開きます。LANからの接続を受ける必要がある場合だけv2rayNの受信接続を許可してください。127.0.0.1を使う本体内の通信では、通常、外部からの受信接続は必要ありません。
-
VPN構成を確認する
「システム設定」→「ネットワーク」→「VPNとフィルタ」を開き、TUN関連の構成が存在し、有効になっていることを確認します。テスト時は、デフォルトルートを同時に取り込む他の構成を一時的に停止してください。
-
待受ポートを確認する
v2rayNのパラメータ設定でローカルポートを確認します。10808を使う場合、ブラウザやシステムプロキシにも必ず10808を入力し、他のクライアントで使っていたポートをそのまま使用しないでください。
-
コアを再起動する
権限とポートの設定を保存したら、まず現在のコアを停止してから再起動します。それでも変化がない場合は、v2rayNを終了して再度開き、システムにネットワーク設定を読み込ませます。
ポートがすでに待ち受け状態か確認する必要がある場合は、ターミナルを開いて次のコマンドを実行します。v2rayNまたはコアプロセスに対応する待受記録が表示されれば、ローカルの入口は確立されています。何も表示されない場合は、コアのログに戻って起動失敗の原因を確認してください。
lsof -nP -iTCP:10808 -sTCP:LISTEN
他のプロセスがポートを使用している場合、ログには通常bind、address already in use、listen failedなどが表示されます。そのポートを占有している古いプロセスを終了するか、「設定」→「パラメータ設定」で未使用のポート(例:10818)へ変更してください。変更後はシステムプロキシの設定も必ず更新します。
起動できるのに通信できない場合の確認順序
メイン画面を開けても、グラフィックプログラムがシステムチェックを通過したことしか分からず、コア、ノード、プロキシ設定が有効とは限りません。「コアの起動→ローカルポート→ノード接続→システムへの適用→ルーティングルール」の順に確認し、一度に複数の変数を変更しないようにします。
システムプロキシをクリックしてもウェブページが直接接続のまま?
まずログでコアが起動していることを確認し、「システム設定」→「ネットワーク」→現在のネットワーク→「詳細」→「プロキシ」を開きます。アドレスが127.0.0.1、ポートがv2rayNのパラメータ設定と一致しているか確認してください。
TUNを有効にした直後に通信できなくなった?
まずTUNを無効にし、システムプロキシを元に戻してテストします。続いて「VPNとフィルタ」の構成状態を確認し、他のデフォルトルート取り込み項目を一時停止して、権限エラーや仮想インターフェースの作成失敗がログにないか確認します。
ログに10808ポートの使用中と表示される?
lsof -nP -iTCP:10808 -sTCP:LISTENを実行して使用中のプロセスを確認します。残っているコアを終了するか、ローカルポートを10818へ変更し、システムプロキシのポートも合わせて変更してください。
サブスクリプションの更新は成功したのに、すべてのノードがタイムアウトする?
「設定」→「パラメータ設定」→「Core タイプ」がノードのプロトコルに対応しているか確認し、単一のノードを選んで接続テストを実行します。一部のノードだけ失敗する場合は、システム権限をリセットするのではなく、まずノードを変更してください。
終了後、通常のウェブページも開けなくなった?
v2rayNを再度開き、システムプロキシを復元してから終了します。または現在のネットワークサービスの「プロキシ」画面で、127.0.0.1:10808を指したままのHTTP、HTTPS、SOCKSプロキシ項目を無効にしてください。
ルーティングルールが原因で「一部のウェブサイトだけ開けない」こともあります。ルールは上から順に照合され、該当すると指定されたアウトバウンドが使われます。カスタムルールが対象ドメインを無効なアウトバウンドへ送っていると、システム権限がすべて正常でもアクセスできません。いったん単純なグローバルテストモードへ切り替えてノードを確認し、その後ルールによる振り分けに戻して、ドメイン、IP、プロセスのルールを1つずつ確認してください。