「netstat」の版間の差分

提供: セキュリティ
移動: 案内検索
(ページの作成:「netstat とは、ネットワークコネクション、ルーティングテーブル、インターフェースの統計、マスカレードコネクショ...」)
(相違点なし)

2013年9月23日 (月) 19:47時点における版

netstat とは、ネットワークコネクション、ルーティングテーブル、インターフェースの統計、マスカレードコネクション、マルチキャストメンバーシップの情報を表示するUnixWindowsのコマンドです。

読み方

netstat
ねっと すたっと

概要

netstat とは、ネットワークコネクション、ルーティングテーブル、インターフェースの統計、マスカレードコネクション、マルチキャストメンバーシップの情報を表示するUnixWindowsのコマンドです。

インストール

デフォルトで組み込まれています。

使い方

アドレスを省略しない

netstat -a を実行するとき、netstat コマンドは、アドレス(ホスト名)を省略してしまうことがありますが、省略させないことができます。OS によって、オプションが異なります。

Unixでプロセスを特定する

オプションを付けずに、netstat を実行すると、プロセスの情報がありません。

$ netstat |head
Active Internet connections (w/o servers)
Proto Recv-Q Send-Q Local Address               Foreign Address             State
tcp        0      0 localhost.locald:vnc-server localhost.localdomain:40846 ESTABLISHED
tcp        0      0 localhost.localdomain:40846 localhost.locald:vnc-server ESTABLISHED
tcp        0     84 u0.local:ssh                192.168.0.3:58180          ESTABLISHED
tcp        0      0 localhost.localdomain:5901  localhost.localdomain:46981 ESTABLISHED
tcp        0      0 192.168.122.1:46193         ubuntu1:ssh                 ESTABLISHED
tcp        0      0 localhost.localdomain:46981 localhost.localdomain:5901  ESTABLISHED
Active UNIX domain sockets (w/o servers)
Proto RefCnt Flags       Type       State         I-Node Path

一般ユーザーが --program オプションをつけると netstat を実行したユーザが実行しているプロセスの情報だけ参照できます。

$ netstat --program|head
(Not all processes could be identified, non-owned process info
 will not be shown, you would have to be root to see it all.)
Active Internet connections (w/o servers)
Proto Recv-Q Send-Q Local Address               Foreign Address             State       PID/Program name
tcp        0      0 localhost.locald:vnc-server localhost.localdomain:40846 ESTABLISHED -
tcp        0      0 localhost.localdomain:40846 localhost.locald:vnc-server ESTABLISHED -
tcp        0      0 u0.local:ssh                192.168.0.3:58180          ESTABLISHED -
tcp        0      0 localhost.localdomain:5901  localhost.localdomain:46981 ESTABLISHED -
tcp        0      0 192.168.122.1:46193         ubuntu1:ssh                 ESTABLISHED 4301/ssh
tcp        0      0 localhost.localdomain:46981 localhost.localdomain:5901  ESTABLISHED -
Active UNIX domain sockets (w/o servers)
Proto RefCnt Flags       Type       State         I-Node PID/Program name    Path

root ユーザーで netstat を実行すると、すべての接続のコマンド(プログラム名)とプロセスID が分かります。

$ sudo netstat --program |head
Active Internet connections (w/o servers)
Proto Recv-Q Send-Q Local Address               Foreign Address             State       PID/Program name
tcp        0      0 localhost.locald:vnc-server localhost.localdomain:40846 ESTABLISHED 3711/qemu-kvm
tcp        0      0 localhost.localdomain:40846 localhost.locald:vnc-server ESTABLISHED 3693/python
tcp        0     84 u0.local:ssh                192.168.0.3:58180          ESTABLISHED 15364/sshd
tcp        0      0 localhost.localdomain:5901  localhost.localdomain:46981 ESTABLISHED 3882/qemu-kvm
tcp        0      0 192.168.122.1:46193         ubuntu1:ssh                 ESTABLISHED 4301/ssh
tcp        0      0 localhost.localdomain:46981 localhost.localdomain:5901  ESTABLISHED 3693/python
Active UNIX domain sockets (w/o servers)
Proto RefCnt Flags       Type       State         I-Node PID/Program name    Path

Windows でプロセスを調べる

Windows XP や Windows Server 2003 の場合、 プロセスIDを調べることができます。

netstat -oan

Windows XP SP2 では、 netsta -nb でサービス名やプログラム名を表示できます。

netstat -nb

-v オプションを追加すると DLL ファイル名なども調べることができます。

netstat -anbv

関連項目