次の方法で共有


NCSI の概要

重要

Azure Front Door によって以前ホストされていたパブリック NCSI プローブ サーバーは、現在 Akamai によってホストされています。 この変更は、2023 年 6 月 20 日に行われました。 これがユーザーにどのように影響するかを理解するには、NCSI の FAQ ページを参照してください。

ネットワーク接続状態インジケーター (NCSI) は、現在のネットワーク接続状態を視覚的に表すのに役立つ機能です。 NCSI アイコンは、既定ではタスク バーの右下にあります。 お使いのデバイスがネットワークにどのように接続されているか、どのオペレーティング システムを実行しているかによって、見た目は異なります。

アイコン 説明
接続済み (有線)
接続済み (ワイヤレス)
接続済み (インターネットなし)

このアイコンをクリックすると、ネットワークの状態が表示され、[ネットワークとインターネットの設定] というリンクをクリックすると、ネットワーク アダプターの詳細が表示されます。 実行している Windows のバージョンによっては、NCSI アイコンのタスク バーにあるオプションが異なる場合があります。

NCSI の機能

NCSI は、エンドポイントに送信されたネットワーク要求とそれに続く応答である、ネットワーク プローブを使用します。 NCSI のプローブは、"アクティブ プローブ" と呼ばれ、これは HTTP 要求/応答です。 また、"パッシブ プローブ" と呼ばれるパッシブ ポーリングも使用します。これは、ネットワーク トラフィックをパッシブに調べて接続性を判断します。

Windows での NCSI の目的について

NCSI は、ネットワーク接続が存在し、それがインターネットかローカルのみかを判断する役割を担うコンポーネントです。 NCSI が開発された理由は、ネットワーク構成を独自に決定するという複雑なタスクを、アプリケーション側でしなくても良いようにするためです。 ネットワーク経由でタスクを実行するには、ネットワークがまだアクセス可能かどうかに常に注意を払う必要があります。 もしネットワークが停止した場合、それがたとえ断続的であっても、アプリケーションは操作をタイムアウトさせ、接続が安定するまでネットワークを継続的にテストすることになります。

これは一見簡単なことのように思えますが、実際にはプロキシ、ホットスポット、キャプティブ ポータルの背後にあるなど、多数の環境要因に対するチェックを実行しなければなりません。 NCSI では、検出されたネットワークが要求を満たすことができるネットワークであるかどうかを認識する必要があります。 これは、完全なインターネット アクセスが必要なのか、プライベートな企業アクセスが必要であるかなどです。 ユーザーは、ネットワーク接続が制限されているシナリオや接続されていないシナリオの対処方法がアプリケーション側で決定される間、NCSI が完了するかタイムアウトするまで待つ必要があります。

アクティブ プローブ

アクティブ プローブは、特定の NCSI アドレスに対して Web プローブ サーバーに送信される http 要求です。 このサーバーはインターネット上の Microsoft によってホストされていますが、まれに企業独自のプライベート プローブ サーバーである可能性もあります。 NCSI から送信されたプローブが有効な応答として返されると、クライアント デバイスがインターネットに接続されているとみなされます。

NCSI でインターネット接続が検出されない場合は、プローブが完了していないか、プローブがエラーで完了しています。 完了しない理由には、デバイス、ネットワーク構成、またはその他の環境問題が考えられます。 エラーで完了する場合の例としては、HTTP 403 Forbidden 応答を受信した場合で、これは通常、プロキシによって送信プローブがブロックされたことを示しています。

警告

パッシブ ポーリングだけではすべてのネットワーク接続の問題を特定できないため、NCSI の問題を解決する目的でアクティブ プローブを無効にすることは避けてください。

HTTP プローブのホストと内容は事前に定義されており、以下のレジストリ パスに存在します。

HKLM\SYSTEM\CurrentControlSet\Services\NlaSvc\Parameters\Internet

NCSI は、IPv4 および IPv6 のアクティブ プローブをそれぞれ並行して送信します。 いずれかのプローブが成功した場合、NCSI はデバイスにインターネット接続があると判断します。

パッシブ プローブ

アクティブ プローブと同様に、パッシブ プローブでも受信パケットから学習した情報を使用してネットワークの状態を判断します。 どちらのプローブ方法も、断続的なネットワークの状態を異なる方法で判断するため、互いに補完し合います。 たとえば、ルーターで断続的に一時的な接続性の問題が発生し、クライアント端末ではインターフェースの状態が変わっていることを検出できない場合など、特定の条件下ではアクティブ プローブが正しく機能しないことがあります。 このような断続的な接続の問題が発生し、アクティブ プローブが検出漏れの結果を出す可能性がある場合でも、パッシブ ポーリングでは、ネットワーク トラフィックによる接続状態を判断し、インターネット接続を維持できます。

Note

Windows 11 時点では、NCSI はネットワーク リスト マネージャー サービス (ネットワーク プロファイル マネージャーとも呼ばれます) 内でホストされています。 以前の OS イテレーションは、Network Location Awareness (NLA) サービスでホストされていました。

パッシブ プローブの主な目的は、受信したパケット データに基づいて、アクティブなすべてのネットワーク インターフェイスの NCSI の接続状態を更新することです。 アクティブな各インターフェースごとに、プローブは、送信者から送信され通過したホップ数についてインバウンド パケットを常に検査することにより、インターネットまたはローカルのいずれかの状態を更新することができます。

アクティブ プローブとパッシブ プローブのどちらでも、問題が発生する可能性があります。 詳細については、「ネットワーク プローブ エラーの理由」を参照してください。

プロキシ

NCSI は、アクティブ プローブの実行時に保存されたプロキシ情報を使用することで、プロキシと連携します。 アクティブ プローブがエンタープライズ ネットワークの空間からインターネットに出ないという最も一般的な問題は、以下によるものです。

  • プロキシは存在しているが、まだ検出されていない。
  • プロキシは検出されているが、プローブの実行時にクライアント デバイスに到達できない。
  • プロキシ自動構成 (PAC) ファイルが正しく構成されておらず、www.msftconnecttest.com が正しいプロキシにマップされていない。
  • プロキシが正しく構成されていない。

NCSI は、以下のレジストリ パスから、手動でプロビジョニングされたプロキシ アドレスを検出します。

HKLM\SYSTEM\CurrentControlSet\Services\NlaSvc\Parameters\Internet\ManualProxies

ヒント

Windows 10 では、[スタート]>[設定]>[ネットワークとインターネット]>[プロキシ]>[自動プロキシ セットアップ] の順に移動して、プロキシの構成を手動で行うことができます。

キャプティブ ポータル

NCSI は、プローブをインターネットに正常に接続して企業内のプロキシを検出する場合と同じ方法で、モバイル デバイスを利用するコンシューマー向けに、企業の環境の外部にある障害も判断します。 キャプティブ ポータルは、主に空港、病院、コーヒー ショップなどの公共環境で見られますが、企業ネットワークを中継するゲートウェイにもなります。

キャプティブ ポータルは、インターネットへの送信を許可する代わりに、プローブに HTTP リダイレクトまたは空の応答を送信することがあります。 このように NCSI は、以下の条件が当てはまる限り、キャプティブ ポータルの背後にあるかどうかを判断することができます。

  • アクティブな HTTP プローブが送信されたが、既知のプロキシを経由していない。
  • プローブが応答を受け取った。
  • 応答のペイロードが、期待される内容 (“Microsoft Connect Test”) と一致しない。

その他のリファレンス