netstatからssへ移行しよう
「netstat」は「net-tools」パッケージで提供されるコマンドです。「ss」コマンドは「iproute2」パッケージで提供されるコマンドです。
「Ubuntu Desktop」では、「net-tools」パッケージがデフォルトでインストールされなくなり、代わりに「iproute2」パッケージがインストールされています。
将来「Ubuntu」の他のエディションでも同様に、「net-tools」パッケージがデフォルトでインストールされなくなる日が来るかもしれません。
これからは「iproute2」パッケージで提供されるコマンド群の利用が推奨されます。
「ss」コマンドは、ソケットの情報(socket statistics)を表示するコマンドです。
「TCP」や「UDP」の情報を表示するのによく利用されます。
もちろんUNIXソケットも対象です。
ここでは「ss」コマンドで利用できるオプションの内、よく利用されるオプションを紹介します。
ソケットに関するオプション
ソケットに関するオプションです。非LISTEN状態のソケットの情報を表示する
非LISTEN状態(外部から接続を待ち受けていない)のソケットの情報を表示するには、以下のコマンドを実行します。
ss
LISTEN状態のソケットの情報を表示する
LISTEN状態のソケットの情報を表示するには、以下のオプションを組み合わせてコマンドを実行します。ショートオプション | ロングオプション |
---|---|
-l | --listening |
LISTEN状態と非LISTEN状態のソケットの情報を表示する
LISTEN状態と非LISTEN状態のソケットの情報を表示するには、以下のオプションを組み合わせてコマンドを実行します。ショートオプション | ロングオプション |
---|---|
-a | --all |
ソケットの種類を指定する
ソケットの種類を指定してソケットの情報を表示するには、以下のオプションを組み合わせてコマンドを実行します。ソケットの種類 | ショートオプション | ロングオプション |
---|---|---|
PACKET | -0 | --packet |
TCP | -t | --tcp |
UDP | -u | --udp |
DCCP | -d | --dccp |
RAW | -w | --raw |
UNIXドメイン | -x | --unix |
IPアドレスに関するオプション
IPアドレスに関するオプションです。IPアドレスの種類を指定する
IPアドレスの種類を指定してソケットの情報を表示するには、以下のオプションを組み合わせてコマンドを実行します。IPアドレスの種類 | ショートオプション | ロングオプション |
---|---|---|
IPv4 | -4 | --ipv4 |
IPv6 | -6 | --ipv6 |
ホスト名の表示
IPアドレスの代わりにホスト名を表示するには、以下のオプションを組み合わせてコマンドを実行します。ショートオプション | ロングオプション |
---|---|
-r | --resolve |
出力する情報に関するオプション
出力する情報に関するオプションです。出力する情報 | ショートオプション | ロングオプション |
---|---|---|
ソケットのタイマー情報 | -o | --options |
ソケットの詳細情報 | -e | --extended |
ソケットのメモリーの利用状況 | -m | --memory |
ソケットを使用しているプロセスの情報 | -p | --processes |
TCPソケットの内部情報 | -i | --info |
情報のフィルタリング
「ss」コマンドには、特定の条件に合うソケット情報のみ出力するフィルタリング機能があります。例えば送信元ポートのポート番号が22(ssh)であるソケット情報のみ表示するには、以下のコマンドを実行します。
ss state all sport = :ssh
加えて接続済みのsshソケット情報のみ表示するには、以下のコマンドを実行します。
ss state connected sport = :ssh
接続先のホストをサブネットマスク「74.125.0.0/16」で指定するには、以下のコマンドを実行します。
ss state all dst 74.125.0.0/16
フィルターの記述方法の詳細は、「iproute2-doc」パッケージをインストールし、「/usr/share/doc/iproute2-doc/ss.html」ファイルを参照してください。