2026年9月9日 · 応用設定 · 約10分

v2rayNのTUNモード設定方法|仮想NICで全通信を取り込む仕組みと注意点

システムプロキシとTUN仮想NICの違いや、TUNが必要なアプリを解説。TUNの有効化、管理者権限、DNSハイジャックの設定手順も紹介します。

この記事の要点

ブラウザーは接続できるのに、コマンドラインツールやゲーム、ほかのデスクトップアプリがプロキシを経由しない場合は、まずシステムプロキシを参照しているか確認しましょう。この記事ではWindows版v2rayNを例に、TUNによる通信の取り込み、管理者権限、DNS、ルーティングの関係を解説し、有効化から動作確認、ネットワークの復旧まで順を追って紹介します。接続トラブルが起きても設定を一度に変更せず、TUNが必要か判断できます。

システムプロキシとTUN:通信の入口の違い

システムプロキシは、アプリにプロキシサーバーのアドレスを知らせる仕組みです。アプリがこの設定を読み取って利用すると、通信はv2rayNのローカルプロキシに入ります。環境変数だけを参照するコマンドラインツールや、独自のネットワークスタックを使うアプリもあるため、ブラウザーが使えてもほかのアプリが接続できるとは限りません。

TUNはIP層で動作する仮想ネットワークインターフェースです。システムはルーティング条件に合うパケットを仮想NICに送り、連携するコアが接続を処理して出口を選択します。通常、アプリごとにHTTPやSOCKSのアドレスを設定する必要はありませんが、管理者権限、システムルート、DNS設定が通信の取り込みに直接影響します。

アプリが接続を開始 システムがルートを選択 TUNがデータを受信 コアがルールを照合 出口への接続を確立

「全通信を取り込む」とは、取り込み対象の範囲を示すもので、「すべての通信をプロキシノード経由にする」という意味ではありません。TUNを有効にしても、中国本土のサイトやLAN、ダイレクト接続ルールに一致する通信は直接接続される場合があります。仮想NICに入らない通信が自動的に取り込まれるわけでもありません。IPv6、ほかの仮想NIC、明示的に除外したルートは個別に確認してください。

有効化の前に:ノードと権限を確認

v2rayNは設定管理とコアの起動を担うクライアント、TUNは通信の入口、VMessやVLESSなどはプロキシプロトコルです。それぞれ役割が異なります。TUNを有効にしても、使えないノードが利用可能になるわけではなく、サーバーにない転送機能が補われることもありません。

配布パッケージによって、設定画面の場所や項目名が異なる場合があります。ここではメイン画面の「Tunを有効にする」スイッチと、「設定」→「パラメーター設定」にあるTUN関連項目を例に説明します。画面の表示が異なる場合は、使用中のパッケージの表示と実行ログを確認してください。特定バージョンが生成したコア設定全体を、別バージョンにそのまま上書きしないでください。

  1. 現在の設定を記録する。使用中のサーバー、システムプロキシのモード、ルーティングプリセットを控えておきます。初回のテストでは、サブスクリプショングループ、出口プロトコル、DNSを同時に変更しないでください。
  2. 通常のプロキシ接続を確認する。TUNをオフにしたまま、システムプロキシを使って到達可能なHTTPSサイトに接続します。失敗する場合は、サブスクリプション、ノード認証、システム時刻、ネットワーク接続を先に確認してください。
  3. 競合する通信制御ツールを終了する。ほかのVPN、仮想NICソフトウェア、企業向けセキュリティクライアントが同時にルートを書き換えている場合があります。終了するのは管理権限のあるプログラムだけにしてください。管理対象の端末では、事前に組織のポリシーを確認しましょう。
  4. 管理者権限を準備する。Windowsで初回のトラブルシューティングを行うときは、v2rayNを終了し、プログラムを右クリックして「管理者として実行」を選択します。仮想NICの作成やルートの変更には通常、昇格した権限が必要です。配布パッケージが対応するサービス方式を使う場合は、該当サービスの権限を確認してください。

Tunを有効にする:一つずつ順番に操作

初回設定では、クライアントが提供するTUNのデフォルト値を使いましょう。最初からネットワークスタックを切り替えたり、MTUを変更したり、出所不明の高度な設定を読み込んだりしないでください。v2rayNのTUN経路はsing-boxなどの連携コアで動作する場合があり、選択したサーバーで使うXrayなどの出力コアと連携することもあります。詳細は実行ログで確認してください。

  1. 動作確認済みのサーバーを選ぶ。メイン画面で使用するサーバーを選択し、テスト結果が表示されるだけでなく、通常のプロキシ接続で実際のリクエストが完了することを確認します。
  2. TUNの設定を確認する。「設定」→「パラメーター設定」を開き、TUN関連項目を探します。ネットワークスタックとMTUはデフォルトのままにしてください。自動ルート設定がある場合は、その状態を確認します。仮想NICを作成しただけで有効なルートが設定されていなければ、想定どおり通信を取り込めないことがあります。
  3. テストを切り分けるため、システムプロキシを解除する。メイン画面の「システムプロキシ」メニューから「システムプロキシを解除」を選びます。すべての環境で必須の操作ではありません。ブラウザーが古い明示プロキシを使い続け、テスト結果が曖昧になるのを防ぐための手順です。
  4. 「Tunを有効にする」をオンにする。画面の指示に従って権限を昇格するか、再起動してください。その後ログを確認します。スイッチの色だけで判断せず、コアが正常に起動したか、仮想インターフェースが作成されたか、ルート設定が完了したかを確認しましょう。
  5. 対象のアプリを起動する。まず、これまでシステムプロキシを参照しなかったアプリをテストし、その後LANへの接続を確認します。問題が起きたら、まずTUNをオフにして元の状態に戻してください。プリセットを続けて複数切り替えるのは避けましょう。

macOSやLinuxのデスクトップ版でも、仮想インターフェースの作成やルート変更に必要な権限が必要です。ただし、権限昇格の方法はWindowsとは異なります。Windowsの右クリック操作をほかのOSにそのまま適用しないでください。エラーを回避するために、インストールフォルダー全体へ過剰な権限を恒久的に付与するのも避けましょう。

DNSハイジャック:問い合わせを受け取る仕組みと、すべての名前解決の置き換えは別

TUN環境でのDNSハイジャックとは通常、条件に一致する従来型DNS問い合わせを、コア内蔵のDNS処理経路に渡すことです。Webページの内容を書き換える機能ではありません。正しく設定すれば、名前解決とプロキシルーティングを連携できます。設定に問題があると、ノードには接続できるのにドメイン名でアクセスできないことがあります。

53
従来型DNSでよく使われるUDP/TCPポート
443
HTTPSとDoHでよく使われるポート
853
DoTで通常使われるTCPポート

これらは各プロトコルでよく使われるポートであり、v2rayNのローカル待ち受けポートでも、このサイトのテスト結果でもありません。宛先ポート53だけに一致するルールでは、すべての暗号化DNSを自動的に識別して取り込むことはできません。ブラウザー内蔵のセキュアDNS、アプリ内蔵のDoH、カスタムDNSリゾルバーは、別の経路で名前解決する場合があります。

切り分けの基本:名前解決経路をそろえてからルーティングを調整

ブラウザーとほかのアプリで結果が異なる場合は、まずブラウザー独自のセキュアDNSを一時的にオフにして比較し、名前解決経路の違いが原因か確認します。すぐにすべてのルートをプロキシ経由に変更しないでください。テスト後、必要に応じてブラウザーの設定を元に戻しましょう。

通信の取り込みを確認:接続、ルート、LANをチェック

TUNの動作確認には、少なくとも二種類の証拠が必要です。OS上で想定したインターフェースやルートの変化があること、そして対象アプリの通信がルールに従って適切な出口に送られていることです。外部IPアドレスが変わっただけでは、そのリクエストの出口が変わったとしか判断できず、すべてのアプリやプロトコルが取り込まれた証明にはなりません。

Windowsでは、PowerShellで以下の読み取り専用コマンドを実行し、状態を確認できます。有効化の前後で実行して結果を比較してください。ネットワークアダプター名は設定やバージョンによって変わるため、特定の名前を前提に探さないでください。

# 非表示のインターフェースを含むネットワークアダプターを確認
Get-NetAdapter -IncludeHidden

# IPv4とIPv6のルートを確認
Get-NetRoute -AddressFamily IPv4
Get-NetRoute -AddressFamily IPv6

# 各インターフェースのDNSサーバー設定を確認
Get-DnsClientServerAddress

DNSハイジャックが通信処理経路内で行われる場合、システムに表示されるDNSサーバーのアドレスが変わらないことがあります。そのため、最後のコマンドだけではハイジャックの成否を判断できません。ルートの取り込みも、デフォルトルートの置き換えとして表示されるとは限らないため、実際に生成されたルールとログを確認しましょう。

よくあるトラブル:症状から原因を絞り込む

一度に変更する設定は一つだけにし、変更前後のログを保存してください。ログにはサブスクリプションURL、サーバーアドレス、認証情報が含まれる場合があります。他者に共有して調査を依頼する前に、機密情報を隠しましょう。以下では、利用開始時によくある四つの症状と確認方法を紹介します。

「Tunを有効にする」をオンにすると、すぐ自動でオフになります。どうすればよいですか?

まず同じ時刻のコアログを確認します。権限不足のメッセージが出る場合は、終了して管理者として再起動してください。仮想インターフェースの作成失敗なら、ほかの通信制御ソフトやセキュリティポリシーを確認します。設定項目の非互換が原因なら、TUNのデフォルト設定に戻し、クライアントと連携コアが同じ配布パッケージに含まれていることを確認してください。

TUNを有効にしたらインターネットに接続できません。まずDNSを変更すべきですか?

まずTUNをオフにして元のネットワークが復旧するか確認し、次に通常のシステムプロキシをテストします。通常のプロキシも失敗する場合は、ノードまたは基本ネットワークの問題を先に解決してください。TUNだけが失敗する場合は、ルートの競合、コアの起動状態、名前解決のループを確認します。ノードとDNS設定を同時にすべて変更しないでください。

ブラウザーは使えるのに、ゲームが接続できません。

まずブラウザーが独自の明示プロキシを使っていないか確認し、次にゲームの通信がログに記録されるか調べます。記録があるのにUDPが失敗する場合は、ノードのUDP対応状況とネットワーク制限を確認してください。記録がない場合は、ルートの除外設定、ほかの仮想NIC、ゲーム独自のネットワーク設定を確認します。TUNを使ってもゲームの遅延が下がるとは限りません。

有効化後、プリンターや社内ネットワークにアクセスできません。

まずTUNをオフにして比較し、対象サービス自体が利用できることを確認します。その後、該当するネットワークセグメントのダイレクト接続・バイパスルールと、社内ドメインが引き続き社内DNSで解決されるかを確認してください。企業VPNの専用ルートとTUNの自動ルートが競合する場合があります。デフォルトルートの優先度を上げるだけで安易に解決しようとしないでください。

無効化して元に戻す:システムネットワークを確認

通常終了する場合は、まず「Tunを有効にする」をオフにして、コアの停止とルートの復旧を待ってから、システムプロキシを戻すか判断します。通常のプロキシ経由でブラウザーを使い続ける場合は、システムプロキシを再設定してください。利用を完全に停止する場合は、解除した状態を維持し、停止済みのローカルポートへアプリが接続し続けないようにしましょう。

  1. TUNをオフにした後、以前アクセスできたサイトやLAN内の機器に接続し、基本的な通信が復旧したことを確認します。
  2. クライアントが異常終了した場合は、まず再起動してTUNを通常の手順でオフにし、作成したインターフェースとルートの削除を試みてください。
  3. 問題が続く場合は、ログとルート情報を保存してから、OSの手順に従って端末を再起動します。仮想NICをまとめて削除したり、すべてのネットワーク設定をリセットしたりしないでください。ほかの業務用接続に影響するおそれがあります。
  4. 最終的に利用できたノード、ルーティングプリセット、DNS方式を記録しておきます。今後アップグレードした場合は、対象アプリの動作を再確認してから、自動起動や常時通信の取り込みを元に戻してください。

TUNの役割は、クライアントの処理経路に取り込める通信の範囲を広げることです。サブスクリプションの管理、ノードの稼働確認、ルーティング設計に代わるものではありません。基本的な設定項目は設定ガイド、ネットワークの基本的なトラブルはトラブルシューティングを参照し、順に確認してください。

v2rayNをダウンロード