| [Network] | ||||||||||||||
Port ReporterツールでTCP/IPの通信状態を調査する
|
||||||||||||||
|
||||||||||||||
| 解説 |
ネットワークのトラブルシューティングやアプリケーションのデバッグ、ファイア・ウォールの設定などのために、あるアプリケーションがどのようなTCPやUDPのポートを使用しているかを調べたいことがある。このような場合は、netstatを実行したり、Windows Server OSに付属のネットワーク・モニタを利用したりするのが普通である。だが、netstatは動的なポートの状態を記録するには向かないし(常に実行し続け、さらにその結果をファイルに記録しておく手段がない)、ネットワーク・モニタでは(イーサネット上のパケットをキャプチャするという性質上)、ローカル・ループバック・インターフェイス(127.0.0.1)あての通信を見ることができない。
このような目的のためには、マイクロソフトから提供されている「Port Reporter」というツールを使うとよい。このツールの機能を端的に述べると、「netstatコマンドを動的に実行して、その結果をすべてログ・ファイルに残すツール」といえるだろう。
Port Reporterはサービスとして利用するツールである。システムにこのツールをインストールすると、TCPやUDPの通信状態をモニタし続け、状態が変化した時点で(例えばポートがリッスン状態になったとかオープンされたなど)、その結果をログ・ファイルに記録する。Windows XP以降のOSの場合は同時にプロセスの状態も記録されるため、どのプロセスがどのTCP/UDPポートを利用したかという情報を取得することができる。
| 操作方法 |
手順1―ダウンロードとインストール
上記のダウンロード・サイトからPort Reporterツール(PortRptr.exe)をダウンロードして実行すると、解凍する場所を問い合わせるダイアログが表示される。場所を指定して[OK]をクリックすると、全部で4つのファイルが展開されるので、その中にあるpr-setup.exeを実行してPort Reporterツールの実行プログラムをインストールする。インストール先はデフォルトでは「%ProgramFiles%\PortReporter」となっているが、「pr-setup -d 'c:\portreporter'」のように指定すれば(シングル・クオート記号でインストール先のパス名を囲むこと)、任意のフォルダにインストールすることができる。ただしこのフォルダにインストールされるのはPortReporter.exeという実行ファイルが1つだけなので、特別な理由がない限り、デフォルトの場所にインストールしておけばよいだろう。
手順2―サービスの起動
プログラムをインストールすると、「Port Reporter」というサービスがシステムに追加される。デフォルトでは[スタートアップの種類]が[手動]となっており、インストールしただけではサービスは稼働しない。
![]() |
||||||
| Port Reporterサービスの起動設定 | ||||||
| Port Reporterツールをインストールすると、「Port Reporter」というサービスがインストールされる。このサービスはデフォルトでは手動起動になっているので、必要に応じて[自動]で起動するように設定を変更する。 | ||||||
|
[スタートアップの種類]を[自動]にすると、システム起動時からログが取得され続けることになり、ログ・ファイルのサイズはかなり大きくなるので、必要なときだけログを取得するようにしておくのがよいだろう。このPort Reporterサービスは、常に動作させておいて異常発生時にログをさかのぼって調べるといったものではなく、どちらかというとデバッグやトラブル発生時のネットワークの挙動を調べるための補助手段といった意味合いが強い。そのため、必要なときにサービスを開始し、ログを収集するのがよいだろう。サービス管理ツールではなく、コマンド・プロンプトから素早くサービスを開始するには次のコマンドを実行すればよい。
net start "port reporter" |
サービスを停止するには、次のコマンドを実行する。
net stop "port reporter" |
ログ・ファイルの確認
Port Reporterサービスが起動すると、イベント・ログの「アプリケーション」イベントに、サービスの開始を通知するイベントが2つ記録される。1つは「The Port Reporter service was started.」というサービスの開始メッセージで、もう1つはログ・ファイルの場所を示す「The Port Reporter service successfully created log files in the following directory: C:\WINDOWS\system32\LogFiles\PortReporter」というイベントである。このように、イベント・ログにサービスの開始や停止の記録がいくつか残るが、これはあまり重要ではない。このサービスによって出力されるデータは基本的にはすべてPort Reporter専用のログ・ファイルに記録される。
Port Reporterのログ・ファイルは、デフォルトでは「%SystemRoot%\System32\LogFiles\PortReporter」というフォルダに作成される。この中に以下の3種類のファイルが作成される。
| ファイル名 | 用途 |
| PR-INITIAL-*.log | TCP/IPの初期状態 |
| PR-PORTS-*.log | ポートごとの使用状況。TCPやUDPの状態が変化するごとに1行ずつ記録される |
| PR-PIDS-*.log | コンピュータ名やログオンしているユーザー名のほか、TCPやUDPの状態が変化するごとに、その通信を開始したプロセスに関する情報(プロセスIDやプログラム名、DLLファイル名など)が記録される。PR-PORTS-*.logファイルの1行ごとに対応して、新しいエントリが1つずつ作成される。ただしWindows 2000以前のOSではこのファイルには有効な情報は記録されない |
| Port Reporterサービスのログ・ファイル | |
| Port Reporterサービスでは、1度にこの3つのファイルがセットで作成される。ファイル名の「-*」の部分には、サービスが開始された年月日と時分秒が入る(例:PR-PORTS-04-04-1-12-34-56.log)。ログ・ファイルがいっぱいになるか(デフォルトでは5Mbytes)、1日ごと(午前0時0分)に新しいログ・ファイルに切り替えられる。ただしWindows 2000ではOSの制約により、PR-PIDS-*.logファイルには有用な情報は記録されない。 | |
ログ・ファイルには、作成された年月日や時分秒を表すファイル名が付けられている。3種類のファイルには同じ日時が付けられるので、どのファイルがペアであるかがすぐに分かるようになっている。またサービスが起動した場合や、ログ・ファイルがいっぱいになった場合には(デフォルトでは5Mbytes)、新しいログ・ファイルに切り替わる。常にログを記録するようにしていると、非常に多くのログ・ファイルが残ることになるので、注意が必要である。
それでは各ログ・ファイルの内容について見てみよう。
PR-INITIAL-*.logファイル
このファイルには、サービス起動のコンピュータの状態やコンピュータ名、ネットワークの状態(netstatコマンドの実行結果と同じ)、およびコンピュータ上で稼働しているプロセスの状態(プロセスIDや実行ファイル、DLLファイル名など)などが記録される。ただしWindows 2000では、OS機能の制約などにより、詳しいプロセスの状態は記録されない。
※Windows XPにおけるPR-INITIAL-*.logファイルの例 |
PR-PORTS-*.logファイル
このファイルには、TCPやUDPの通信状態が1行ずつ記録される。このファイルの内容を確認することにより、どのプロセスがどのTCPやUDPポートを使って通信しているかが分かる。ただし通信データの内容が分かるわけではなく、例えばリッスン状態になったとか、通信を受け付けた(オープンされた)といった情報が得られるだけである。またWindows XP以降のOSでは、どのプロセスにおける通信であるかという情報も得られるので(netstatの-oオプションと同じ)、後述のPR-PIDS-*.logファイルの内容と照合することにより、プロセスの情報も詳しく調べることができる。
※Windows XPにおけるPR-PORTS-*.logファイルの例※「⇒」は実際には1行につながっていることを表す) |
記録データの各行には、時刻やポートのほか、次のような情報が「,」で区切られて記録されている。IPアドレスの「0.0.0.0」は、リッスンやオープン状態になったことを示している。
| OS | データの内容 |
| Windows XP以降 | 日付,時刻,プロトコル(TCP/UDP),ローカル・ポート,ローカルIPアドレス,リモート・ポート,リモートIPアドレス,プロセスID(PID),モジュール,ユーザー・コンテキスト |
| Windows 2000 | 日付,時刻,プロトコル(TCP/UDP),ローカル・ポート,ローカルIPアドレス,リモート・ポート,リモートIPアドレス |
| PR-PORTS-*.logファイルの記録内容 | |
| TCPやUDPの通信内容(状態の変化)が、1コネクションにつき1行ずつ記録される。Windows XP以降のOSでは、同時にプロセスに関する情報も記録される。「ユーザー・コンテキスト」とは、そのプログラムを実行しているユーザーの名前。 | |
このログには、正常な通信のみが記録される。外部からの攻撃(未オープン・ポートへの接続要求など)やファイアウォールでブロックされているような通信要求は記録されない。ちょうどnetstatコマンドを動的に実行してログを残しているようなものだと考えておけばよいだろう。そのためPort Reporterサービスは、ファイアウォールのロギングのような用途で使うものではなく(外部からの攻撃の有無を記録するものではなく)、あるアプリケーションが利用しているTCPやUDPのポートなどを調べるために利用するものである。Windows Server OSに付属のネットワーク・モニタと同じような目的に利用できるが、Port Reporterでは内部ループバック・インターフェイスあての通信でもロギングすることができるという特徴がある(ネットワーク・モニタではイーサネットなどへ実際に送信されたパケットしかキャプチャできない)。
PR-PIDS-*.logファイル
このファイルには、上のPR-PORTS-*.logファイルと対応して、その通信を行ったプロセスに関する詳しい情報が記録される。ただしWindows 2000ではOSの制約により、このファイルには何も情報は記録されない。
※Windows XPにおけるPR-PORTS-*.logファイルの例 |
記録される内容は、PR-INITIAL-*.logファイルにおけるプロセス情報と同じであり、通信を行っているプロセスのファイル名やDLL、ロード・アドレスなどの情報が得られる。![]()
|
||||||||||||||||||||||||||||
| 「Windows TIPS」 |
ホワイトペーパー(TechTargetジャパン)
- WindowsTIPS (2010/3/19)
− [シャットダウン]ボタンの設定を変更する
− WINSサーバをインストールする
− WINSサーバをnetshコマンドで管理する - Windows 7のファイアウォール機能 (2010/3/18)
Win 7のファイアウォールの概要解説。ルールセットを切り替えるプロファイル機能が強化され、ドメインでもVPNでも、適切なルールが自動選択される - 第212話 プリンタ用紙 (2010/3/16)
致命的なディスク・クラッシュが起きる確率は、クラッシュによってもたらされる被害の大きさに比例する… - WindowsTIPS (2010/3/12)
− 不要なアドオンを無効化してIE8の起動を高速化する
− IE8のソース表示エディタを変更する
− RRASのNATでポートマッピングを定義する
|
|
スキルアップ/キャリアアップ(JOB@IT)
スポンサーからのお知らせ
- - PR -
| 「いつかは壊れるサーバ」そんな故障に 迅速で安価に手軽に対応する方法とは? New! |
| 「特権ユーザー」の事件を防げ! 万能権限を持つユーザーの管理方法とは? New! |
| 仮想環境の構築とデータ保護の特効薬?! 実績と信頼性の高いパッケージで安心運用 |
| 仮想環境のバックアップもこれまでどおり 「まるごと取ってまるごと戻す」簡単運用 |
| おばかアプリ選手権、第4弾開催中!! ムダにカッコよくてくだらない作品求ム! |
| 社内ファイルサーバを“クラウド”に統合 VPN直結「クラウド型ストレージ」を紹介 |
| その数、なんと400台以上! グループ内 サーバの「統合管理」によるメリットは? |
| 美人!? まあまあ? 気になる いやし系!! PV急増で「美人時計」がとった手段とは? |
| 進化を続ける富士通ストレージETERNUS DX 製品開発者の自信を裏付けるものとは何か |
| 運用管理の課題を“2つの観点”から分析 ユーザー満足度の高い「仮想環境」とは? |
- - PR -
お勧め求人情報

**先週の人気講座ランキング**
〜CCNA編〜
| ◆ | TomcatやJBossなどAPサーバ環境に関する 情報を集約! “業務”用APサーバ大百科 New! |
| ◆ | 一気に解説! 最新のクラスタストレージ 「RAIDを超えたストレージ基準」……など New! |
| ◆ | クラウド的ユーザー体験の変化は脅威か? 仮想化技術を使いこなす運用管理術を紹介 New! |

| ◆ | 上司や部下、部署内メンバーとの情報共有 を“ガラッ”と変えるコラボツールとは? New! |
| ◆ | おばかアプリ選手権、第4弾開催中!! ムダにカッコよくてくだらない作品求ム! |
| ◆ | 社内ファイルサーバを“クラウド”に統合 VPN直結「クラウド型ストレージ」を紹介 |

| ◆ | Twitterのアカウントはなぜ突破された? メールによる新手の攻撃手法とその対策 |
| ◆ | もう仮想化のお試しフェイズは終わりだ! Hyper-V 2.0が基幹システムも仮想化 |
| ◆ | 美人!? まあまあ? 気になる いやし系!! PV急増で「美人時計」がとった手段とは? |

| ◆ | クライアント企業から求められる人材 ⇒IT技術と経営戦略を併せ持つ「戦略家」 |
| ◆ | .NET編集長が実践する「技術情報検索術」 サンプル・コードを簡単に探す“技”は? |
| ◆ | 業務効率と情報セキュリティ対策を両立! 手間なく確実に機密情報を守る方法とは? |

| ◆ | 進化を続ける富士通ストレージETERNUS DX 製品開発者の自信を裏付けるものとは何か |
| ◆ | 運用管理の課題を“2つの観点”から分析 ユーザー満足度の高い「仮想環境」とは? |

| ◆ | 【CTC事例】約30の基幹システムを統合! 膨大なバッジジョブを制御した方法は? |
| ◆ | 仮想化すればコストは削減できるか? 仮想化に必要な「3つの視点」を解説する |
| ◆ | その数、なんと400台以上! グループ内 サーバの「統合管理」によるメリットは? |








