服务器tcp连接数过高(windows查看tcp端口连接数)
关于这个windows查看tcp端口连接数(服务器tcp连接数过高)很多人还不知道,现在让我们一起来看看吧!
1、本次要监控的服务器环境是:操作系统版本:centos7Zabbix-agnet版本:0.8zabbix-服务器版本:10安装前了解一些tcp的知识。每个状态的含义如下:听着–侦听来自远程TCP端口的连接请求;SYN-SENT–发送连接请求后,等待匹配的连接请求;SYN-RECEIVED–接收并发送连接请求后,等待连接请求的确认;成立–表示一个开放的连接,数据可以传输给用户;FIN-WAIT-1–等待远程TCP的连接中断请求或之前连接中断请求的确认;FIN-WAIT-2–正在等待来自远程TCP的连接中断请求;关闭-等待–等待来自本地用户的连接中断请求;关闭–等待远程TCP确认连接中断;LAST-ACK–等待最初发送到远程TCP的连接中断请求的确认;时间-等待–等待足够的时间,确保远程TCP收到连接中断请求的确认;关闭–没有连接状态;TCP连接过程是状态转换,由用户调用引起:打开、发送、接收、关闭、中止和状态;;传输的数据段,特别是那些数据段SYN、ACK、RST和FIN包括以下标志:还有,超时,以上都会使TCP状态发生变化。详细注释收听状态FTP服务启动后,首先处于监听状态。
2、既定地位建立是指建立连接。表示两台机器正在通信。关闭_等待当对方主动关闭连接或者 *** 异常导致连接中断时,我们的状态就会变成CLOSE_WAIT。
3、这时我们会调用close()使连接正确关闭。时间_等待我们主动调用close()断开连接,收到对方确认后状态变为TIME_WAIT。TCP规定TIME_WAIT状态持续2MSL(即段更大生存期的两倍),以保证旧的连接状态不会影响新的连接。
4、TIME_WAIT状态下连接占用的资源不会被内核释放,所以作为服务器,在可能的情况下尽量不要主动断开连接,减少TIME_WAIT状态造成的资源浪费。目前有一个避免浪费TIME_WAIT资源的 *** ,就是关闭socket的LINGER选项。但是TCP协议并不推荐这种做法,这种操作在某些情况下可能会带来错误。
5、同步状态SYN_SENT状态表示连接请求。当你想访问其他电脑的服务时,你必须先向端口发送一个同步信号。此时状态为SYN_SENT,如果连接成功,将变为建立。
6、此时,SYN_SENT状态非常短。但是,如果你发现SYN_SENT很丰富,并发到了不同的机器上,那么你的机器就有可能感染了冲击波或者冲击波之类的病毒。这种病毒为了感染其他电脑,要对其他电脑进行扫描,并且在扫描的过程中,会向每一台要扫描的电脑发送同步请求,这也是为什么会出现很多SYN_SENT的原因。
7、服务器的安装和部署首先在服务器上创建一个新的脚本vim
8、/etc/zabbix/TCP_connections.sh。#!/bin/bash
9、#netstat-an|awk‘/^tcp/{++s[$nf]}end{for(ains)printa,s[a]}’|grep-w“成立”|cut-d””-F2
10、#netstat-an|awk‘/^tcp/{++s[$nf]}end{for(ains)printa,s[a]}’|grep-w“TIME_WAIT”|cut-d””-F2
11、#netstat-an|awk‘/^tcp/{++s[$nf]}end{for(ains)printa,s[a]}’|grep-w“听着”|cut-d””-f2ARGS=1
12、if[$#-ne“$ARGS”];然后
13、echo“请输入一个参数:”
14、fi
15、case$1in
16、ESTABLISHED)
17、result=`netstat-an|awk‘/^tcp/{++s[$nf]}end{for(ains)printa,s[a]}’|grep-w“成立”|cut-d””-F2`
18、echo$result
19、;;
20、TIME_WAIT)
21、result=`netstat-an|awk‘/^tcp/{++s[$nf]}end{for(ains)printa,s[a]}’|grep-w“TIME_WAIT”|cut-d””-F2`
22、echo$result
23、;;
24、LISTEN)
25、result=`netstat-an|awk‘/^tcp/{++s[$nf]}end{for(ains)printa,s[a]}’|grep-w“听着”|cut-d””-F2`
26、echo$result
27、;;
28、*)
29、echo“用法:$0(TIME_WAIT|ESTABLISHED|LISTEN)”
30、;;
31、esac将可执行权限分配给脚本。chmod+xtcp_connections.sh测试脚本是否正常。
32、[root@host-172-22-22-10zabbix]#。/TCP_connections.shLISTEN
33、2修改配置文件并加载脚本。vimzabbix_agentd.conf添加新列UserParameter=tcp.status[*],/etc/zabbix/TCP_connections.sh$1$2重新启动服务[root@host-172-22-22-10zabbix]#servicezabbix-agentrestart
34、重定向到/bin/systemCTLrestartzabbix-agent.serviceweb端配置创建三个新的监视项目,关键值是TCP.status[已建立]tcp.status[TIME_WAIT]TCP.status[监听]
35、一般1分钟后就可以采集数据了。
好了,windows查看tcp端口连接数(服务器tcp连接数过高)的知识介绍就到这里,本文到此结束!
本文内容由互联网用户自发贡献,该文观点仅代表作者本人。如发现本站有涉嫌抄袭侵权/违法违规的内容,请发送邮件至 203304862@qq.com
本文链接:https://jinnalai.com/tuiguang/210025.html