要約:
Socket Statistics
()ss
コマンドと同様であるnetstat
有用な情報ネットワークソケットの様々な表示するために使用しました。
長い時間を探して、注目されているnetstat
コマンド・プロシージャが時代遅れであること。だから、代わりにコマンドを実行します。新しい使用するコマンドは、少し奇妙である必要がありますが、多くのオプションとオプションの同様の使用が、我々はいくつかの相違点が表示されます。netstat
ss
ss
ss
netstat
ss
コマンドは、それがデフォルトでインストールされている、パッケージの一部。Linux CentOS 7
iproute
一般に、IPアドレスは、ネットワークソケット、定義されたトランスポートプロトコル及びポートです。そのような組成物は、双方向の接続の態様を形成します。例:Webサーバーがリスニングすることができる172.28.204.62:80
ソケットであるTCP、上の着信接続を。しかし、エンドポイントの一つは、ソケット自体が、接続に接続されていないことに留意すべきです。
ここで私が使用する方法について説明しss
、さまざまな情報を表示するコマンドを。具体的な使用の構文は次のとおりです。
ss [options] [ FILTER ]
1.リストの接続が確立されています
私たちが実行した場合、デフォルトで、ss
他のオプションを指定せずにコマンドを、それが接続を開くすべての非リスニングソケットのリストが表示され、たとえば、確立されたTCP
、UDP
またはUNIX
ソケット。
[root@renwolecom ~]# ss | head -n 5
Netid State Recv-Q Send-Q Local Address:Port Peer Address:Port
u_str ESTAB 0 0 * 19098 * 18222
u_str ESTAB 0 0 * 19441 * 19440
u_str ESTAB 0 0 * 19440 * 19441
u_str ESTAB 0 0 * 19396 * 19397
2.表示リスニングソケット
我々は使用することができ-l
、特別なソケットに記載されているオプションは、現在の接続を聞いて、代わりのソケットのすべてを一覧表示されます。
[root@renwolecom ~]# ss -lt
State Recv-Q Send-Q Local Address:Port Peer Address:Port
LISTEN 0 128 *:http *:*
LISTEN 0 100 127.0.0.1:smtp *:*
LISTEN 0 128 *:entexthigh *:*
LISTEN 0 128 172.28.204.62:zabbix-trapper *:*
LISTEN 0 128 127.0.0.1:cslistener *:*
LISTEN 0 80 :::mysql :::*
LISTEN 0 100 ::1:smtp :::*
LISTEN 0 128 :::entexthigh :::*
この例では、我々はまた、使用-t
のみオプションリストTCP
詳細については後述します。後者の場合、あなたは私たちの目的を達成するために、私は、すぐにフィルタリングするためのさまざまなオプションを結合します表示されます。
3.表示処理
私たちはできる-p
プロセスをプリントアウトするか、ソケットオプションを持っているPID
番号を。
[root@renwolecom ~]# ss -pl
Netid State Recv-Q Send-Q Local Address:Port Peer Address:Port
tcp LISTEN 0 128 :::http :::* users:(("httpd",pid=10522,fd=4),("httpd",pid=10521,fd=4),("httpd",pid=10520,fd=4),("httpd",pid=10519,fd=4),("httpd",pid=10518,fd=4),("httpd",pid=10516,fd=4))
上記の例では、私だけの結果、理由はありませんさらにオプションとして、リストアップしましたss
標準出力に500の以上の行を印刷するための完全な出力のを。だから私はちょうど私たちは、サーバー上のさまざまなランニングを見ることができ、この結果を記載されているApache
プロセスID。
4.サービス名を解決できません
デフォルトでは、ss
ポート番号だけを解決し、例えば、次の行では、我々がいることを見ることができます172.28.204.62:mysql
ローカルのMySQLポートとしてリストされています、。
[root@renwolecom ~]# ss
Netid State Recv-Q Send-Q Local Address:Port Peer Address:Port
tcp ESTAB 0 0 ::ffff:172.28.204.62:mysql ::ffff:172.28.204.62:38920
tcp ESTAB 0 0 ::ffff:172.28.204.62:mysql ::ffff:172.28.204.62:51598
tcp ESTAB 0 0 ::ffff:172.28.204.62:mysql ::ffff:172.28.204.62:51434
tcp ESTAB 0 0 ::ffff:172.28.204.62:mysql ::ffff:172.28.204.62:36360
私たちが指定した場合は、-n
オプションを、ポート番号ではなく、サービス名を参照してください。
[root@renwolecom ~]# ss -n
Netid State Recv-Q Send-Q Local Address:Port Peer Address:Port
tcp ESTAB 0 0 ::ffff:172.28.204.62:3306 ::ffff:172.28.204.62:38920
tcp ESTAB 0 0 ::ffff:172.28.204.62:3306 ::ffff:172.28.204.62:51598
tcp ESTAB 0 0 ::ffff:172.28.204.62:3306 ::ffff:172.28.204.62:51434
tcp ESTAB 0 0 ::ffff:172.28.204.62:3306 ::ffff:172.28.204.62:36360
ホスト名を無効にし、すべてのポートの名前が解決するので今、代わりのMySQL、3306を示しています。また、あなたも見ることができます/etc/services
ポートに対応するすべてのサービスのリストを取得します。
5.デジタルアドレス/ポートを解析
使用して、-r
IPアドレスとポート番号のオプションを解決することができます。この方法を使用すると、一覧表示することができ172.28.204.62
、サーバのホスト名を。
[root@renwolecom ~]# ss -r
Netid State Recv-Q Send-Q Local Address:Port Peer Address:Port
tcp ESTAB 0 0 renwolecom:mysql renwolecom:48134
6.IPv4ソケット
私たちは、できる-4
唯一のオプションの表示IPv4
ソケットに対応する情報を。次の例では、我々は、使用-l
オプションリストIPv4
アドレス上のすべてのコンテンツが聞くことを。
[root@renwolecom ~]# ss -l4
Netid State Recv-Q Send-Q Local Address:Port Peer Address:Port
tcp LISTEN 0 128 *:http *:*
tcp LISTEN 0 100 127.0.0.1:smtp *:*
tcp LISTEN 0 128 *:entexthigh *:*
tcp LISTEN 0 128 172.28.204.62:zabbix-trapper *:*
tcp LISTEN 0 128 127.0.0.1:cslistener *:*
7.IPv6ソケット
同様に、我々は使用することができます-6
のみ表示するオプションをIPv6
すべてのソケットの情報を。次の例では、我々は、使用-l
オプションリストIPv6
アドレス上のすべてのコンテンツが聞くことを。
[root@renwolecom ~]# ss -l6
Netid State Recv-Q Send-Q Local Address:Port Peer Address:Port
udp UNCONN 0 0 :::ipv6-icmp :::*
udp UNCONN 0 0 :::ipv6-icmp :::*
udp UNCONN 0 0 :::21581 :::*
tcp LISTEN 0 80 :::mysql :::*
tcp LISTEN 0 100 ::1:smtp :::*
tcp LISTEN 0 128 :::entexthigh :::*
8.表示のみTCP
-t
唯一のTCPソケットを表示するオプション。いつ、-l
唯一のリスニングソケットをプリントアウト組み合わせたとき、我々はすべてのTCP内容に聞いて見ることができます。
[root@renwolecom ~]# ss -lt
State Recv-Q Send-Q Local Address:Port Peer Address:Port
LISTEN 0 128 *:http *:*
LISTEN 0 100 127.0.0.1:smtp *:*
LISTEN 0 128 *:entexthigh *:*
LISTEN 0 128 172.28.204.62:zabbix-trapper *:*
LISTEN 0 128 127.0.0.1:cslistener *:*
LISTEN 0 80 :::mysql :::*
LISTEN 0 100 ::1:smtp :::*
LISTEN 0 128 :::entexthigh :::*
ディスプレイUDP
-u
オプションは、UDPソケットを表示するために使用することができます。UDPはコネクションレス型プロトコル、これだけの操作であるため、-u
表示されるべきではないオプションは、と解釈することができ-a
、または-l
、以下のように、全てのUDPソケットリスナを表示するために、組み合わせオプション:
[root@renwolecom ~]# ss -ul
State Recv-Q Send-Q Local Address:Port Peer Address:Port
UNCONN 0 0 *:sunwebadmins *:*
UNCONN 0 0 *:etlservicemgr *:*
UNCONN 0 0 *:dynamid *:*
UNCONN 0 0 *:9003 *:*
UNCONN 0 0 *:9004 *:*
UNCONN 0 0 127.0.0.1:terabase *:*
UNCONN 0 0 *:56803 *:*
10. Unixソケット
-x
オプションは、UNIXドメインソケットを表示するために使用することができます。
[root@renwolecom ~]# ss -x
Netid State Recv-Q Send-Q Local Address:Port Peer Address:Port
u_str ESTAB 0 0 /tmp/zabbix_server_preprocessing.sock 23555 * 21093
u_str ESTAB 0 0 /tmp/zabbix_server_ipmi.sock 20155 * 19009
u_str ESTAB 0 0 /tmp/zabbix_server_preprocessing.sock 19354 * 22573
u_str ESTAB 0 0 /tmp/zabbix_server_preprocessing.sock 21844 * 19375
...
11.表示されたすべての情報
-a
オプションは、接続が確立されたことを意味し、TCPの場合には、すべてのリスニングと非リスニングソケットを表示します。他のものと組み合わせて、このオプションが有用である、例えば、あなたが追加することができ-a
、デフォルトでは、唯一のUDPソケットのすべてを表示するオプションを-u
、我々は多くの情報が表示されないオプションを選択します。
[root@renwolecom ~]# ss -u
Recv-Q Send-Q Local Address:Port Peer Address:Port
0 0 172.28.204.66:36371 8.8.8.8:domain
[root@renwolecom ~]# ss -ua
State Recv-Q Send-Q Local Address:Port Peer Address:Port
UNCONN 0 0 *:sunwebadmins *:*
UNCONN 0 0 *:etlservicemgr *:*
UNCONN 0 0 *:dynamid *:*
UNCONN 0 0 *:9003 *:*
UNCONN 0 0 *:9004 *:*
UNCONN 0 0 127.0.0.1:terabase *:*
UNCONN 0 0 *:56803 *:*
ESTAB 0 0 172.28.204.66:36371 8.8.8.8:domain
表示メモリの使用量ソケット
-m
オプションは、各ソケットが使用するメモリの量を表示するために使用することができます。
[root@renwolecom ~]# ss -ltm
State Recv-Q Send-Q Local Address:Port Peer Address:Port
LISTEN 0 128 *:http *:*skmem:(r0,rb87380,t0,tb16384,f0,w0,o0,bl0)
LISTEN 0 100 127.0.0.1:smtp *:*skmem:(r0,rb87380,t0,tb16384,f0,w0,o0,bl0)
LISTEN 0 128 *:entexthigh *:*skmem:(r0,rb87380,t0,tb16384,f0,w0,o0,bl0)
LISTEN 0 128 172.28.204.62:zabbix-trapper *:*skmem:(r0,rb87380,t0,tb16384,f0,w0,o0,bl0)
LISTEN 0 128 127.0.0.1:cslistener *:*skmem:(r0,rb87380,t0,tb16384,f0,w0,o0,bl0)
LISTEN 0 80 :::mysql :::*skmem:(r0,rb87380,t0,tb16384,f0,w0,o0,bl0)
LISTEN 0 100 ::1:smtp :::*skmem:(r0,rb87380,t0,tb16384,f0,w0,o0,bl0)
LISTEN 0 128 :::entexthigh :::*skmem:(r0,rb87380,t0,tb16384,f0,w0,o0,bl0)
内部TCPの表示情報
我々は使用することができます-i
追加の内部TCP情報を要求するオプションを選択します。
[root@renwolecom ~]# ss -lti
State Recv-Q Send-Q Local Address:Port Peer Address:Port
LISTEN 0 128 *:chimera-hwm *:* bbr cwnd:10
LISTEN 0 128 *:etlservicemgr *:* bbr cwnd:10
LISTEN 0 128 172.28.204.66:27017 *:* bbr cwnd:10
LISTEN 0 128 127.0.0.1:27017 *:* bbr cwnd:10
LISTEN 0 128 *:dynamid *:* bbr cwnd:10
LISTEN 0 128 *:9003 *:* bbr cwnd:10
LISTEN 0 128 *:9004 *:* bbr cwnd:10
LISTEN 0 128 *:http *:* bbr cwnd:10
LISTEN 0 128 *:ssh *:* bbr cwnd:10
LISTEN 0 100 127.0.0.1:smtp *:* bbr cwnd:10
LISTEN 0 128 *:sunwebadmins *:* bbr cwnd:10
LISTEN 0 128 :::ssh :::* bbr cwnd:10
下記のリスニングソケットのそれぞれにおいて、我々はより多くの情報を見ることができます。注意:-i
オプションは、UDPには適用されません。あなたが指定した場合-u
、むしろ-t
、それは、この追加情報が表示されません。
14.統計情報を表示し
我々は使用することができます-s
すぐに統計情報を表示するオプションを。
[root@renwolecom ~]# ss -s
Total: 798 (kernel 1122)
TCP: 192 (estab 99, closed 81, orphaned 0, synrecv 0, timewait 1/0), ports 0
Transport Total IP IPv6
* 1122 - -
RAW 1 0 1
UDP 0 0 0
TCP 111 59 52
INET 112 59 53
FRAG 0 0 0
これは、私たちはすぐにカウントの総数と確立された接続の使用、およびソケットIPv4またはIPv6のさまざまな種類を見ることができます。
フィルタの状態に基づいて、15
私たちは、ソケットの状態を指定する状態でのみソケットを印刷することができます。例えば、我々はすでに、設立設立、SYN-送られ、SYN-RECV、フィン待っ-1、フィン待っ-2、時間待って、閉じ含ん指定することができ、最後のACKモニタ、およびシャットダウンや他の州ウェイトが閉鎖しました。次の例では、すべてのTCPコネクションの確立を示しています。これを生成するために、私は、サーバーにSSH経由で接続、およびApacheからページをロードします。その後、我々は待ち時間に迅速にApacheとの接続を確認することができます。
[root@renwolecom ~]# ss -t state established
Recv-Q Send-Q Local Address:Port Peer Address:Port
0 52 172.28.204.67:ssh 123.125.71.38:49518
0 0 ::ffff:172.28.204.67:http ::ffff:123.125.71.38:49237
[root@renwolecom ~]# ss -t state established
Recv-Q Send-Q Local Address:Port Peer Address:Port
0 0 172.28.204.67:ssh 103.240.143.126:55682
0 52 172.28.204.67:ssh 123.125.71.38:49518
0 0 ::ffff:172.28.204.67:http ::ffff:123.125.71.38:49262
ポート番号に従って16フィルタ
また以下(LT)よりも濾過により記載されていることができ、すべてのポート(GE)、以下(LE)に等しい、またはそれより大きいかまたは等しい(EQ)、等しくない(NE)に等しい(GT)よりも大きいです。
たとえば、すべてのリスニングポート500またはポート番号を表示するには、次のコマンドは以下の通りです。
[root@renwolecom ~]# ss -ltn sport le 500
State Recv-Q Send-Q Local Address:Port Peer Address:Port
LISTEN 0 128 *:80 *:*
LISTEN 0 100 127.0.0.1:25 *:*
LISTEN 0 100 ::1:25 :::*
比較のために、我々は逆の操作を実行し、500より大きいすべてのポートを表示することができます。
[root@renwolecom ~]# ss -ltn sport gt 500
State Recv-Q Send-Q Local Address:Port Peer Address:Port
LISTEN 0 128 *:12002 *:*
LISTEN 0 128 172.28.204.62:10051 *:*
LISTEN 0 128 127.0.0.1:9000 *:*
LISTEN 0 80 :::3306 :::*
LISTEN 0 128 :::12002 :::*
我々はまた、送信元または宛先ポートの他の項目に基づいてフィルタリングすることができ、例えば、我々はポートSSHが実行されているTCPソケットソースを検索します。
[root@renwolecom ~]# ss -t '( sport = :ssh )'
State Recv-Q Send-Q Local Address:Port Peer Address:Port
ESTAB 0 0 172.28.204.66:ssh 123.125.71.38:50140
ディスプレイコンテキストにSELinux
-Z`与`-z`选项可用于显示套接字的SELinux安全上下文。 在下面的例子中,我们使用`-t`和-l`选项来列出侦听的TCP套接字,使用-Z选项我们也可以看到SELinux的上下文。
[root@renwolecom ~]# ss -tlZ
State Recv-Q Send-Q Local Address:Port Peer Address:Port
LISTEN 0 128 *:sunrpc *:*
users:(("systemd",pid=1,proc_ctx=system_u:system_r:init_t:s0,fd=71))
LISTEN 0 5 172.28.204.62:domain *:*
users:(("dnsmasq",pid=1810,proc_ctx=system_u:system_r:dnsmasq_t:s0-s0:c0.c1023,fd=6))
LISTEN 0 128 *:ssh *:*
users:(("sshd",pid=1173,proc_ctx=system_u:system_r:sshd_t:s0-s0:c0.c1023,fd=3))
LISTEN 0 128 127.0.0.1:ipp *:*
users:(("cupsd",pid=1145,proc_ctx=system_u:system_r:cupsd_t:s0-s0:c0.c1023,fd=12))
LISTEN 0 100 127.0.0.1:smtp *:*
users:(("master",pid=1752,proc_ctx=system_u:system_r:postfix_master_t:s0,fd=13))
18.表示バージョン番号
-v
オプションを表示するために使用することができss
、この場合には、我々は提供している見ることができ、コマンドの特定のバージョン情報をパッケージのバージョンを。ss
iproute
[root@renwolecom ~]# ss -v
ss utility, iproute2-ss130716
19.表示ヘルプ文書情報
-h
オプションはに関する情報を表示するために使用することができss
ますが、最も一般的に使用されるオプションのいくつかは、簡単な説明が必要な場合は、さらなる支援のコマンドを、それがクイックリファレンスとして使用することができます。注意:これは完全なリストを入力しません。
[root@renwolecom ~]# ss -h
Usage: ss [ OPTIONS ]
20.ディスプレイ拡張情報
我々は使用することができ-e
、拡張子の詳細を表示するためのオプションを以下に示すように、我々は、ラインの各端部に取り付けられた拡張情報を見ることができます。
[root@renwolecom ~]# ss -lte
State Recv-Q Send-Q Local Address:Port Peer Address:Port
LISTEN 0 128 *:sunrpc *:* ino:16090 sk:ffff880000100000 <->
LISTEN 0 5 172.28.204.62:domain *:* ino:23750 sk:ffff880073e70f80 <->
LISTEN 0 128 *:ssh *:* ino:22789 sk:ffff880073e70000 <->
LISTEN 0 128 127.0.0.1:ipp *:* ino:23091 sk:ffff880073e707c0 <->
LISTEN 0 100 127.0.0.1:smtp *:* ino:24659 sk:ffff880000100f80 <->
21.ディスプレイタイマー情報
-o
タイマーオプションは、情報を表示するために使用することができます。この情報は、このような再送信の数が発生した再送タイマ値、として私たちを示しており、送信されたkeepalive
プローブの数を。
[root@renwolecom ~]# ss -to
State Recv-Q Send-Q Local Address:Port Peer Address:Port
ESTAB 0 52 172.28.204.67:ssh 123.125.71.38:49518timer:(on,406ms,0)
LAST-ACK 0 1 172.28.204.67:ssh 103.240.143.126:49603timer:(on,246ms,0)
要約:
今、あなたがすべきss
予備的な理解を持っています。あなたが使用したい場合はss
迅速ソケットに関するさまざまな情報を確認するには、コマンドを、あなたが確認することをお勧めしますss
関連マニュアルを。
オリジナルます。https://renwole.com/archives/814