FileManagement/linux/tcp连接数状态.txt

30 lines
1.2 KiB
Plaintext
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

#LINUX 查看tcp连接数及状态
netstat -n | awk '/^tcp/ {++S[$NF]} END {for(a in S) print a, S[a]}'
TCP连接状态详解
LISTEN 侦听来自远方的TCP端口的连接请求
SYN-SENT 再发送连接请求后等待匹配的连接请求
SYN-RECEIVED再收到和发送一个连接请求后等待对方对连接请求的确认
ESTABLISHED 代表一个打开的连接
FIN-WAIT-1 等待远程TCP连接中断请求或先前的连接中断请求的确认
FIN-WAIT-2 从远程TCP等待连接中断请求
CLOSE-WAIT 等待从本地用户发来的连接中断请求
CLOSING 等待远程TCP对连接中断的确认
LAST-ACK 等待原来的发向远程TCP的连接中断请求的确认
TIME-WAIT 等待足够的时间以确保远程TCP接收到连接中断请求的确认
CLOSED 没有任何连接状态
#查看9955端口的tcp连接数
netstat -nat|grep -i "9955"|wc -l
3、统计已连接上的状态为“established
netstat -na|grep ESTABLISHED|wc -l
研究发现Linux对外的随机分配端口是由一定限制的理论上单机对外的端口最大值为65535除去一些保留端口和被占用端口外也应该在6W左右但实际上单机建立对外连接时默认不超过28232个连接。
执行以下命令就很清楚原因了:
$ cat /proc/sys/net/ipv4/ip_local_port_range
输出结果为:
32768 61000
这就是Linux随机分配端口的范围如果在该范围内有被占用的端口那么连接数肯定小于28232.如果想更改这个范围,可以执行以下命令:
# echo "10000 65535" > /proc/sys/net/ipv4/ip_local_port_range