- 2008-02-15 (金) 10:36
- ネットワークコマンドのいろは
netstatコマンドとは
ネットワークの接続状態を確認するコマンドです。ネットワークインターフェースや通信ポート、イーサーネットなどの情報、TCP/IPやIPv4,IPv6などのプロトコルごとにおける情報など、さまざまな情報を表示させることができます。主な機能は次のとおりです。
- 現在のネットワーク情報を表示します。
- IPルーティング情報を表示します。
コマンドの形式と事例
netstat (option)
netstatとオプション及びパラメータの間には半角スペースを入れて活用してください。
■利用事例
※「WEBブラウザー」・「TELNETによるPOPの確認」・「FTPソフトによるサーバへの接続」を行った状態で試してみます。

※1:通信プロトコルのタイプが表示されます。TCPがUDPのどちらかが表示されます。
※2:接続しているユーザー自身のコンピュータのDNSによる変換されたアドレスとポート番号が区切られて表示されています。
※3:接続先への利用内容(ポート番号など)が表示されます。
※4:接続の状態を表示しています。「ESTABLISHED」とは、現在有効な接続を確立している状態である、ということです。
■ユーザーのネットワークインターフェイス
コマンドプロンプトから、netstatコマンドに、オプションの「-e」をつけて入力すると、ユーザーが使用しているコンピュータのネットワークインターフェイスデバイスにおける、データーを送信および受信した容量の情報を、バイト数やパケット数などの数値として表示させることができます。社内LANなどのネットワークの速度が遅いと感じたときなどは、ネットワーク内で流れているデータ量をこのコマンドで知ることで、その原因を知る手助けとすることができます。

※1:ネットワークインターフェイスが送受信したデータの総量が、バイト単位で表示されます。左が受信バイト数、右が送信バイト数です。これによってこのインターフェイスが扱たおおよそのデータ量を確認することが出来ます。
※2:ネットワークインターフェイスが送受信した、ユニキャスト・フレームの数が表示されます。ユニキャスト・フレームとは、1つのアドレスにのみ到着するパケットのことで、マルチキャストでないフレームのことを指します。
※3:インターフェイスが送受信したマルチキャスト・フレーム数が表示されます。マルチキャスト・フレームとは、複数のアドレスに到着するパケットのことで、ユニキャストでないフレームのことをさします。Microsoftネットワークでは、同一ネットワーク上に接続されたコンピュータの数が増えすぎると、このマルチキャストフレームが急激に増加しますが、この値を大きくなりすぎますと、ネットワークの伝送効率が落ちてしまいます。
※4:ネットワークインターフェイスが送受信したフレームの中で、破棄されたフレームの数が表示されます。もしここに数値がカウントされていると、システムリソースが不足したようなケースなどが考えられます。
※5:インターフェイスが送受信したフレームの中で、エラーがあったフレームの数が表示されます。この数値は、伝送中にデータ化などによってデータエラーとなったパケットの数です。ネットワークが飽和状態にある場合や、ネットワークに物理的なトラブルが発生したケースでは、この値を大きくなります。
※6:サポートしなプロトコルを含むフレームを、ネットワークインターフェイスが受信した数が表示されます。この数値が高い場合、異なったプロトコルを使用してネットワークに接続しているコンピュータが存在する可能性があるため、ネットワークに接続された各装置を点検した方がよいでしょう。
■すべてのネットワークインターフェイスの状態を表示する
コマンドプロンプトから、netstatコマンドに、オプションの「-a」をつけて入力すると、接続しているTCP接続のすべてと、接続待機をしているとTCPとUDPポートを表示させることが出来ます。ここでコンピュータの状態として表示されるLISTENING(接続待機状態)は、完全に機能を停止しているわけではなく、あくまで待機状態のため、外部に対してはサービスを提供できる状態です。セキュリティの観点からも、不必要なサービスを起動してLISTENINGを増やすことは、好ましいとはいえません。悪意を持った侵入者に進入口を提供しないためにも、netstatコマンドでこの表示を確認して、起動されているサービスをチェックすることが大切でしょう。表示される情報は、netstatコマンドのみを入力した場合とほぼ同じ項目が表示されます。
オプションとパラメータの機能
netstatとオプション及びパラメータの間には半角スペースを入れて活用してください。
-a
すべての接続可能なTCP接続とコンピュータが接続待機している、TCPとUDPポートが表示されます。
-e
送信および受信するデータのバイト数やパケット数など、イーサネットの情報が表示されます。このオプションは「-s」と組み合わせて使用することができます。
-o
各接続のプロセスID(PID)を含む接続可能なTCP接続が表示されます。プロセスID(PID)とは、コンピュータ上に起動されたアプリケーションを識別するために、OSからアプリケーションを与えられた番号のことです。また、Windowsタスクマネージャの「プロセス」タブで、PIDをベースとしたアプリケーション検索をすることができます。このオプションは「-a」「-n」および「-p」と組み合わせて使用することができます。
-p プロトコル
パラメータで指定するプロトコルの接続が表示されます。この場合、プロトコルとして指定できるのは、TCP、UDP、TCPv6およびUDPv6です。また、このオプションを「-s」と組み合わせて使用し、プロトコルによる情報を表示する場合に、プロトコルとして指定できるのはTCP、UDP、ICMP、IP、TCPv6、UDPv6、ICMPv6、およびIPv6です。
-f
IPルーティングテーブルの内容が表示されます。このコマンドは、「route」コマンドにパラメータの「ping」をつけて入力するのと同じものです。
-s
プロトコルによる情報が表示されます。既定の設定では、TCP、UDP、ICMPおよびIPプロトコルに関する情報が表示されます。WindowsXP・VISTA用のIPv6プロトコルがインストールされている場合は、TCPoverIPv6、UDPoverIP6、ICMPv6、およびIPv6プロトコルの情報も表示することができます。また、組み合わせて使うことのできるオプション「-p」は、プロトコルのセットを指定するために使用します。
/?
コマンドプロンプトにヘルプが表示されます。
