NAME
ss - another utility to investigate sockets
SYNOPSIS
ss [options] [ FILTER ]
参数:
-h, --help 帮助信息
-V, --version 打印版本信息
-n, --numeric 不解析服务名称
-r, --resolve 解析主机名
-a, --all 显示所有的套接字
-l, --listening 显示监听的套接字
-o, --options 显示计时器信息
-e, --extended 显示详细的套接字信息
-m, --memory 显示套接字内存的使用
-p, --processes 显示使用套接字的进程
-i, --info 显示TCP内部信息
-s, --summary 显示套接字使用概况
-b, --bpf show bpf filter socket information
-E, --events continually display sockets as they are destroyed
-Z, --context display process SELinux security contexts
-z, --contexts display process and socket SELinux security contexts
-N, --net switch to the specified network namespace name
-4, --ipv4 仅显示IPv4的套接字
-6, --ipv6 仅显示IPv6的套接字
-0, --packet 显示PACKET套接字
-t, --tcp 仅显示TCP套接字
-S, --sctp 仅显示SCTP套接字
-u, --udp 仅显示UDP套接字
-d, --dccp 仅显示DCCP套接字
-w, --raw 仅显示RAW套接字
-x, --unix 仅显示 Unix套接字
--vsock display only vsock sockets
-f, --family=FAMILY 显示 FAMILY类型的套接字(sockets),FAMILY可选,支持 unix,inet,inet6,link,netlink,vock
-K, --kill 显示被强行关闭的套接字
-H, --no-header Suppress header line
-A, --query=QUERY, --socket=QUERY
QUERY := {all|inet|tcp|udp|raw|unix|unix_dgram|unix_stream|unix_seqpacket|packet|netlink|vsock_stream|vsock_dgram}[,QUERY]
-D, --diag=FILE 将原始TCP套接字信息转储到文件
-F, --filter=FILE 使用指定的过滤规则文件,过滤某种状态的连接
FILTER := [ state STATE-FILTER ] [ EXPRESSION ]
STATE-FILTER := {all|connected|synchronized|bucket|big|TCP-STATES}
TCP-STATES := {established|syn-sent|syn-recv|fin-wait-{1,2}|time-wait|closed|close-wait|last-ack|listen|closing}
connected := {established|syn-sent|syn-recv|fin-wait-{1,2}|time-wait|close-wait|last-ack|closing}
synchronized := {established|syn-recv|fin-wait-{1,2}|time-wait|close-wait|last-ack|closing}
bucket := {syn-recv|time-wait}
big := {established|syn-sent|fin-wait-{1,2}|closed|close-wait|last-ack|listen|closing}
示例:
ss -s //显示socket摘要信息
ss -l //列出所有打开的网络连接端口
ss -pl //查看进程使用的socket
ss -at //显示所有tcp socket
ss -o state established '( dport = :http or sport = :http )' //显示所有状态为established的http连接
ss -o state fin-wait-1 '( sport = :http or sport = :https )' dst 100.100.30/24 //列举出处于 FIN-WAIT-1状态的源端口为80或者443,目标网络为 100.100.30/24所有 tcp套接字
ss -4 state established //通过tcp状态过来套接字
tcp连接的几种状态:
established
syn-sent
syn-recv
fin-wait-1
fin-wait-2
time-wait
closed
close-wait
last-ack
listen
closing
all: 所有以上状态
connected: 除了listen and closed的所有状态
synchronized: 所有已连接的状态除了syn-sent
bucket: 显示状态为maintained as minisockets,如:time-wait和syn-recv
big: 和bucket相反
ss效率会比netstat高,推荐使用ss。