チュートリアル 2026-04-24 · 約 16 分

Microsoft Store・UWP が Clash を通らない──ループバック解放と TUN で直す

Edge や Chrome は問題ないのに、Microsoft Store だけ更新できない。あるいは UWP 版の公式アプリだけログインできない──このパターンは、Clash の設定ミスというより Windows が UWP に課しているネットワーク隔離が原因であることが多いです。本記事では、システムプロキシルールモードが既に有効でも Store が 127.0.0.1 上のローカルプロキシに届かない理由を整理し、CheckNetIsolation によるループバック解放と、隔離の外側からトラフィックを拾う TUN モードの二段構えを、実際にコマンドを叩ける粒度でまとめます(利用規約・法令・組織ポリシーを遵守したうえでの自己責任設定を前提とします)。

なぜ UWP だけ「プロキシを無視」するのか

デスクトップの Win32 アプリは、多くの場合 WinINET のシステムプロキシ設定や環境変数を参照して 127.0.0.1:ポート へ接続できます。一方、Microsoft Store やサンドボックス寄りの UWP は歴史的経緯もあって、同一マシン上のローカル宛て通信(ループバック)を既定で制限します。Clash 系クライアントが「システムプロキシを有効化」しても、実体は ローカルで待ち受けている HTTP/SOCKS プロキシへ向かうため、UWP から見ると 隔離ポリシーに阻まれて届かない──という見え方になります。

症状としては次のようなものが典型です。

  • ブラウザやターミナル(Git / npm 等)は海外ノード経由で開けるが、Store のダウンロードや更新だけ失敗する。
  • 一部の UWP だけ認証や API がタイムアウトし、同サービスの Web 版は普通に動く。
  • Clash のログに Store 関連の接続がほとんど出てこない(そもそもローカルプロキシに到達していない)。

まずは 「Clash for Windows のセットアップ」で、mixed-portシステムプロキシ・購読の読み込みまで一通り終わっている前提で読み進めてください。土台が未整備だと、ループバック以前の問題に見えてしまいます。

切り分け:Clash 本体とシステムプロキシが生きているか

ループバック解放に進む前に、Win32 側でローカルプロキシが実際に応答しているかを確認します。Clash のダッシュボードやログで 127.0.0.1mixed-port(例:7890)が一致しているか、TUN をまだ有効にしていない状態でブラウザが期待どおり出口を変えられるか──を見ます。

ここでブラウザもダメなら、「接続中なのに繋がらない?DNS と fake-ip」や、「Clash 終了後のシステムプロキシ復旧」のほうが先です。逆にブラウザだけ健全で Store だけ壊れているなら、本文の ループバック隔離を強く疑えます。

メモ

クライアントによって UI 文言は違いますが、「システムプロキシをオン」「ルールまたは グローバル」の組み合わせが一般的です。TUN は後段のオプションとして切り分けに使います。

手順 1:CheckNetIsolation でループバック解放する

Microsoft が用意している CheckNetIsolation.exe を使うと、特定の UWP パッケージに対して ループバック例外(LoopbackExempt)を追加できます。管理者権限のコマンドプロンプトまたは PowerShell で実行するのが一般的です。

まず対象の Package Family Name を調べます。PowerShell の例(Store 本体):

# Run PowerShell as Administrator; query Microsoft Store package family name
Get-AppxPackage *WindowsStore* | Select-Object Name, PackageFamilyName

表示された PackageFamilyName(例:Microsoft.WindowsStore_8wekyb3d8bbwe のような文字列)を控え、次を実行します。

# Replace with your PackageFamilyName from Get-AppxPackage
CheckNetIsolation LoopbackExempt -a -n="Microsoft.WindowsStore_8wekyb3d8bbwe"

-a は追加(add)、-n は対象名です。複数の UWP が同じ症状なら、それぞれの Package Family Name に対して繰り返します。既存の一覧確認は CheckNetIsolation LoopbackExempt -l です(環境により出力形式は異なります)。

実務での進め方

  1. 管理者で PowerShell または cmd を開く。
  2. Get-AppxPackage で問題のアプリの PackageFamilyName を取得する。
  3. CheckNetIsolation LoopbackExempt -a -n="..." を実行する。
  4. Store を一度終了し、Clash のシステムプロキシが有効な状態で更新を再試行する。

セキュリティと運用

ループバック解放は 隔離を緩める操作です。必要なパッケージにだけ最小限付与し、開発・検証用に「全部許可」へ寄せすぎないほうが安全です。会社支給 PC では IT ポリシーに抵触する場合があります。

手順 2:TUN モードで「プロキシを読まない経路」を拾う

ループバック解放でも残るケースでは、TUN 仮想アダプタがトラフィックをカーネル近傍で Clash に流し、アプリがシステムプロキシを参照しなくてもポリシーを適用できる点を利用します。Clash Meta(Mihomo)系では TUN / システムスタックの設定名がクライアントごとに違うため、利用中の GUI の公式手順に従って有効化してください。

TUN を入れると DNS の取り扱い他 VPN / フィルタドライバとの競合が表に出やすくなります。次が起きたら、TUN 単体を疑います。

  • 有効化直後から 全アプリが名前解決に失敗する(fake-ip と期待の食い違いなど)。
  • 特定のセキュリティソフトや別 VPN と 仮想アダプタが衝突する。
  • Store は通ったが、別の業務アプリが逆に不通になる──ルール順と MATCHの再確認が必要。

DNS まわりの整理は 同リンク、プロセス単位の分流が必要なら 「Steam / Epic と TUN」の考え方(PROCESS-NAME 等)も参考になります。

WSL2 やターミナルとは別問題

ターミナルが localhost のプロキシに届かない話は、「WSL2 と Clash」で扱っている 仮想ネットとポート転送の話と近いですが、UWP のループバック隔離は別レイヤーです。WSL2 側の HTTP_PROXY を直しても Store が直らないのは自然なので、症状ごとに手順を分けてください。

開発者向けに ループバックを広く許可するツールやスクリプトも流通していますが、中身は結局 CheckNetIsolation 系の操作であることが多いです。何を許可したか追跡できるよう、コマンドで明示的に追加・確認できる形を推奨します。

組織ポリシー・別端末との差

企業環境では Microsoft Store が無効化されていたり、プロキシが 明示的な PAC / WPAD 前提だったりします。そうした場合、個人向けの Clash 手順どおりにいかず、MDM や社内プロキシの設計が先です。また Windows のバージョンや SKU によって、UWP の挙動や管理コマンドの可否も変わり得ます。

よくある質問

ループバック解放は再起動で消えますか?

通常、LoopbackExempt に追加したエントリは OS 再起動後も残ることが多いです。消えたように見えたら、別ユーザープロファイルで実行していないか、機能更新後に再確認してください。

解放を取り消したい

CheckNetIsolation LoopbackExempt -d -n="PackageFamilyName" で削除(delete)できる場合があります。まず -l で現在の一覧を確認します。

TUN だけで足りることはある?

あります。環境によっては TUN が有効なら ループバック以前にトラフィックが Clash に乗るためです。ただし副作用(DNS・他 VPN)が大きいので、まずシステムプロキシ+ループバック解放のほうが変更範囲が狭いことが多いです。

チェックリスト

  1. Win32 ブラウザでローカルプロキシ経由の疎通が取れているか確認する。
  2. 問題の UWP の PackageFamilyNameGet-AppxPackage で取得する。
  3. 管理者で CheckNetIsolation LoopbackExempt -a -n="..." を実行する。
  4. Store を再起動し、更新・ログインを再試行する。
  5. ダメなら TUN を有効化し、DNS・ルール順・競合 VPN を切り分ける。

まとめ

Microsoft Store や UWP が Clash を「無視」する主因のひとつは、localhost プロキシへのループバックが OS によりブロックされていることです。CheckNetIsolation で対象パッケージを明示的に解放し、それでも足りなければ TUN でキャプチャ点を上げる──この二段が 2026 年時点でも実務で効く組み合わせです。

Clash を無料ダウンロードして、快適な接続を体験する

Store と UWP を Clash に載せる

ループバック解放と TUN で、システムプロキシと隔離のギャップを埋めます。

Clash をダウンロード