● PortSniffer - FREEWARE自分のパソコンのポートを監視するためのソフトです。 netstatGUI みたいなものです。 起動したままにしておくと一定時間で表示を自動更新します。 小さいフォントを使いデスクトップ占有率を押さえつつ、表示量に合わせてウインドウサイズを動的に変化させるのでネットをお散歩しながらでも使えます。 ウインドウを ダブルクリックするか 、 プログラムを終了 すると同じディレクトリに接続ログを書き出します。 *( ログは常に上書きされます )E 可愛いアイコン付きです。
実際に使ってみると、よく分からないポートがパカパカ開いたり閉じたりしていますし。知らないサイトや関係ないサイトに繋がっていたりして面白いです。 左の画像は自前サーバを立ち上げている場合です、アクセスしてきているのも一目瞭然です。Status が UDP と表示されるのは UDP 接続です。 UDP は常に出たり入ったり自由自在です。当然ですが送られて来たデータを処理するアプリケーションが立ち上がっていて裏で勝手にセッションします。通常 NBNAME と NBDATAGRAM は標準で開きます。 *(NETBIOS を無効にすれば開きません )
ポート番号の変換は Services ファイルから取得したものです。 WIN_DIR のどこかにあると思います。このファイルを編集すると表示を変更できます。左の例では www 80/tcp としています。
状態 説明 ------------ -------------------------------------------------------- SYN_SEND アクティブオープンしています。 SYN_RECEIVED サーバーがクライアントからの SYN を受信。 ESTABLISHED クライアントもサーバーからの SYN を受信、セッション確立。 LISTEN サーバーは接続を受け付けられます、待機状態。 FIN_WAIT_1 アクティブクローズの状態です。 TIMED_WAIT クライアントはアクティブクローズからこの状態に移行しました。 CLOSE_WAIT パッシブクローズ状態です。サーバーはクライアントから最初の FIN を受信しました。 FIN_WAIT_2 クライアントはサーバーから最初の FIN に対する肯定応答 ACK を受信しました。 LAST_ACK サーバーは FIN を送信したときにこの状態に移行しました。 CLOSED サーバーはクライアントからの ACK を受信し、接続がクローズしました。通常、 well-known port (1...1023) を使用している側がサーバーです。
遷移 Client: SynSent->Established->FinWait1,FinWait2,TimeWait->Closed Server: Listen->SynRcvd->Established->CloseWait->LastAck->Closed
キーボードの i をパンチすると左のウインドウが開きます。インターフェイス別の統計値です。画面を開いたままにしていると、一定時間で表示データーを 自動更新 します。 kb は kbytes 、 pk は packets 、 kb/s は一秒単位の転送量です。
_________________________ インターフェイスの種類 Received: 受け取ったデータの合計 (KBytes) 、以下はその内訳 unicast: ユニキャスト・モード・パケットの数 non-unicast: 非ユニキャスト・モード・パケットの数 discarded: 破棄されたパケット数 erroneous: 壊れているパケットの数 unknown: 得体の知れないパケットの数 transferred: 一秒毎の受信スピード (KBytes) Sent: 送ったデータの合計 (KBytes) 、以下はその内訳 unicast: ユニキャスト・モード・パケットの数 non-unicast: 非ユニキャスト・モード・パケットの数 discarded: 破棄されたパケット数 erroneous: 壊れたパケットの数 transferred: 一秒毎の送信スピード (KBytes) _________________________ .... 以下、次の候補を列挙 *( いずれも、パソコンの起動時からの積算値です )
スペースキー をパンチすると左のウインドウが開きます。0.0.0.0 RemoteAddr を表示するようにしておけば、外部に開いてるポートを確認できます。自分のパソコンを ポートスキャン するようなものです。
表示データは Iphlpapi.dll から取得したものです。重くはないと思いますけど、軽くもないので呼び出しは 2〜3秒毎 をオススメします。
ホスト名の解決には gethostbyaddr(); を使っています、内部処理に遅延があるようなので4スレッドあります。解決できないホスト名もあります。
指定したバッファ容量を超えると、バッファをフラッシュします。
更新履歴 :
- Ver1.0
公開
掲載等 :
- Windows100% - 2 月号 (晋遊舎)
□ トップに戻る □