はじめに
ss(ソケット統計)ツールは、ネットワーク統計を表示するために使用されるCLIコマンドです。 ss commandは、廃止されたnetstatコマンドのよりシンプルで高速なバージョンです。 ipコマンドと一緒にss ネットワーク情報を収集し、ネットワークの問題をトラブルシューティングするために不可欠です。
この記事では、ssコマンドの使用方法の概要と、最も一般的な使用例を示します。

前提条件
- 端末またはコマンドラインへのアクセス
- インストールされたiproute2ソフトウェアパッケージ
Linuxssコマンドの例
基本的なss
コマンドの使用法はパラメータなしです:
ss
出力は、接続が確立された、開いている非リスニングソケットのリストを返します。

列には、次の詳細が表示されます。
- Netid –ソケットのタイプ。一般的なタイプはTCP 、 UDP 、 u_str (Unixストリーム)、および u_seq (Unixシーケンス)。
- 州 –ソケットの状態。最も一般的なESTAB (設立)、 UNCONN (接続されていない)、聞く (聞いています)。
- Recv-Q –キューで受信したパケットの数。
- Send-Q –キュー内の送信済みパケットの数。
- ローカルアドレス:ポート –ローカルマシンとポートのアドレス。
- ピアアドレス:ポート –リモートマシンとポートのアドレス。
より詳細な出力については、 ss
にオプションを追加してください コマンド:
ss <options>
または、オプションを個別にリストします:
ss <option 1> <option 2> <option 3>
すべての接続を一覧表示
リスニング接続と非リスニング接続をすべてリストします:
ss -a
または:
ss --all

リスニングソケットのリスト
デフォルトで省略されているリスニングソケットのみを表示するには、次を使用します。
ss -l
または:
ss --listen

TCP接続の一覧表示
TCP接続を一覧表示するには、 -t
を追加します ss
のオプション コマンド:
ss -t
または:
ss --tcp

すべてのTCP接続を一覧表示
オプションを組み合わせる-a
および-t
ss
を使用 すべてのTCP接続のリストを出力するコマンド:
ss -at

すべてのリスニングTCP接続を一覧表示
オプションを組み合わせる-l
および-t
ss
を使用 すべてのリスニングTCP接続を一覧表示するコマンド:
ss -lt

UDP接続の一覧表示
UDP接続のリストを表示するには、次を使用します:
ss -u
または:
ss --udp

すべてのUDP接続を一覧表示
オプションの組み合わせ-a
および-u
ss
を使用 すべてのTCP接続のリストを出力します:
ss -au

すべてのリスニングUDP接続を一覧表示
リスニングしているすべてのUDP接続を一覧表示するには、 ss
を使用します オプション付きのコマンド-l
および-u
:
ss -lu

Unixソケットのリスト
すべてのUnixファミリソケットを表示するには、次を使用します。
ss -f unix
または、短いエイリアスを使用します:
ss -x

Rawソケットのリスト
rawソケットを一覧表示するには、次を使用します:
ss -w
または代わりに:
ss --raw
特定のIPアドレスへの接続を一覧表示する
特定の宛先IPアドレスへの接続を次のように一覧表示します:
ss dst <address>
例:
ss dst 104.21.3.132

特定の送信元アドレスへの接続を表示するには、次を使用します:
ss src <addresss>
例:
ss src 192.168.100.2

プロセスIDを確認する
プロセスID(PID)を表示するには、次を使用します:
ss -p

要約統計量のリスト
次の接続の要約統計量を一覧表示します:
ss -s

IPv4およびIPv6ソケット接続の一覧表示
次のコマンドを使用してIPv4/IPv6接続を一覧表示することにより、結果をさらにフィルタリングします。
ss -4
または:
ss -6
たとえば、次のようにすべてのIPv6UDP接続を一覧表示します。
ss -au6

フィルター接続
ss
コマンドを使用すると、結果の高度なフィルタリングと特定のポートまたはTCP状態の検索が可能になります。
TCP状態を使用したフィルター
TCPの事前定義された状態を使用してTCP接続をフィルタリングします:
ss state <name of state>
たとえば、リッスンしているすべてのTCP接続を検索するには:
ss -t state listening

ポート番号でフィルタリング
特定の宛先ポート番号またはポート名でフィルタリングします:
ss <options> dst :<port number or name>
例:
ss dst :5228

または、ポート名を使用します:
ss dst :https

複数のクエリを組み合わせて、より高度なフィルタリングを行います。たとえば、宛先ポート 5228とのすべての接続を検索します またはソースポートmysql :
ss -a dst :5228 or src :mysql

マニュアルページを確認するか、すべてのコマンドを一覧表示する
ss
のマニュアルページを確認してください コマンドの使用方法の詳細な概要については、ターミナルで:
man ss
利用可能なオプションの概要については、次のように入力してください。
ss -h
netstatVSssコマンド
ss
コマンドは、廃止された netstat
の代替コマンドと見なされます 。ネットツールソフトウェアパッケージよりも、iproute2ソフトウェアパッケージのCLIユーティリティの速度と優れたフィルタリングオプションの方が望ましいです。
netstatのマニュアルページには、 ss
がリストされています。 優れた代替手段として。 netstatツールは引き続き使用できます。ただし、ssの方が優れた高速オプションです。