使い方のコツ

TUNモード完全ガイド:仕組み、設定、よくある問題

「システムプロキシはオンになっているのに、なぜこのソフトはネットに繋がらないの?」しばらく使っていると多くの人がこの問題に直面しますが、その答えはたいてい同じ機能を指しています:TUNモードです。それが何をしているのかを理解するには、まずシステムプロキシがなぜ機能しないことがあるのかを知る必要があります。

システムプロキシは万能ではない

「システムプロキシを自動設定」の本質は、クライアントがOSレベルのプロキシ設定を変更することです。大半のブラウザやアプリはネットワークリクエストを送る際にこの設定を自動的に読み取り、トラフィックをローカルのプロキシポートに転送します。ただしこの仕組みは、アプリが「積極的にこの設定に従う」という前提の上に成り立っています。コマンドラインツール、一部のゲームクライアント、特定のメッセージングアプリは、パフォーマンスや互換性の観点から、システムプロキシ設定を回避して直接接続を確立することがよくあります。こうしたトラフィックは当然プロキシでカバーできず、「プロキシはオンなのにこのソフトだけ繋がらない」という状態になります。TUNモードの発想はまったく異なります:アプリが「積極的に協力する」ことに依存せず、OSのネットワークプロトコルスタック内に仮想ネットワークアダプタ(TUNデバイス)を作成し、システムのルーティングテーブルを変更することで、ほぼすべてのトラフィックが実際のネットワークアダプタに届く前にこの仮想アダプタを経由するようにします。クライアントは仮想アダプタ上で生のパケットをインターセプトし、宛先アドレスを解析してルーティングルールに従って直接接続かプロキシ転送かを判断し、再びパケットを組み立てて送信します。この処理はネットワーク層で行われるためアプリ層が「協力してくれるかどうか」にほとんど依存せず、UDPトラフィック、コマンドラインツール、ゲームクライアントを含む大半のシーンをカバーできる、これこそが真の意味でのグローバルプロキシです。

結局いつ必ず使う必要があるのか

誰もが常にTUNモードをオンにしておく必要があるわけではありませんが、以下のようなケースでは基本的に避けて通れません:一部のパッケージマネージャー、git、curlなどのコマンドラインツールはデフォルトでシステムプロキシ設定を読み取らないため、TUNモードか手動でのプロキシパラメータ指定で解決するしかありません。一部のゲームクライアントやランチャーは、チート対策やパフォーマンスの観点からシステムプロキシを回避して直接接続することがあります。もしお使いのアプリがUDPに大きく依存している場合(一部のリアルタイム通信やDNS over UDPなど)、システムプロキシは通常TCPトラフィックしか処理しないため、まったく効果がないことがほとんどです。複数のアプリで同時にプロキシ回避の問題が発生している場合は、一つずつ調査して例外ルールを設定するより、TUNモードを一度オンにして一括で解決してしまう方がずっと楽です。

有効化はたった4ステップ、ルーティングルールもそのまま有効

有効化のプロセスは複雑ではありません:システムプロキシメニューから「TUNモード」を選択します(Windowsではクライアントを管理者権限で実行する必要があります)。初回有効化時にシステムがセキュリティ警告を表示したり、仮想アダプタドライバのインストールを求めたりする場合がありますが、許可を選択すれば問題ありません。有効化が成功するとトレイアイコンにTUNモードが有効であることが表示され、ほぼすべてのトラフィックが仮想アダプタを経由するようになりますが、ルーティングルールは引き続き有効です——ルールに従って直接接続すべき通信は直接接続のままとなり、それ以外のトラフィックのみがプロキシを経由するため、「グローバルプロキシ」だからといってすべてのトラフィックが遅くなる心配はありません。

有効化後に繋がらない場合、原因は大きく4つ考えられます

TUNモードは仮想アダプタの作成やシステムルーティングテーブルの変更を伴う、比較的低レベルの操作であるため、同じようにネットワーク設定を変更する他のソフトウェアと競合しやすくなります。最もよくあるのは従来型のVPNクライアントとの競合です:両者ともルーティングテーブルを引き受けようとするため、同時にオンにすると通常どちらか一方が機能しなくなります。同時に有効化しないことをおすすめします。次によくあるのは、一部のセキュリティソフトが仮想アダプタの作成に対して非常に敏感で、ブロックしたりウイルスとして誤検知したりする可能性があることです。クライアントを信頼リストに追加する必要があります。もう一つの原因は仮想アダプタドライバのバージョンが古いことです——Windowsでよく使われるWinTunドライバのバージョンが古いと、新しいシステムバージョンとの互換性問題が発生しやすく、ドライバやクライアントを更新すれば通常解決します。最後に、有効化後に社内ネットワークのサービスに繋がらなくなった場合は、ルーティングルールに geoip:private の直接接続ルールが正しく保持されているか確認してください。社内ネットワークのリクエストが誤ってTUNアダプタに送られて処理されるのを防げます。問題が発生した際の一般的な調査方法は:まずTUNモードをオフにして問題が消えるか確認し、次に上記の4つの原因を一つずつ確認することです。すぐに解決できない場合は、いったんシステムプロキシモードに戻し、グローバルプロキシがどうしても必要な場面だけ一時的にオンにして使い終わったらオフにすることで、他のソフトウェアとの競合の機会を減らすこともできます。

リソース消費は増えますか

すべてのトラフィックが仮想アダプタで追加のパケット解析を経由するため、TUNモードは単純なシステムプロキシと比べてやや高めのCPU使用率になるのは事実ですが、現在のデバイスではこのオーバーヘッドは通常それほど顕著ではなく、大半の人がパフォーマンスを心配してあえて避ける必要はありません。低性能デバイスや遅延に特に敏感なシーンでのみ、まずシステムプロキシモードを試し、本当に必要な場合にTUNモードへ切り替えることをおすすめします。

v2rayN をダウンロードして、ワンクリックでTUNモードを有効化

仮想ネットワークアダプタドライバを内蔵し、設定も簡単。すぐに使い始められます。

今すぐダウンロード

まだクライアントをダウンロードしていませんか?

v2rayN にはTUNモードが標準搭載されており、ダウンロード後ワンクリックでグローバルプロキシを有効化できます。

無料でクライアントをダウンロード
無料でクライアントをダウンロード Windows / macOS / Linux / Android