10.8 ss:查看网络状态
阅读原文时间:2023年07月08日阅读:2

  是类似并将取代netstat的工具,它能用来查看网络状态信息,包括TCP、UDP连接、端口等。它的优点是能够显示更多更详细的有关网络连接状态的信息,而且比netstat更快速更高效。

    如果系统没有ss命令,那就需要安装一下,ss命令属于iproute包,因此安装命令是yum -y install iproute。

ss [选项] [过滤器]

ss命令的参数选项及说明

-n    显示IP地址,不进行DNS解析

-s    显示socket使用统计

-r    尝试解析数字IP地址和端口

-a    显示所有socket连接

-l    显示所有监听 socket

-o    显示计时器信息

-e    显示详细的socket信息

-m    显示socket的内存使用情况

-p    显示使用socket的进程

-i    显示TCP内部信息

-4    仅显示IPv4的socket

-6    仅显示IPv6的socket

-0    仅显示PACKET的socket

-t    仅显示TCP的socket

-u    仅显示UCP的socket

-d    仅显示DCCP的socket

-w    仅显示RAW的socket

-x    仅显示Unix的socket

常用选项组合(一)

[root@cs6 ~]# ss -an
State Recv-Q Send-Q Local Address:Port Peer Address:Port
LISTEN 0 128 :::22 :::*
LISTEN 0 128 *:22 *:*
LISTEN 0 100 ::1:25 :::*
LISTEN 0 100 127.0.0.1:25 *:*
ESTAB 0 64 10.0.0.100:22 10.0.0.1:1821
[root@cs6 ~]# ss -an|column -t
State Recv-Q Send-Q Local Address:Port Peer Address:Port
LISTEN 0 128 :::22 :::*
LISTEN 0 128 *:22 *:*
LISTEN 0 100 ::1:25 :::*
LISTEN 0 100 127.0.0.1:25 *:*
ESTAB 0 64 10.0.0.100:22 10.0.0.1:1821

常用选项组合(二)

[root@cs6 ~]# ss -lntup|column -t #<=显示所有正在监听的TCP和UDP连接。
Netid State Recv-Q Send-Q Local Address:Port Peer Address:Port
tcp LISTEN 0 128 :::22 :::* users:(("sshd",1358,4))
tcp LISTEN 0 128 *:22 *:* users:(("sshd",1358,3))
tcp LISTEN 0 100 ::1:25 :::* users:(("master",1437,13))
tcp LISTEN 0 100 127.0.0.1:25 *:* users:(("master",1437,12))

显示socket统计

[root@bzhl ~]# ss -s
Total: 318 (kernel 663)
TCP: 17 (estab 5, closed 0, orphaned 0, synrecv 0, timewait 0/0), ports 0

Transport Total IP IPv6
* 663 - -
RAW 0 0 0
UDP 2 1 1
TCP 17 14 3
INET 19 15 4
FRAG 0 0 0

当服务器产生大量的socket连接时,通常会使用该命令来做宏观数据统计;ss的大部分参数应用和netstat很像,可以参考netstat相关参数的用法。