通信確認メモ。 Windowsで、どのソフトが特定ポートの通信を送信しているのか確認するコマンド。


2014-0211-084110

先日特定のポート番号の通信を発生させる方法について描きました。 それに近いタイプの技術メモを残しておきます。

Windowsから特定の通信がどのソフト(プロセス)から発せられているかを調べる方法です。 例えば特定の通信が延々と一部の端末から発せられているときなどに、何のプログラムが通信をしているのかを調べるのに役立ちます。

これも、コマンドプロンプトから実行可能ですよ。

スポンサードリンク

 

どのポートで通信を発しているか確認するコマンド

コマンドプロンプトから、下記のコマンドを使います。

netstat -aon 1

実際に上記のコマンドで表示してみた出力結果がこちら。
2014-0211-083837

ちょっとズラーッと数値が並んでいてわかりづらいですが…IPアドレスの後ろに、ポート番号が表示されています。 これが今現在、発生している(もしくは、待機している)通信の情報です。

更に一番後ろの列には、「PID」が表示されてます。 PIDとはプロセスIDのことで、ここの番号が通信しているソフトウェアを特定するのに必要になる値です。 詳しくはこの後の項目で。

 

コマンド内の数字の「1」は、何秒おきに通信を確認するかの設定値です。 1にすると、1秒毎に通信を確認してくれるわけです。

情報量が多すぎて画面が煩雑になりそうであれば、秒間を空けて表示してみてもいいと思います。

特定のポート番号だけ表示したい

仮に数秒おきに表示するようにしたとして…それでもWindowsというものは、常に色んな通信を行っているわけで、netstatのコマンドで表示される情報量がどうしても多すぎます。

目当てのポート番号の通信を探すのが大変な場合は、findコマンドを一緒に使うことで表示内容を絞れます。

netstat -aon 1 | find “ポート番号”

上記のコマンドを使いましょう。 例えばHTTP(80/TCP)の通信を使いたいときは、「netstat -aon 1 | find “:80″」と入力します。

すると、こんな感じで表示されるようになります。 すっきりしましたよね。
2014-0211-084014

タスクマネージャからPIDを確認

さて先ほどのPID、このIDがどのソフトウェア(プロセス)を示しているのかを確認します。

タスクマネージャを開いて、「プロセス」タブへ移動します。

ここからPIDを探すことになりますが、列に表示されていない場合はメニューの「表示」→「列の選択」へ。 ここで表示するカラムを選択することが出来るので、「PID(プロセス ID)」を追加しましょう。
2014-0211-083857

これでタスクマネージャからPIDが確認出来るようになりました。 後は、先ほどのnetstatの出力結果と見比べて、どの通信を発生させているのがどのソフトウェアなのかを、確認しましょう。
2014-0211-083921

悪さをしているソフトウェアがわかったら、その通信をどう止めるかの目途が立つはずです。
大体は、常駐ソフトなどが常にアップデートを確認しようとしてインターネットなどに通信を発生させてる場合が多いですねー。

 

スポンサードリンク

 

この記事が参考になったら、TipstourのFacebookページに『いいね!』をお願いします!

 

よろしければFeedlyもご登録ください!
follow us in feedly