[登録されているタグ]

[記事公開日]2025/12/21

PowerShellでTCP接続を確認する|Get-NetTCPConnectionの使い方

📝 はじめに

ネットワークやアプリのトラブル対応をしていると、
「このPCで、どのTCP接続が張られているのか」
「特定のポートやプロセスが通信しているか」
を確認したくなる場面は多いのではないでしょうか。

そんなときに役立つのが
Get-NetTCPConnection です。
この記事では、PowerShellで現在のTCP接続状況を確認する基本的な使い方を、
実務の切り分け視点で分かりやすく解説します。

こんな場面で便利

  • どのポートが通信中かを確認したいとき
  • 不要な通信や怪しい接続がないか調べたいとき
  • アプリやサービスが正しく待ち受けているか確認したいとき

✅ このコマンドでできること(要点)

  • 現在確立されているTCP接続を一覧で確認できる
  • ローカル/リモートのIPアドレスとポートを把握できる
  • 接続状態(Listen / Established など)を確認できる
  • プロセスID(PID)と関連付けて調査できる

✅ Get-NetTCPConnection でできること

Get-NetTCPConnection は、
Windows上で現在使用されている
TCP通信の接続情報を一覧表示するコマンドです。

cmdの netstat と似た役割ですが、
PowerShellでは結果をオブジェクトとして扱えるため、
条件抽出やスクリプト連携がしやすいのが特徴です。

🧩 基本構文

Get-NetTCPConnection

引数を付けずに実行すると、
すべてのTCP接続情報が一覧で表示されます。

▶ 基本的な使い方(まずこれだけ)

🔹 TCP接続を一覧で確認する

Get-NetTCPConnection

ローカルアドレス、リモートアドレス、状態(State)が表示されます。
一覧が表示されていれば、TCP接続情報は正しく取得できています。

🔹 接続状態を確認する

Get-NetTCPConnection | Select-Object LocalAddress, LocalPort, State

Established なら通信中、
Listen なら待ち受け状態を意味します。
この状態が確認できれば、挙動は把握できています。

🛠 よく使われる指定例

🔹 特定ポートの接続を確認する

Get-NetTCPConnection -LocalPort 443

Webサーバー(HTTPS)など、
特定ポートの使用状況を調べたい場合に便利です。

🔹 待ち受け中のポートだけを確認する

Get-NetTCPConnection | Where-Object {$_.State -eq "Listen"}

サービスが正しく起動しているかの確認に使えます。

💼 実務でよく使う使用例(応用)

🔹 通信中(Established)の接続を確認する

Get-NetTCPConnection | Where-Object {$_.State -eq "Established"}

実際に外部と通信している接続だけを抽出できます。

🔹 プロセスとひも付けて確認する

Get-NetTCPConnection |
Select-Object LocalPort, RemoteAddress, State, OwningProcess
組み合わせ例

🧩 よくある勘違い・つまずきポイント

  • TCP接続があっても通信が成功しているとは限らない
  • Listen状態は「接続待ち」であり通信中ではない
  • 一瞬で消える接続は表示されないことがある
  • 管理者権限がないと一部情報が見えない場合がある
  • UDP通信は対象外である

🔄 cmdとの違いについて

cmdの netstat は表示が固定的ですが、
Get-NetTCPConnection は
条件指定やオブジェクト操作がしやすい点が大きな違いです。
スクリプトでの再利用性が高くなります。

⚠ エラー・うまく動かないときの確認ポイント

  • 管理者権限でPowerShellを起動しているか
  • 対象のアプリやサービスが起動しているか
  • ファイアウォールやセキュリティソフトの影響
  • 確認したい通信が短時間で終了していないか

🧠 注意点

Get-NetTCPConnection は状態確認用のコマンドです。
接続を切断・制御する機能はないため、
実際の対処はサービス設定やファイアウォール設定と併せて行いましょう。

📌 まとめ

  • Get-NetTCPConnectionはTCP接続確認の基本コマンド
  • ポート・状態・プロセスをまとめて把握できる
  • 不審な通信やトラブル切り分けに有効
  • 次は疎通確認やプロセス調査と組み合わせると理解が深まる

🔎 PowerShellコマンドを探す

やりたいことからコマンドを探せます。

  • ファイルを削除したい
  • 一覧を表示したい
  • 文字列を検索したい
  • 条件で絞り込みたい
  • エラーや実行できない原因を調べたい
  • TCP接続を確認したい
  • どのアプリが通信しているか調べたい
Generic filters
すべてを開く | すべてを閉じる

ページ上部へ戻る