【Linux常用命令速查手册】关注【入门站】,后台回复“1001”即可领取。ss是SocketStatistics的缩写。顾名思义,ss命令可以用来获取socket统计信息,可以显示类似netstat的内容。但是ss的优点是可以显示更多更详细的TCP和连接状态信息,而且比netstat更快更高效。当服务器上的socket连接数变得非常多时,无论是使用netstat命令还是直接cat/proc/net/tcp,执行速度都会很慢。ssfast的秘密在于它利用了TCP协议栈中的tcp_diag。tcp_diag是一个分析统计模块,可以获取Linux内核中的第一手信息,保证ss快速高效。当然,如果你的系统中没有tcp_diag,ss也可以正常运行,只是效率会稍微变慢。(但还是比netstat快)ss命令用于显示套接字状态。它可以显示PACKET套接字、TCP套接字、UDP套接字、DCCP套接字、RAW套接字、Unix域套接字等统计信息。它显示更多的tcp和状态信息。它是一个非常实用、快速和有效的新工具,用于跟踪IP连接和套接字。SS命令可以提供以下信息。命令格式ss[parameter]ss[parameter][filter]该命令功能优于netstatsocket统计信息,iproute2包附带的另一个工具,可以查询socket命令参数的相关统计信息-h,--help帮助信息-V,--version程序版本信息-n,--numeric不解析服务名-r,--resolve解析主机名-a,--all显示所有套接字(sockets)-l,--listening显示监听状态套接字-o,--options显示定时器信息-e,--extended显示详细套接字信息-m,--memory显示套接字内存使用情况-p,--processes显示进程使用套接字(socket)-i,--info显示TCP内部信息-s,--summary显示套接字(socket)使用概览-4,--ipv4仅显示IPv4套接字(sockets)-6,--ipv6仅显示IPv6套接字(sockets)-0,--packet显示PACKET套接字(sockets)-t,--tcp只显示TCP套接字(sockets)-u,--udp只显示UCP套接字(sockets)-d,--dccp只显示DCCP套接字(sockets)-w,--raw只显示RAW套接字(sockets)-x,--unix只显示Unix套接字(sockets)-f,--family=FAMILY显示FAMILY类型的套接字(sockets),FAMILY是可选的,支持unix,inet,inet6,链接,netlink-A,--query=QUERY,--socket=QUERYQUERY:={all|inet|tcp|udp|raw|unix|packet|netlink}[,QUERY]-D,--diag=FILE发送原始TCP套接字(sockets)转储信息到文件-F,--filter=FILEreadfromfile获取过滤器信息FILTER:=[stateTCP-STATE][EXPRESSION]showTCPconnection>ss-a-tshowUDPlink>ss-a-ushowSoketssummary>ss-slistcurrentestablished,closed,orphanedandwaitingTCPsockets显示本地打开的所有端口>ss-ln查看进程使用的套接字>ss-pl查找打开的套接字/端口应用程序>ss-nlp|grep3306显示状态已建立的所有SMTP连接>ss-ostateestablished'(dport=:smtporsport=:smtp)'显示状态为Established>ss-ostateestablished'(dport=:httporsport=:http)'filterSocketswithTCPstate>ss-4stateFILTER-NAME-HERE>ss-6stateFILTER-NAME-HEREFILTER-NAME-HERE可以是以下任何一个listen:监听来自远程TCP端口的连接请求syn-sent:发送连接请求后等待匹配的连接请求(client)syn-recv:接收并发送连接请求后,等待对方确认连接请求(server)established:代表打开连接fin-wait-1:等待远程TCP连接中断请求,或者确认之前的连接中断请求fin-wait-2:等待远程TCP连接中断请求close-wait:等待本地用户关闭连接中断请求:等待远程TCP对连接中断的确认last-ack:等待确认发送给远程TCP的原始连接中断请求time-wait:等待足够的时间以确保远程TCP收到连接中断请求的确认closed:noconnectionstateall:以上所有状态connected:exceptlistenandclosedallstatesofsynchronized:allconnectedstatusexceptsyn-sentbucket:displaystatusismaintainedasminisockets,如:time-wait和syn-recv.big:与bucket相反。匹配远程地址和端口号>ssdstADDRESS_PATTERN>ssdst192.168.1.1>ssdst192.168.21.1:http>ssdst192.168.21.1:smtp>ssdst192.168.21.1:443比较本地或远程端口号>sssport=:http>ssdport=:http>ssdport\>:1024>sssport\>:1024>sssport\<:32000>sssporteq:22>ssdport!=:22>ss状态连接运动=:http>ss\(sport=:httporsport=:https\)>ss-ostatefin-wait-1\(sport=:httporsport=:https\)dst192.168.1/24ssdportOPPORT将远程端口与一个数字进行比较;sssportOPPORT将本地端口与数字进行比较OP可以表示以下任何一种:<=或le:小于或等于端口号>=或ge:大于或等于端口号==或eq:等于端口number!=orne:不等于端口号
