web-dev-qa-db-ja.com

特定のプログラムはどのポートを使用していますか?

特定のプログラムが使用しているポートを把握できるようにしたい。オンラインで利用できるプログラムや、コンピューターのどのポートをどのプロセスが使用しているかを知らせるウィンドウが付属するプログラムはありますか?

PS-プログラミングの質問ではないため、これをダウンモッドする前に、ネットワークコードをテストするプログラムを探しています。

97
AlexeyMK

netstat -b -aは使用中のポートをリストし、各ポートを使用している実行可能ファイルを提供します。これを行うには管理者グループに参加する必要があると思いますが、Vistaにどのようなセキュリティ上の影響があるかはわかりません。

通常、-nを追加して少し速くしますが、-bを追加するとかなり遅くなります。

Edit:netstatが提供する以上の機能が必要な場合は、 vasacが推奨しますTCPView を試してください。

145
Graeme Perrow

TCPView はあなたが要求したことをすることができます。

41
vasac

Vistaでは、netstatで-bオプションを使用するには昇格した権限が必要です。それを回避するには、「netstat -ano」を実行して、開いているすべてのポートと関連するプロセスIDを表示します。次に、タスクリストを使用して、対応するIDを持つプロセスを検索できます。

C:\>netstat -ano

Active Connections

  Proto  Local Address          Foreign Address        State           PID
  ...
  TCP    [::]:49335             [::]:0                 LISTENING       1056
  ...

C:\>tasklist /fi "pid eq 1056"

Image Name                     PID Session Name        Session#    Mem Usage
========================= ======== ================ =========== ============
sqlservr.exe                  1056 Services                   0     66,192 K
22
Jim Olsen

既にProcess Explorer(Sysinternals、現在はMicrosoftの一部)がインストールされている場合があります。そうでない場合は、今すぐインストールしてインストールしてください。

Process Explorerで、問題のプロセスを見つけ、右クリックして[TCP/IP]タブを選択します。ソケットごとに、そのソケットを開いたコードを表すスタックトレースも表示されます。

10
Adam Mitz

GUIインターフェイスを使用する場合は、 CurrPorts は無料で、すべてのバージョンのウィンドウで機能します。ポートと、それらを開いているプロセスを表示します。

6
ctcherry

「netstat -natp」は私がいつも使用しているものです。

3
Steve Baker

Windowsにはnetstatユーティリティが付属しており、これはまさにあなたが望むことをするはずです。

2
Adam Rosenfield

Windows 8(およびおそらく7 + Vista)も、リソースモニターでビューを提供します。 [ネットワーク]タブを選択すると、[リスニングポート]というセクションがあります。ポート番号でソートし、それを使用しているプロセスを確認できます。

1
Mikezx6r

Open Ports Scanner 私にとってはうまくいきます。

0
Arne Evertsson

コマンドラインで、netstat -aは多くの情報を提供します。

0
CodeRot

これには「netstat」コマンドを使用できます。この種のことを行う説明があります here

0
tkerwin