ss 命令

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。

 

 

posted @ 2019-10-22 21:15  imcati  阅读(221)  评论(0编辑  收藏  举报