ss命令用于显示socket状态。它可以显示PACKET套接字、TCP套接字、UDP套接字、DCCP套接字、RAW套接字、Unix域套接字等统计信息。它比其他工具更能显示等多个tcp和状态信息。它是一个非常实用、快速和有效的新工具,用于跟踪IP连接和套接字。SS命令可以提供以下信息:所有TCP套接字、所有UDP套接字、所有ssh/ftp/ttp/https持久连接所有连接到Xserver的本地进程使用状态(例如:connected、synchronized、SYN-RECV、SYN-SENT,TIME-WAIT),address,portfilterallstateFIN-WAIT-1tcpsocketconnectionsandmanymorepopularLinuxreleaseversionsupportsssandmanymonitoringtoolsusethesscommand.熟悉该工具将有助于您更好地发现和解决系统性能问题。强烈推荐使用ss命令代替一些netstat命令,比如netsat-ant/lnt等。grepEST|wc-l3100real0m12.960suser0m0.334ssys0m12.561s#timess-ostateestablished|wc-l3204real0m0.030suser0m0。005ssys0m0.026s结果很明显ss在统计并发连接数上比netstat效率更高。如果ss可以搞定,你还会选择netstat吗?你还在犹豫?请参阅以下示例,或跳转到帮助页面。常用ss命令:ss-l显示本地打开的所有端口ss-pl显示每个进程专门打开的socketss-t-a显示所有tcpsockets-u-a显示所有UDPsockets-ostateestablished'(dport=:smtporsport=:smtp)'显示所有已建立的SMTP连接ss-ostateestablished'(dport=:httporsport=:http)'显示所有已建立的HTTP连接ss-xsrc/tmp/.X11-unix/*查找连接到X服务器的所有进程ss-s列出当前socket详情:displaysocketsBriefinformation,list当前连接、关闭和等待的tcp连接#ss-sTotal:3519(kernel3691)TCP:26557(estab3163,closed23182,orphaned194,synrecv0,timewait23182/0),ports1452TransportTotalIPIPv6*3691--RAW220UDP1073TCP337533687INET3387337710FRAG000列出当前监听端口#ss-lRecv-QSend-QLocalAddress:PortPeerAddress:Port010:::5989:::*05*:rsync*:*0128:::sunrpc:::*0128*:sunrpc*:*0511*:http*:*0128:::ssh:::*0128*:ssh*:*0128::35766::*0128127.0.0.1:ipp*:*0128::1:ipp::*0100::1:smtp::*0100127.0.0.1:smtp*:*0511*:https*:*0100:::1311:::*05*:5666*:*0128*:3044*:*ss列出每个进程名称及其监听端口#ss-plss列出所有tcpsockets#ss-t-ass列出所有udpsockets#ss-u-ass列出http连接中的所有连接#ss-ostateestablished'(dport=:httporsport=:http)'以上包括外部提供的80个,和80个外部访问。使用以上命令可以完美替代netstat获取http并发连接数。在监控中,ss常用来列出本地有哪些进程连接到xserver#ss-xsrc/tmp/。x11-unix/*ss列出FIN-WAIT-1状态下的http和https连接#ss-ostatefin-wait-1'(sport=:httporsport=:https)'ss常用状态status:establishedsyn-sentsyn-recvfin-wait-1fin-wait-2time-waitclosedclose-waitlast-acklistenclosingall:以上所有状态connected:除了listen和closesynchronized之外的所有状态synchronized:除了syn-sentbucket之外的所有连接状态:显示状态,以minisockets的形式维护,即time-wait和syn-recv.big:与bucketstate.ss相反使用IP地址过滤sssrcADDRESS_PATTERNsrc:表示来源ADDRESS_PATTERN:表示地址规则如下:sssrc120.33.31.1#Listtheonesfrom20.33.31.1Connection# listsconnectiontoport120.33.31.1,80sssrc120.33.31.1:httpsssrc120.33.31.1:8ssuseportfilterssdportOPPORTOP:yesoperatorPORT:表示端口dport:表示过滤目标port,相反,还有如下sportOP操作符:<=或le:小于或等于>=或ge:大于或等于==或eq:等于!=或ne:不等于port<或lt:小于此端口>或gt:大于端口OP示例sssport=:http也可以是sssport=:80ssdport=:httpssdport\>:1024sssport\>:1024sssport\<:32000sssporteq:22ss端口!=:22ssstateconnectedsport=:httpss\(sport=:httporsport=:https\)ss-ostatefin-wait-1\(sport=:httporsport=:https\)dst192.168.1/24为什么ss比netstat快:netstat遍历/proc下的各个PID目录,ss直接读取/proc/net下的统计信息所以ss执行的时间消息资源以及消息的时间都比netstat少很多ss指令帮助#ss-hUsage:ss[OPTIONS]ss[OPTIONS][FILTER]-h,--helpthismessage-V,--versionoutput版本信息-n,--numeric不解析服务名-r,--resolve解析主机名-a,--all显示所有套接字-l,--listening显示监听套接字-o,--options显示定时器信息-e,--extended显示详细的套接字信息-m,--memory显示套接字内存使用情况-p,--processes显示使用套接字的进程-i,--info显示内部TCP信息-s,--summary显示套接字使用摘要-4,--ipv4仅显示IP版本4套接字-6,--ipv6仅显示IP版本6套接字-0,--packet显示PACKET套接字-t,--tcp仅显示TCP套接字-u,--udp显示onlyUDPsockets-d,--dccp仅显示DCCP套接字s-w,--raw仅显示RAW套接字-x,--unix仅显示Unix域套接字-f,--family=FAMILY显示FAMILY类型的套接字-A,--query=QUERY,--socket=QUERYQUERY:={all|inet|tcp|udp|raw|unix|packet|netlink}[,QUERY]-D,--diag=FILE将有关TCP套接字的原始信息转储到FILE-F,--filter=FILE读取过滤器信息fromFILEFILTER:=[stateTCP-STATE][EXPRESSION]以上就是亮虚教程网为各位小伙伴分享的Linux网络状态工具ss命令使用的详细讲解。以上就是良序教程网为各位小伙伴们分享的Linux相关知识。
