検索
連載

【 Get-NetConnectionProfile 】コマンドレット―― コンピュータが接続しているネットワークの状態を取得するWindows PowerShell基本Tips(46)

本連載は、PowerShellコマンドレットについて、基本書式からオプション、具体的な実行例までを紹介していきます。今回は「Get-NetConnectionProfile」コマンドレットを解説します。

Share
Tweet
LINE
Hatena
「Windows PowerShell基本Tips」のインデックス

連載目次

 本連載では、Windows PowerShellの基本的なコマンドレットについて、基本的な書式からオプション、具体的な実行例までを分かりやすく紹介していきます。今回は、コンピュータが接続している「ネットワークの場所」やインターネットへの到達性といった、ネットワークの状態を取得する「Get-NetConnectionProfile」コマンドレットです。

「ネットワークの場所」とは?

 コンピュータを新しいネットワークに接続した際、以下のような画面を見たことはないでしょうか(画面1)。

画面1
画面1 コンピュータを新規ネットワークに接続した際の確認

 これは、コンピュータが接続されたネットワークを自動的に識別し、初めて接続するネットワークの場合、自宅や会社など信頼できるネットワークなのかどうか、公衆Wi-Fiをはじめとする信頼できないネットワークなのかどうか、ユーザーに確認を求めるウィンドウです。

 ここでのユーザーの選択に基づき、コンピュータは接続されたネットワークに対するプロファイルを決定します。接続されたネットワークに対して設定されたプロファイルが「ネットワークの場所」であり、プロファイルに応じたネットワークセキュリティの設定を適用できます。

 「ネットワークの場所」は、以下の3つが用意されています。

ネットワークの場所の名前 詳細
パブリック 公衆Wi-Fiのような信頼できないネットワーク
プライベート 自宅や会社のネットワークなど、信頼できるネットワーク
ドメイン Active Directoryに参加している信頼できるネットワーク

 前出の画面1のウィンドウで「はい」を選択すると「プライベート」、「いいえ」を選択すると「パブリック」が、そのネットワークに対して設定されます。「ドメイン」は、コンピュータがActive Directoryドメインに参加した際に自動的に設定されるため、ユーザーが明示的に選択することはできません。

「ネットワークの状態」とは?

 ネットワークの場所はGUIからも確認可能ですが、以下の画面2のように「ネットワーク」→「状態」を参照すると、現在接続しているネットワークアダプターがどのネットワークの場所に接続されているかを確認できると同時に、インターネットに接続されているかどうかも確認できます。インターネットへ到達できない場合は、画面3のように表示されます。

画面2
画面2 インターネットへ到達可能な場合の状態表示
画面3
画面3 インターネットへ到達できない場合の状態表示

 これらは「ネットワーク接続状態インジケーター」(NCSI : Network Connectivity Status Indicator)と呼ばれる機能を利用して、現在のネットワークがインターネットへ到達可能かどうかを確認し、状態を表示しています。

 タスクトレイに表示されているネットワークアダプターのアイコンを注意して見てみると、インターネットへ接続されていないネットワークの場合は、画面4のようなアイコン表示になります。これは、NCSIの機能を利用して表示されているものになります。

画面4
画面4 インターネットへ到達できない場合のタスクトレイアイコン

Get-NetConnectionProfileコマンドレットとは?

 「Get-NetConnectionProfile」は、現在接続しているネットワークに対してどの「ネットワークの場所」が設定されているか、インターネットへの到達性はあるのかどうかといった、ネットワークの状態を取得するコマンドレットです。

Get-NetConnectionProfileコマンドレットの書式

Get-NetConnectionProfile [オプション]


Get-NetConnectionProfileコマンドレットの主なオプション

オプション 意味
-Name 状態を取得したいネットワーク名を指定する。省略可能
-InterfaceAlias 状態を取得したいネットワークアダプター名を指定する。省略可能
-IPv4Connectivity 状態を取得したいネットワークのIPv4の接続状態(Disconnected/NoTraffic/Subnet/LocalNetwork/Internet)を指定する。省略可能
-IPv6Connectivity 状態を取得したいネットワークのIPv6の接続状態(Disconnected/NoTraffic/Subnet/LocalNetwork/Internet)を指定する。省略可能


ネットワークの状態を取得する

 Get-NetConnectionProfileコマンドレットをオプションなしで実行すると、現在接続しているネットワークの状態を取得します(画面5)。

コマンドレット実行例

Get-NetConnectionProfile

画面5
画面5 オプションなしでGet-NetConnectionProfileコマンドレットを実行すると、現在接続しているネットワークの状態を取得する

 「NetworkCategory」がこのネットワークに適用されている「ネットワークの場所」で、「IPv4Connectivity」がIPv4によるネットワークの接続状況になります。インターネットへの到達性がある場合は、画面5のように「Internet」と表示されます。ネットワークには接続されているけれど、インターネットに疎通できない場合は、画面6のように「LocalNetwork」と表示されます。

画面6
画面6 インターネットへ到達できないネットワークの場合は「LocalNetwork」と表示される


「ネットワークの場所」の適用に関して

 ネットワークの場所は、IPセグメントやDNSサーバ、DHCPサーバといったネットワークの構成要素が同一であれば、接続しているメディア(ネットワークアダプター)にかかわらず、同一のものが適用されます。以下の画面7では、Wi-Fiと有線LANを切り替えても同一のネットワークの場所(NetworkCategory)が適用されていることが分かります。

画面7
画面7 異なるネットワークアダプターでも同じネットワークの場所が適用される

 同じネットワークアダプターであっても異なるネットワークに接続した場合は、それぞれに設定したネットワークの場所が適用されます(画面8)。

画面8
画面8 同じネットワークアダプターで異なるネットワークに接続した場合

 また、異なるネットワークアダプターで異なるネットワークに同時に接続した場合は、それぞれネットワークの場所が適用されるため、異なるネットワークの場所が併存することになります(画面9)。

画面9
画面9 複数のネットワークアダプターで異なるネットワークに接続した場合

 なお、設定されたネットワークの場所を変更する場合には「Set-NetConnectionProfile」コマンドレットを使用します。

筆者紹介

後藤 諭史(ごとう さとし)

Microsoft MVP for Cloud and Datacenter Management(2012-2023)。現業の傍ら、コミュニティーイベントでの登壇や著作にてMicrosoftテクノロジーに関する技術情報の発信、共有を続けている。ネットワークやハードウェアといった物理層に近いところが大好きな、昔ながらのインフラ屋さん。得意技はケーブル整線。近著は『詳解! Windows Server仮想ネットワーク』(日経BP社)。


Copyright © ITmedia, Inc. All Rights Reserved.

ページトップに戻る