如何在Ubuntu中使用SS来转储网络套接字统计信息

时间:2020-01-09 10:39:52  来源:igfitidea点击:

说明

在本教程中,我们将学习如何使用ss查看Ubuntu中打开的端口,以及如何列出连接。

Ubuntu上所有网络套接字的摘要

要查看Ubuntu主机上每个网络协议的所有套接字的列表,请使用-s标志。 -s标志指示ss生成套接字摘要。

ss -s

输出将类似于以下示例。从中我们可以看到总共有164个套接字,其中4个是TCP,3个是UDP。我们还可以看到这些套接字是IPv4还是IPv6.

Total: 164
TCP:   4 (estab 1, closed 0, orphaned 0, timewait 0)

Transport Total     IP        IPv6
RAW	  1         0         1        
UDP	  3         2         1        
TCP	  4         3         1        
INET	  8         5         3        
FRAG	  0         0         0

列出所有TCP连接

ss命令可以生成Ubuntu上所有TCP连接的摘要列表。为此,使用-s标志生成摘要,并使用-t仅指定TCP连接。

ss -s -t

命令的输出will将提供所有连接的摘要,同时还提供有关TCP套接字的详细信息。

Total: 164
TCP:   4 (estab 1, closed 0, orphaned 0, timewait 0)

Transport Total     IP        IPv6
RAW	  1         0         1        
UDP	  3         2         1        
TCP	  4         3         1        
INET	  8         5         3        
FRAG	  0         0         0        

State                   Recv-Q                   Send-Q                                     Local Address:Port                                     Peer Address:Port                   Process                  
ESTAB                   0                        332                                            10.0.0.10:ssh                                        10.0.0.157:56083

在上面的输出中,我们总共可以有164个网络套接字,而只有4个是TCP。在TCP套接字中,只有一个具有连接,并且用于SSH会话。

列出所有UDP连接

要使用ss命令查看Ubuntu上所有UDP套接字的摘要列表,请使用-s和-u标志。

ss -s -u

-s标志输出所有套接字的摘要以及已建立连接的更详细列表。 -u标志将ss设置为仅列出UDP套接字。

Total: 164
TCP:   4 (estab 1, closed 0, orphaned 0, timewait 0)

Transport Total     IP        IPv6
RAW	  1         0         1        
UDP	  3         2         1        
TCP	  4         3         1        
INET	  8         5         3        
FRAG	  0         0         0        

Recv-Q                      Send-Q                                           Local Address:Port                                             Peer Address:Port                      Process

在上面的示例中,没有UDP套接字具有连接。

列出所有侦听和非侦听TCP套接字

要查看侦听和非侦听的TCP套接字的完整列表,请使用-a标志和-t标志。

ss -a -t

在下面的输出示例中,我们有四个套接字。三个处于" LISTEN"状态,而一个已建立连接。

State                   Recv-Q                  Send-Q                                    Local Address:Port                                       Peer Address:Port                   Process                  
LISTEN                  0                       4096                                      127.0.0.53%lo:domain                                          0.0.0.0:*                                               
LISTEN                  0                       128                                             0.0.0.0:ssh                                             0.0.0.0:*                                               
ESTAB                   0                       0                                             10.0.0.10:ssh                                          10.0.0.157:56083                                           
LISTEN                  0                       128                                                [::]:ssh                                                [::]:*

列出监听和非监听UDP套接字

要查看所有UDP套接字的列表(侦听和不侦听),可以将-a标志与ss一起使用。 -u标志告诉ss仅输出UDP套接字。

ss -a -u

输出显示了Ubuntu主机上的三个套接字。

State                Recv-Q               Send-Q                                                 Local Address:Port                                       Peer Address:Port               Process               
UNCONN               0                    0                                                      127.0.0.53%lo:domain                                          0.0.0.0:*                                        
UNCONN               0                    0                                                   10.0.0.10%enp0s3:bootpc                                          0.0.0.0:*                                        
UNCONN               0                    0                                  [fe80::a00:27ff:fe83:8b35]%enp0s3:dhcpv6-client                                      [::]:*