Windows 10でWebブラウザーのmsftconnecttest.comの無限表示の防止

概要

M1 Mac+UTMでのWindows 10 ARMの構築 – senooken.jp」に記した通り、M1 Mac上の評価版Windows 10 ARM (Microsoft Windows [Version 10.0.21390.2025]) でWindows用のアプリケーションを試していると、勝手にWebブラウザーのIE Edgeが起動してくることに気づいた。

放置していたら無限にニュースのタブが開かれ、作業途中でもお構いなしにWebブラウザーが起動してしまう。フォーカスがWebブラウザーに奪われ、作業が強制的に中断され、非常に邪魔だった。これの防止方法を見つけたので整理する。

デスクトップを録画して、Webブラウザー起動直後のURLを注意深く観察すると、どうやら<http://www.msftconnecttest.com/redirect>のURLを開こうとして、失敗してスタートページが表示されているようだった。

原因

このURLで検索すると、同じ問題の「Windows10でmsftconnecttest.comへのredirectを止めたい【Ver1903】 – Microsoft コミュニティ」の報告が見つかった。

ここで引用されている「コンピューター Internet Explorer企業ネットワークまたはパブリック ネットワークに接続すると、[エッジ] ウィンドウまたは [エッジ] ウィンドウが開きます。 – Windows Client | Microsoft Docs」がそのものずばりの内容だった。

Windowsでは、場所認識 (NLA: Network Location Alert?) サービスを利用して、ネットワークのプロパティ(パブリックだとかプライベートだとか) を検出して接続を管理しているらしい。そして、NLAは接続状態インジケーター (NCSI: Network Connection State Indicator?) というコンポーネントを使って、接続の確立を判断する。 NCSIの接続の確立時に例のサイトを表示している。

このNCSIによる接続の確立確認は、以下の3種類の手続きで行われる。

  1. NCSIアクティブプローブとネットワーク状態アラート
  2. 認証と自動サインインページ
  3. NCSIパッシブ監視とネットワーク状態アラート

今回問題となっている<http://www.msftconnecttest.com/redirect>は、3のNCSIパッシブ監視の手続きで開かれている。

プロキシ サーバーを使用してインターネットに接続するネットワークに接続する場合や、ネットワーク制限によって NCSI がアクティブなプローブプロセスを完了できない場合など、場合によっては、Windows は既定のブラウザーで MSN Portal ページを開きます。コンピューター上のネットワーク トレースを分析すると、それに対する HTTP 接続が表示され、その後http://www.msftconnecttest.com/redirect に MSN ポータルへの接続が表示されます。Windowsプローブ プロセスの利点を得て、このページを開きます。 ページが読み込まれると、NCSI はコンピューターがインターネットにアクセスできると結論付きます。 異なるプローブが失敗して成功すると、ネットワーク状態アラートが表示され、その後消えます。
NCSI パッシブ監視、MSN ポータル ページ、およびネットワーク状態アラート

該当ページが正常に開かれないため、この手続きが繰り返されているのが原因のようだ。

対策

当初はネットワークプロファイルが「パブリック」だったのが問題かと思い、これを「プライベート」にすれば解決するかと思ったのだが解決しなかった。

そのため、上記のマイクロソフトのページに書かれているレジストリーの設定で対応する。

具体的には、以下のレジストリーに1を設定して対応する。

HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\NetworkConnectivityStatusIndicator\DisablePassivePolling

デフォルトではDisablePassivePollingのエントリーは存在しないので作成する必要がある。

コマンドで行う場合、管理者権限でCMD.exeを開いて以下のコマンドを実行していく。

値の確認は以下のコマンドで行う。

reg query HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\NetworkConnectivityStatusIndicator

登録は以下のコマンドで行う。

reg add HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\NetworkConnectivityStatusIndicator ^
/v DisablePassivePolling /t REG_DWORD /d 1

登録したレジストリーは以下のコマンドで削除できる。

reg delete HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\NetworkConnectivityStatusIndicator ^
/v DisablePassivePolling /f

設定後、再ログインすると設定が反映され、例のWebブラウザーの自動起動がなくなる。

なお、この設定はシステム全体に影響あるため、HKEY_CURRENT_USERのルートで設定しても効果がなかった。

結論

Windows 10でのmsftconnecttest.comの無限表示の防止策を記した。

放置するとWebブラウザーのタブの数がとんでもないことになり、メモリーも無駄に消費する。キーやマウス操作のフォーカスが強制的に中断されてしまうのが何よりも問題だった。

いちいちストレスになっていたのだが、今回の対応でこれが解決してだいぶましになった。

評価版Windows 10 ARMをM1 MacのUTM上で使用すると、言語切替だとかWebDAVだとかで今まで気にしたことのなかったWindowsの問題に遭遇している。今回の件もこの一環に思う。

正式版のWindows 10 ARMの発売まで我慢したい。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です