コンテンツにスキップ

Top

UWPアプリにループバック接続できない

Windows は セキュリティ目的で、 UWP(Universal Windows Platform)アプリにループバックアクセスできない。

具体的にはUWPでサーバを作ったとして、そのサーバに別のPCからアクセスはできるが(Firewallの設定とか必要だけどそれは今置いといて)、自分自身のPCからアクセスできない。

http://localhost 的な感じでアクセスできない、ということ。

開発とかめんどい、別PC用意すんの?と思ってたら抜け道があることがわかった。

以下にその方法を記すが、結論をいうとうまくいかなかった。なんでかはしらん。

CheckNetIsolation.exe を使ってループバックアクセスできるようにする

まずはループバックアクセスしたいアプリ名を取得する。

以下のコマンドで何となくあたりをつけて取得する。
今回は Microsoft Store から取得した MJPEGStreamerをループバック有効にしたいと思っていたので、MJPEGStreamerでひっかける。

PS >Get-AppxPackage | Select -Property Name,PackageFamilyName | Select-String MJPEGStreamer

@{Name=23433flyinggorilla.MJPEGStreamer; PackageFamilyName=23433flyinggorilla.MJPEGStreamer_9w9yej7y65a12}

PackageFamilyNameが必要となる。ここでは、 23433flyinggorilla.MJPEGStreamer_9w9yej7y65a12。

んで、以下のコマンドを実行。

PS >CheckNetIsolation.exe LoopbackExempt -a -n="23433flyinggorilla.MJPEGStreamer_9w9yej7y65a12"
成功しました。

成功しました、とか言われてもどうなんかわからんので確認。

PS > CheckNetIsolation.exe LoopbackExempt -s


リスト ループバックは AppContainer を除外しました
[1] -----------------------------------------------------------------
    名前: 23433flyinggorilla.mjpegstreamer_9w9yej7y65a12
    SID:  S-1-15-2-1519130495-1896540745-4269555798-1075228035-3866979113-3690274334-556783814

成功しました。

うまく除外した、といっているのでOKなのだろう。

やってみたけどループバックアクセスできなかった

では早速Windows版のmjpeg-streamerを起動し、http://localhost:8000/stream.mjpeg でループバックアクセス...したけど映らん!

別のPCからはアクセスできてるので、やはりループバックの問題に引っかかっている。

困った。知らん。以上!