目次
TUN は、システムプロキシで処理されないプログラムのために使用する
Windows で Clash Verge Rev の TUN を有効にするのは、次のような場合に適しています。Chrome と Edge はシステムプロキシ経由でアクセスできるのに、ターミナル、ゲームランチャー、ストアアプリからの接続がまったく記録されない場合です。すべてのプログラムが開けない場合は、まずサブスクリプションまたはノードへ対応し、TUN を最初のスイッチにしないでください。
システムプロキシと TUN は、速度を二段階に切り替えるものではありません。システムプロキシは Windows のプロキシアドレスを、それを参照するプログラムへ知らせるだけです。TUN は仮想ネットワークアダプターを通して、より多くの TCP、UDP 接続を処理します。
これらの接続が Mihomo へ入った後も、直接接続かプロキシかはルールによって決まります。TUN が広げるのは処理範囲です。無効なノードを修復したり、誤ったルールを自動的に正しくしたりすることはありません。
症状に合わせて処理方法を選ぶ
| 現在の状態 | 次の手順 |
|---|---|
| ブラウザーと普段使うソフトウェアがどちらも正常である | システムプロキシを使い続ければよく、TUN を有効にする必要はない |
| ブラウザーは正常だが、ターミナルまたはランチャーが直接接続する | TUN を有効にして一度比較するのに適している |
| システムプロキシの状態にかかわらずアクセスできない | まずサブスクリプション、ノード、カーネルへ対応する |
| 一つのドメインだけが誤った出口を通る | ルールの一致状況を確認する。TUN は主な原因ではない |
動作するシステムプロキシの状態を一つ残す
TUN を有効にする前に、「設定」で現在のサブスクリプションを選び、「プロキシ」画面で利用可能と確認済みのノード一つに固定します。モードはまず Rule のままにしてください。システムプロキシを有効にして、ブラウザーから見慣れた Web サイトへアクセスし、「接続」画面にそのリクエストが表示されるかを同時に確認します。
この手順によって、その後のロールバック手段が残ります。システムプロキシで元から接続記録がない場合は、サブスクリプションが現在の設定になっていないか、ポリシーグループが DIRECT のままになっている可能性があります。この状態で TUN を直接有効にしても、元の問題が仮想ネットワークアダプターの背後に隠れるだけです。
TUN の設定を開く前に確認する項目
- 現在の設定に明確な更新時刻がある
- プロキシ画面にポリシーグループとノードが表示される
- 固定ノードで Web ページへのリクエストを一度完了できる
- 接続記録にドメイン、ルール、実際の出口が表示される
サービスモードは権限を処理するものであり、ノードを自動的に選ぶものではない
Windows で仮想ネットワークアダプターを作成するには、高い権限が必要です。Clash Verge Rev ではこの処理をサービスモードが担当するため、日常利用で画面全体を毎回管理者として起動する必要はありません。設定画面で「サービスモード(Service Mode)」を探し、未インストールと表示される場合は、クライアントに用意されたインストール項目を使用してください。
Windows に権限確認が表示された場合、要求元のプログラムが現在インストールしている Clash Verge Rev であることを確認します。サービスのインストール後にカーネルを再読み込みしてください。状態が「停止済み」と「起動中」の間を行き来する場合は、TUN スイッチを連続してクリックせず、先にログを確認します。
直前に使った設定を維持したまま TUN を有効にする
利用可能な状態を基準に切り替える
ほかのプロキシと VPN を終了する
複数のプログラムが同時にルートを書き換えたり、同じポートを使ったりしないようにする。
Rule モードと固定ノードを維持する
テスト中は自動速度テストグループに出口を切り替えさせない。
TUN モードを有効にする
サービスと仮想ネットワークアダプターの準備を待ち、同時に DNS とルールを変更しない。
当初失敗した操作をもう一度行う
たとえばターミナルで同じコマンドを実行するか、ランチャーから同じページを開く。
現在の Mihomo は system、gvisor、mixed などのネットワーク stack に対応しています。クライアントの既定値で動作するなら、そのまま使用してください。stack の変更は互換性を調べる方法であり、性能を切り替えるスイッチではありません。system または mixed で接続を遮断される場合は、Windows ファイアウォールが Mihomo のカーネルプロセスを許可しているかも確認します。
auto-route は対象範囲のシステム通信を TUN へ送り、auto-detect-interface は実際の出口となるネットワークアダプターを識別します。これらのフィールドを理解しておくとログを読みやすくなりますが、グラフィカルクライアントの利用者が「最適化」のため、インターネット上の長い設定をコピーする必要はありません。

スイッチが点灯しただけでは完了ではなく、接続記録を確認して完了とする
システムプロキシでは失敗していたプログラムへ戻り、まったく同じリクエストを繰り返します。「接続」画面に対応するドメインまたは対象 IP が表示され、ルールと出口も示される場合は、通信が TUN から Mihomo へ入っています。アプリでも結果を得られた時点で、設定が本当に反映されたと判断できます。
接続記録が空のままなら、プログラムの通信が仮想ネットワークアダプターを通っているか、ファイアウォールに遮断されていないかを重点的に確認します。サブスクリプションの遅延は主な原因ではありません。記録が表示されても DIRECT に一致するならルールへ対応し、プロキシに一致してもタイムアウトするなら、利用できると分かっている別のノードへ固定して比較します。
アプリが失敗し、接続画面に新しい記録がまったくない
サービスの状態、仮想ネットワークアダプター、ほかの VPN、Windows ファイアウォールを確認する。
記録は表示されるが DIRECT になっている
一致したルール行を確認し、TUN を何度も切り替えることでルール変更の代わりにしない。
記録ではプロキシを通り、timeout と表示される
利用できる別のノードへ固定し、入口の問題とノードの問題を区別する。
TUN の有効化後にすべて切断される場合は、システムプロキシへ戻って問題の範囲を切り分ける
まず TUN を無効にします。システムプロキシがすぐ復旧するなら、サブスクリプションとノードは引き続き動作している可能性が高く、問題はサービス、ルート、仮想ネットワークアダプター、DNS に絞られます。システムプロキシも利用できない場合は、先ほど確認した設定とカーネルを改めて確認してください。この比較は、クライアントを再インストールするより早く行えます。
- サービスの起動に失敗する
- カーネルを再読み込みし、ログに permission、service、driver に関する情報がないか確認する。
- 仮想ネットワークアダプターはあるが、リクエストがない
- ほかの VPN、セキュリティソフト、以前の Clash を終了し、別の TUN が同時にルートを変更していないことを確認する。
- 接続は表示されるが、ドメインの名前解決に失敗する
- DNS ログと dns-hijack 設定を確認します。Android のプライベート DNS などに関する説明は Windows には適用されないため、別のチュートリアルを混在させないでください。
- Wi-Fi を切り替えた後だけ機能しなくなる
- カーネルに出口のネットワークアダプターを再検出させ、auto-detect-interface の結果を確認する。
NAS とプリンターが突然見えなくなった場合は、ローカルネットワークの経路が迂回されていないか確認する
インターネット接続は復旧しているのに、ルーターの管理画面、NAS、プリンターを開けない場合は、通常ローカル接続が TUN へ入った後でローカルネットワークのルールに従って直接接続されていません。TUN を無効にするとすぐこれらのデバイスが戻る場合も、この判断を裏付けます。
プライベートアドレスのルールが、より広いプロキシルールより先に DIRECT に一致することを確認します。社内ネットワークで独自のネットワーク範囲と内部ドメインを使用している場合は、実際のアドレスに合わせて追加し、家庭用ネットワークの除外リストをそのまま使わないでください。Windows の strict-route が VirtualBox などの仮想ネットワークへ影響する場合もあるため、仮想マシンを使う場合は個別に検証します。
ローカルネットワークの復旧に必要な情報
- 接続できなくなったデバイスの実際の IP とネットワーク範囲
- その接続が Clash で一致したルール
- 社内 DNS が現在のネットワークでしか利用できないか
- VirtualBox、Hyper-V、その他の仮想ネットワークアダプターが同時に存在するか
元へ戻す必要がある場合は、TUN の層だけを元に戻す
TUN を無効にし、先ほど動作した設定とノードは維持して、システムプロキシを有効にします。ネットワークがすぐ復旧する場合、Windows の「ネットワークのリセット」を使う必要はありません。この操作は Wi-Fi、仮想ネットワークアダプター、その他のネットワーク設定をまとめて消去するため、現在の問題より影響範囲がはるかに広くなります。
サービスモード自体は権限を扱う層にすぎないため、残しても構いません。今後使わないと決めた場合は、クライアント設定にあるアンインストール項目からサービスを削除します。システムプロキシへ戻るとブラウザーは正常に復旧し、以前 TUN に依存していたプログラムからの接続は再び記録されなくなります。この差によって、TUN が本当に必要かを直接判断できます。
対象プログラムが TUN の場合にだけ Connections へ表示され、ネットワーク、DNS、ローカルネットワークがすべて正常なら、TUN を維持します。システムプロキシで日常利用するプログラムを処理できる場合は、TUN を無効にしておくほうが簡単です。
