一 ss 是什么
ss 全称是Socket Statistics,用于显示各种socket的信息,ss命令功能和netstat类似,ss的优势在于它显示更多更详细的有关TCP和连接状态的信息,而且比netstat更快速更高效。ss 命令可以提供如下信息:
所有的TCP sockets
所有的UDP sockets
所有ssh/ftp/ttp/https持久连接
所有连接到Xserver的本地进程
使用state(例如:connected, synchronized, SYN-RECV, SYN-SENT,TIME-WAIT)、地址、端口过滤
二 常用的命令
基于状态的过滤器
通过指定的state,显示该状态的套接字信息。这些状态包括 established, syn-sent, syn-recv, fin-wait-1, fin-wait-2, time-wait, closed, closed-wait, last-ack监听和关闭等状态。
查看进程使用的socket
ss –pl
找出打开套接字/端口应用程序
ss -lp | grep 22
显示所有状态为established的连接,-o 会显示连接已经建立多长时间
ss -o state 'established'
ss列出所有状态为established的 mysql 连接
ss -o state established '( dport = :mysql or sport = : mysql )'
列出当前已经连接,关闭,等待的tcp连接
ss -s
ss使用IP地址筛选
ss src|dst ip_address[:port]
src 表示本地 dst表示远端ip
ss src 10.98.145.36
为什么ss比netstat快
netstat是遍历/proc下面每个PID目录,ss直接读/proc/net下面的统计信息。所以ss执行的时候消耗资源以及消耗的时间都比netstat少很多。
更多的用法大家可以动手实践一下,ss --help 。
转载自杨奇龙博客
标签:established,ss,netstat,state,linux,连接,wait From: https://www.cnblogs.com/lovezhr/p/17595603.html