はじめに:なぜ「TUN」と「システムプロキシ」を区別するのか

Clash 系クライアント(Clash Verge Rev、ClashX Meta、FlClash など)を初めて設定するとき、多くのユーザーが最初に迷うのが システムプロキシTUN モード のどちらを使うべきかという点です。どちらも「プロキシを有効にする」スイッチのように見えますが、トラフィックを拾うレイヤー が根本的に異なります。

システムプロキシは OS が提供する HTTP/HTTPS/SOCKS 設定を書き換え、プロキシ対応アプリだけを経由させます。一方 TUN モードは仮想ネットワークアダプタ(TUN デバイス)を作成し、カーネルレベルでアウトバウンド通信を横取りするため、プロキシ設定を無視するアプリにも効きます。日本語の検索では「Clash TUN モード 設定」「システムプロキシ 違い」「グローバルプロキシ 使い方」といったキーワードが多く、本記事では原理・比較・各 OS の設定手順まで一通り整理します。

前提:本記事は Mihomo(旧 Clash.Meta)コアを利用する現行クライアントを想定しています。古い Clash Premium 単体の記事と設定項目名が異なる場合があります。

システムプロキシとは?仕組みと特徴

システムプロキシ(System Proxy)は、Windows の「インターネットオプション」や macOS の「ネットワーク」設定にあるプロキシサーバー欄を、Clash クライアントが自動で書き換える方式です。有効にすると、通常は次のような値が設定されます。

  • HTTP プロキシ:127.0.0.1:7890(ポートはクライアント設定により異なる)
  • HTTPS プロキシ:同上
  • SOCKS プロキシ:127.0.0.1:7891 など

ブラウザ(Chrome、Edge、Firefox など)、多くの Electron アプリ、一部のメッセージングクライアントは、OS のシステムプロキシ設定を参照して通信します。そのため、設定が簡単で管理者権限が不要なことが多く、日常の Web 閲覧には十分な選択肢です。

システムプロキシの限界

次のような通信は、システムプロキシだけでは拾えない、または拾いにくいケースがあります。

  • コマンドラインツールcurlgitnpmpip などは環境変数 HTTP_PROXY を別途設定しない限りプロキシを通りません
  • 一部ゲーム・対戦マッチングクライアント:独自プロトコルで直結するもの
  • UWP / Microsoft Store アプリ(Windows):ループバック制限によりローカルプロキシへ接続できないことがある
  • プロキシ非対応の常駐ソフト:システム設定を読まない独自スタックを使うアプリ

「ブラウザでは Google に繋がるのに、ターミナルではタイムアウトする」という症状の多くは、この違いが原因です。

TUN モードとは?仮想 NIC による全体キャプチャ

TUN モード(TUNnel mode)は、OS に仮想のネットワークインターフェースを追加し、そこへ流れる IP パケットを Clash(Mihomo)コアが受け取ってルール分流・プロキシ転送を行う方式です。ユーザーから見ると「グローバルプロキシ」「全体プロキシ」「VPN 的な動作」と説明されることが多いですが、厳密には VPN プロトコル(WireGuard 等)ではなく、ローカルでのトラフィック横取り です。

代表的なドライバ・実装は次のとおりです。

  • Windows:Wintun(WireGuard プロジェクト由来の仮想 NIC ドライバ)
  • macOS:utun デバイス(システムが提供する TUN インターフェース)
  • Linux:tun0 などの TUN デバイス(capabilities または root が必要な場合あり)
  • Android:VPNService API 経由(FlClash などで「VPN モード」として表示)

TUN を有効にすると、DNS クエリも Clash 側で処理できるため、DNS 漏洩対策 と組み合わせやすい点がメリットです。設定画面で「DNS ハイジャック」「fake-ip」などを有効にしているかも合わせて確認してください。

権限について:TUN モードは仮想 NIC の作成・ルーティング変更を伴うため、Windows では管理者としての実行、macOS では初回のシステム拡張許可、Linux では root または CAP_NET_ADMIN が必要になることがあります。

一覧比較:システムプロキシ vs TUN モード

比較項目 システムプロキシ TUN モード
動作レイヤー アプリケーション層(OS プロキシ設定) ネットワーク層(仮想 NIC・IP パケット)
対象トラフィック プロキシ対応アプリ中心 原則すべての TCP/UDP(ルールで除外可能)
管理者権限 通常不要 多くの環境で必要
設定の手軽さ ワンスイッチで有効化しやすい ドライバインストール・再起動が必要な場合あり
CLI・ゲーム・UWP 拾えないことが多い 拾いやすい(ルール分流は維持)
DNS 制御 アプリ依存、漏洩しやすい Clash 側で一元管理しやすい
リソース消費 比較的軽い やや高い(仮想 NIC・追加処理)
併用 同時オンは非推奨(二重処理でエラーの原因)

システムプロキシが向いている場面

次のような利用スタイルなら、まずはシステムプロキシだけで十分なことが多いです。

  • 主な用途が ブラウザでの海外サイト閲覧(動画・SNS・検索など)
  • 会社や学校の PC で 管理者権限が使えない
  • ルール分流で国内サイトは直結、海外だけプロキシという 日常の「賢い分流」 が目的
  • ターミナルやゲームをプロキシに載せる必要がない

Clash Verge Rev では、サブスクリプションをインポートしノードを選んだあと、ホーム画面の「システムプロキシ」をオンにするだけで開始できます。動作確認はブラウザで十分です。

TUN モードが向いている場面

次のニーズがある場合は、TUN モードの検討をおすすめします。

  • 開発環境docker pullgo get、CI ツールなど CLI からの外部アクセス
  • ゲーム・ボイスチャット:プロキシ設定を読まないクライアント
  • Microsoft Store / UWP アプリ(Windows)
  • DNS 漏洩を抑えたい:プロバイダー DNS ではなく Clash 経由で解決したい
  • 「グローバルに拾いたいが、ルール分流は維持したい」:TUN でもルールモードは有効(国内直結ルールはそのまま機能)

Android では FlClash などが VPN 権限を求めるのも、実質的に TUN 相当の全体キャプチャのためです。デスクトップと同じ考え方で使い分けできます。

Windows:Clash Verge Rev での設定手順

Windows では Clash Verge Rev が最も情報が多く、TUN(Wintun)のサポートも安定しています。

システムプロキシを有効にする

  1. サブスクリプションを「プロファイル」にインポートし、利用するプロファイルを選択します。
  2. 「プロキシ」タブでノードまたは自動選択グループを選びます。
  3. メイン画面の「システムプロキシ」スイッチをオンにします。
  4. ブラウザで海外サイトが開けるか確認します。

TUN モードを有効にする

  1. Clash Verge Rev を管理者として実行します(ショートカットの互換性設定で常時管理者化も可)。
  2. 「設定」→ コア関連の項目で「TUN モード」をオンにします。
  3. Wintun ドライバのインストール確認が出たら許可します。
  4. システムプロキシをオフにし、CMD で ping 8.8.8.8curl https://www.google.com を試して CLI 経由も確認します。
運用のコツ:普段はシステムプロキシのみ、開発やゲームのときだけ TUN に切り替える、という使い分けも可能です。切り替え時は必ずどちらか一方だけをオンにしてください。

macOS:ClashX Meta / Clash Verge Rev での設定

macOS では ClashX Meta または Clash Verge Rev が一般的です。メニューバーアイコンから「システムプロキシを設定」を選ぶとシステムプロキシが有効になります。

TUN(Enhanced Mode)の有効化

  1. 設定 → 「TUN モード」または「Enhanced Mode」を有効にします。
  2. 初回は「システム拡張」やネットワークフィルタの許可ダイアログが表示される場合があります。セキュリティとプライバシーから許可してください。
  3. システムプロキシと TUN の同時有効は避け、ターミナルで curl -I https://www.google.com を確認します。

Apple Silicon(M シリーズ)でも Wintun に相当する utun 経由の実装が使われます。Intel Mac でも手順は同様です。

Linux:Mihomo / Clash Verge Rev での設定

Linux では GUI の Clash Verge Rev や、systemd で動かす Mihomo コアがよく使われます。TUN を使う場合は次を確認してください。

  • プロセスに CAP_NET_ADMIN を付与するか、root で実行する
  • iptablesnftables と競合していないか
  • NetworkManager などがルーティングを上書きしていないか

設定ファイルで TUN を有効にする場合の最小例(参考):

tun:
  enable: true
  stack: system
  auto-route: true
  auto-detect-interface: true

ディストリビューションによっては system の代わりに gvisor スタックの方が安定する報告もあります。接続できない場合はスタック種別の変更を試してください。

上級者向け:config.yaml での tun セクション

GUI ではなく設定ファイルを直接編集する場合、Mihomo 形式では tun: ブロックで制御します。よく触る項目は次のとおりです。

  • enable:TUN のオン/オフ
  • stacksystem / gvisor / mixed
  • dns-hijack:DNS を Clash に誘導
  • inet4-route-address:ルーティングする IPv4 範囲の調整

システムプロキシ相当の機能は portmixed-port でローカルリスンし、クライアントが OS 設定を書き換える形で連携します。TUN とポート設定は独立しているため、「TUN オン + mixed-port 有効」は問題ありませんが、「TUN オン + システムプロキシスイッチオン」はクライアント側で二重経路になりやすい点に注意してください。

よくある間違いと対処

両方同時にオンにしている

症状:接続が不安定、一部サイトだけ失敗、速度が極端に遅い。対処:TUN を使うときはシステムプロキシをオフにする(逆も同様にどちらか一方)。

TUN なのに管理者権限がない(Windows)

症状:TUN スイッチがすぐオフになる、仮想 NIC が作成されない。対処:管理者として再起動し、Wintun の再インストールを試す。

モードが「グローバル」になっている

症状:国内サイトまで遅い。対処:「ルール」モードに戻し、GEOIP や DOMAIN-SUFFIX ルールが効いているか確認する。TUN は「全部プロキシに送る」モードではなく、ルール分流と併用するのが Clash の強みです。

UDP 非対応ノードでゲームや DNS が失敗

症状:ブラウザは OK だがゲームや VoIP だけダメ。対処:UDP をサポートするノード・プロトコル(一部の Trojan/Hysteria2 等)に切り替える。

よくある質問

TUN とシステムプロキシは同時に使えますか?

技術的には可能な場合もありますが、推奨しません。公式ドキュメントや各クライアントの注意書きでも、二重処理による不具合が報告されています。TUN を主モードにするならシステムプロキシはオフにしてください。

初心者はどちらから始めるべき?

まずはシステムプロキシでサブスクリプションとルール分流に慣れ、CLI やゲームで困ったら TUN に進む流れが安全です。

TUN は VPN と同じですか?

見た目は似ますが、Clash の TUN はローカルでパケットを処理し、出口は設定したプロキシノードです。企業 VPN のような暗号化トンネルそのものではありません。プライバシー要件が高い場合はノード提供者の信頼性と DNS 設定も合わせて確認してください。

他ツールとの比較:なぜ Clash でモードを選べるのか

ブラウザ拡張のプロキシはインストールが楽ですが、ブラウザ外のトラフィックは一切扱えず、ルール分流もありません。単一の SOCKS5 クライアントを手動で各アプリに設定する方法は、アプリごとにポートを覚える負担があり、UWP やゲームには向きません。

一方 Clash(Mihomo)エコシステムは、ルール分流・サブスクリプション同期・遅延テスト に加え、同じ設定のままシステムプロキシと TUN を切り替えられます。Clash Verge Rev や ClashX Meta では GUI のスイッチ一つでモードを変えられ、config.yaml を深く理解していなくても「ブラウザだけ」「PC 全体」という段階的な運用が可能です。開発が止まった Clash for Windows 系と比べても、TUN と新プロトコルへの追従が継続されている点が大きな違いです。

「コマンドは通るのにブラウザだけおかしい」「その逆」といった切り分けに迷ったときは、本記事の比較表に当てはめてモードを見直すと、原因の大半は解消できます。環境に合ったクライアントは クライアントダウンロードページ から入手できます。

Clash を無料ダウンロードして、快適なネット環境を始める →