linux系统查看网络连接情况

netstat命令状态说明:

CLOSED                      没有使用这个套接字[netstat 无法显示closed状态]
LISTEN 套接字正在监听连接[调用listen后]
SYN_SENT 套接字正在试图主动建立连接[发送SYN后还没有收到ACK]
SYN_RECEIVED 正在处于连接的初始同步状态[收到对方的SYN,但还没收到自己发过去的SYN的ACK]
ESTABLISHED 连接已建立
CLOSE_WAIT 远程套接字已经关闭:正在等待关闭这个套接字[被动关闭的一方收到FIN]
FIN_WAIT_1 套接字已关闭,正在关闭连接[发送FIN,没有收到ACK也没有收到FIN]
CLOSING 套接字已关闭,远程套接字正在关闭,暂时挂起关闭确认[在FIN_WAIT_1状态下收到被动方的FIN]
LAST_ACK 远程套接字已关闭,正在等待本地套接字的关闭确认[被动方在CLOSE_WAIT状态下发送FIN]
FIN_WAIT_2 套接字已关闭,正在等待远程套接字关闭[在FIN_WAIT_1状态下收到发过去FIN对应的ACK]
TIME_WAIT 这个套接字已经关闭,正在等待远程套接字的关闭传送[FIN、ACK、FIN、ACK都完毕,这是主动方的最后一个状态,在过了2MSL时间后变为CLOSED状态]

提示:LISTEN和LISTENING的状态只有用-a或者-l才能看到

 

通过netstat命令查看数据库、网站等连接情况(并发数等)

统计出所有TCP连接以及各个状态的连接数

netstat -n | awk '/^tcp/ {++S[$NF]} END {for(a in S) print a, S[a]}'

结果示例:

  SYN_RECV 1
  ESTABLISHED 45
  TIME_WAIT 125

单独查看web站点当前并发数:

netstat -tanl|grep "ESTABLISHED"|grep ":80"|wc -l

单独查看mysql当前连接数:

netstat -tanl|grep "ESTABLISHED"|grep ":3306"|wc -l

posted @ 2018-12-04 18:09  云深知处  阅读(16352)  评论(0编辑  收藏  举报