Linux shell 的ss

来源:互联网 发布:911 知乎 编辑:程序博客网 时间:2024/06/10 09:22

ss的含义 Socket State

1 查看链接

[admin@v035114 ~]$ ssState      Recv-Q Send-Q                       Local Address:Port                           Peer Address:Port   ESTAB      0      0                            10.232.35.114:43583                          10.235.171.2:15888   ESTAB      0      0                            10.232.35.114:1023                           10.232.16.13:nfs     ESTAB      0      0                            10.232.35.114:54487                          10.232.36.75:ssh     ESTAB      0      0                            10.232.35.114:33943                          10.235.171.1:13888   SYN-SENT   0      1                            10.232.35.114:37613                         10.232.14.220:webcache ESTAB      0      0                            10.232.35.114:34337                          10.232.17.73:ssh     ESTAB      0      0                            10.232.35.114:44849                          10.232.36.86:ssh     ESTAB      1392   0                            10.232.35.114:59068                         10.20.142.112:ssh     ESTAB      0      0                            10.232.35.114:38479                          10.232.36.88:ssh     ESTAB      0      0                            10.232.35.114:60156                          10.232.36.88:ssh     ESTAB      0      0                            10.232.35.114:51222                          10.232.36.86:ssh     ESTAB      0      0                     ::ffff:10.232.35.114:ssh                      ::ffff:10.13.44.35:ccmad   ESTAB      0      0                     ::ffff:10.232.35.114:ssh                      ::ffff:10.13.44.34:65432   ESTAB      0      0                     ::ffff:10.232.35.114:ssh                      ::ffff:10.13.44.34:50906   ESTAB      0      0                     ::ffff:10.232.35.114:ssh                      ::ffff:10.13.44.34:51239   ESTAB      0      0                     ::ffff:10.232.35.114:ssh                      ::ffff:10.13.44.34:53277   ESTAB      0      0                     ::ffff:10.232.35.114:ssh                      ::ffff:10.13.44.34:50813   

第一列表示状态

第二列和第三列的Send-Q和Recv-Q含义

Send-Q 对方没有收到的数据或者说没有Ack的,还是本地缓冲区。

count of bytes not acknowledged by the remote host.

Recv -Q 数据已经在本地接收缓冲,但是还没有recv()

The count of bytes not copied by the user program connected to this socket.

2 选项-n表示不解析服务名

[admin@v035114 ~]$ ss -nState      Recv-Q Send-Q                         Local Address:Port                           Peer Address:Port ESTAB      0      0                              10.232.35.114:43583                          10.235.171.2:15888 ESTAB      0      0                              10.232.35.114:33943                          10.235.171.1:13888 ESTAB      1392   0                              10.232.35.114:59068                         10.20.142.112:22    ESTAB      0      0                              10.232.35.114:60156                          10.232.36.88:22    ESTAB      0      0                              10.232.35.114:51222                          10.232.36.86:22    ESTAB      0      0                       ::ffff:10.232.35.114:22                       ::ffff:10.13.44.35:3114  ESTAB      0      0                       ::ffff:10.232.35.114:22                       ::ffff:10.13.44.34:50813 

端口22对应ssh

3 ss -l 显示本地打开的所有监听端口

[admin@v035114 ~]$ ss -lRecv-Q Send-Q                            Local Address:Port                                Peer Address:Port   0      0                                     127.0.0.1:15777                                          *:*       0      0                                     127.0.0.1:15778                                          *:*       0      0                                     127.0.0.1:smux                                           *:*       0      0                                             *:50410                                          *:*       0      0                                             *:netbios-ssn                                        *:*       0      0                                             *:sunrpc                                         *:*       0      0                                             *:http                                           *:*       0      0                                             *:43698                                          *:*       0      0                                             *:socks                                          *:*       0      0                                             *:microsoft-ds                                        *:*       0      0                                            :::ssh                                           :::*       

使用-n看看服务使用的端口

[admin@v035114 ~]$ ss -lnRecv-Q Send-Q                              Local Address:Port                                Peer Address:Port 0      0                                       127.0.0.1:15777                                          *:*     0      0                                       127.0.0.1:15778                                          *:*     0      0                                       127.0.0.1:199                                            *:*     0      0                                               *:50410                                          *:*     0      0                                               *:139                                            *:*     0      0                                               *:111                                            *:*     0      0                                               *:80                                             *:*     0      0                                               *:43698                                          *:*     0      0                                               *:1080                                           *:*     0      0                                               *:445                                            *:*     0      0                                              :::22                                            :::*     

22 对应ssh

80 对应http

111 对应sunrpc

139 对应netbios-ssn

4 -s 摘要

[admin@v035114 ~]$ ss -s Total: 89 (kernel 114)TCP:   44 (estab 9, closed 23, orphaned 0, synrecv 0, timewait 22/0), ports 80Transport Total     IP        IPv6*         114       -         -        RAW       0         0         0        UDP       16        13        3        TCP       21        17        4        INET      37        30        7        FRAG      0         0         0       

orphaned什么意思?

最后的 ports 80 什么意思?

RAW、INET、FRAG什么意思?

IPv6 那一 列有好几行数值不为0 设么意思?

5 -t 显示TCP连接

[admin@v035114 ~]$ ss -tState      Recv-Q Send-Q                       Local Address:Port                           Peer Address:Port   ESTAB      0      0                            10.232.35.114:59861                         10.235.144.41:ssh     ESTAB      0      0                            10.232.35.114:43583                          10.235.171.2:15888   ESTAB      0      0                            10.232.35.114:33943                          10.235.171.1:13888   ESTAB      1392   0                            10.232.35.114:59068                         10.20.142.112:ssh     ESTAB      0      0                            10.232.35.114:60156                          10.232.36.88:ssh     ESTAB      0      0                            10.232.35.114:51222                          10.232.36.86:ssh     ESTAB      0      0                     ::ffff:10.232.35.114:ssh                      ::ffff:10.13.44.35:ccmad   ESTAB      0      0                     ::ffff:10.232.35.114:ssh                      ::ffff:10.13.44.34:50813   ESTAB      0      0                     ::ffff:10.232.35.114:ssh                      ::ffff:10.13.44.50:54354   

6 -u显示UDP连接

[admin@v035114 ~]$ ss -tState      Recv-Q Send-Q                       Local Address:Port                           Peer Address:Port   ESTAB      0      0                            10.232.35.114:59861                         10.235.144.41:ssh     ESTAB      0      0                            10.232.35.114:43583                          10.235.171.2:15888   ESTAB      0      0                            10.232.35.114:33943                          10.235.171.1:13888   ESTAB      1392   0                            10.232.35.114:59068                         10.20.142.112:ssh     ESTAB      0      0                            10.232.35.114:60156                          10.232.36.88:ssh     ESTAB      0      0                            10.232.35.114:51222                          10.232.36.86:ssh     ESTAB      0      0                     ::ffff:10.232.35.114:ssh                      ::ffff:10.13.44.35:ccmad   ESTAB      0      0                     ::ffff:10.232.35.114:ssh                      ::ffff:10.13.44.34:50813   ESTAB      0      0                     ::ffff:10.232.35.114:ssh                      ::ffff:10.13.44.50:54354   

7 -p显示使用socket的pid,第一次使用这个命令就是利用-p选项找java的pid,然后jstack java进程, ss -p | grep "db-ip"

[admin@v035114 ~]$ ss -pState      Recv-Q Send-Q                       Local Address:Port                           Peer Address:Port   ESTAB      0      0                            10.232.35.114:59861                         10.235.144.41:ssh      users:(("ssh",20182,3))ESTAB      0      0                            10.232.35.114:43583                          10.235.171.2:15888   ESTAB      0      0                            10.232.35.114:33943                          10.235.171.1:13888   ESTAB      1392   0                            10.232.35.114:59068                         10.20.142.112:ssh      users:(("ssh",19281,3))SYN-SENT   0      1                            10.232.35.114:46842                         10.232.14.220:webcache ESTAB      0      0                            10.232.35.114:60156                          10.232.36.88:ssh      users:(("ssh",10249,3))ESTAB      0      0                            10.232.35.114:51222                          10.232.36.86:ssh      users:(("ssh",10346,3))ESTAB      0      0                     ::ffff:10.232.35.114:ssh                      ::ffff:10.13.44.35:ccmad   ESTAB      0      180                   ::ffff:10.232.35.114:ssh                      ::ffff:10.13.44.34:50813   ESTAB      0      0                     ::ffff:10.232.35.114:ssh                      ::ffff:10.13.44.50:54354   

括号里面第3位不知道什么意思?
最后一行的::fffff:是什么意思?

8 -o显示定时器信息

[admin@v035114 ~]$ ss -oState      Recv-Q Send-Q                       Local Address:Port                           Peer Address:Port   ESTAB      0      0                            10.232.35.114:59861                         10.235.144.41:ssh      timer:(keepalive,21min,0)ESTAB      0      0                            10.232.35.114:43583                          10.235.171.2:15888   ESTAB      0      0                            10.232.35.114:33943                          10.235.171.1:13888    timer:(keepalive,6.248ms,0)ESTAB      1392   0                            10.232.35.114:59068                         10.20.142.112:ssh      timer:(keepalive,19min,0)SYN-SENT   0      1                            10.232.35.114:56005                         10.232.14.220:webcache  timer:(on,1.092ms,0)ESTAB      0      0                            10.232.35.114:60156                          10.232.36.88:ssh      timer:(keepalive,32min,0)ESTAB      0      0                            10.232.35.114:51222                          10.232.36.86:ssh      timer:(keepalive,30min,0)ESTAB      0      0                     ::ffff:10.232.35.114:ssh                      ::ffff:10.13.44.35:ccmad    timer:(keepalive,11min,0)ESTAB      0      0                     ::ffff:10.232.35.114:ssh                      ::ffff:10.13.44.34:50813    timer:(keepalive,18min,0)ESTAB      0      0                     ::ffff:10.232.35.114:ssh                      ::ffff:10.13.44.50:54354    timer:(keepalive,21min,0)

看到两个类型的timer,都不知道什么意思?

on

keepalive

9 -i 显示内部TCP信息,只打印后几列

[admin@v035114 ~]$ ss -i        Local Address:Port              Peer Address:Port           10.232.35.114:59861            10.235.144.41:ssh      rto:0.212 ato:0.04 cwnd:3 ssthresh:100 qack:11        10.232.35.114:43583             10.235.171.2:15888    rto:0.204 ato:0.04 cwnd:3 ssthresh:100        10.232.35.114:33943             10.235.171.1:13888    rto:0.212 ato:0.04 cwnd:3 ssthresh:100        10.232.35.114:59068            10.20.142.112:ssh      rto:0.212 ato:0.04 cwnd:20 ssthresh:100        10.232.35.114:43376            10.232.14.220:webcache         10.232.35.114:60156             10.232.36.88:ssh      rto:0.204 ato:0.04 ssthresh:100 bidir        10.232.35.114:51222             10.232.36.86:ssh      rto:0.204 ato:0.04 cwnd:3 ssthresh:100 ::ffff:10.232.35.114:ssh         ::ffff:10.13.44.35:ccmad    rto:0.256 ato:0.04 cwnd:3 ssthresh:3 qack:14 ::ffff:10.232.35.114:ssh         ::ffff:10.13.44.34:50813    rto:0.476 ato:0.04 cwnd:5 ssthresh:100 bidir ::ffff:10.232.35.114:ssh         ::ffff:10.13.44.50:54354    rto:0.316 ato:0.04 cwnd:4 ssthresh:100 qack:1


rto

ato

cwnd

ssthresh 都是什么意思啊?

10  Filter过滤的例子

ss -o state established '( dport = :smtp or sport = :smtp )'   显示所有已建立的SMTP连接
ss -o state established '( dport = :http or sport = :http )'  显示所有已建立的HTTP连接





 

 

 


 

原创粉丝点击