firth﹌ » 日志 » 8080端口状态为fin_wait1的问题
8080端口状态为fin_wait1的问题
Scandinavia 发表于 2008-07-09 19:31:23
本人遇到的问题比较简单,startup.bat启动后,直接关闭其cmd窗口,而未使用shutdown.bat。因此在另外一个cmd窗口执行netstat命令后看到8080端口状态为fin_wait1,但是在任务管理器里找不到使用该端口的对应进程。
解决也很简单,双击shutdown.bat即可。
查了点fin_wait1的资料:
fin_wait1状态是在server端主动要求关闭tcp连接,并且主动发送fin以后,等待client端回复ack时候的状态。fin_wait1的产生原因有很多,需要结合netstat的状态来分析。
netstat -nat|awk '{print awk $NF}'|sort|uniq -c|sort -n
上面的命令可以帮助分析哪种tcp状态数量异常
netstat -nat|grep serverip:80|awk '{print }' |awk -F: '{print }' | sort| uniq -c|sort -n
则可以帮助你将请求80服务的client ip按照连接数排序。
回到fin_wait1这个话题,如果发现fin_wait1状态很多,并且client ip分布正常,那可能是有人用肉鸡进行ddos攻击、又或者最近的程序改动引起了问题。一般说来后者可能性更大,应该主动联系程序员解决。
但是如果有某个ip连接数非常多,就值得注意了,可以考虑用iptables直接封了他。
PS:
不同服务器之间内网通信获取数据引起的time_wait状态过多是可以通过设置sysctl的reuse和recyclel来得到改善的。
解决也很简单,双击shutdown.bat即可。
查了点fin_wait1的资料:
fin_wait1状态是在server端主动要求关闭tcp连接,并且主动发送fin以后,等待client端回复ack时候的状态。fin_wait1的产生原因有很多,需要结合netstat的状态来分析。
netstat -nat|awk '{print awk $NF}'|sort|uniq -c|sort -n
上面的命令可以帮助分析哪种tcp状态数量异常
netstat -nat|grep serverip:80|awk '{print }' |awk -F: '{print }' | sort| uniq -c|sort -n
则可以帮助你将请求80服务的client ip按照连接数排序。
回到fin_wait1这个话题,如果发现fin_wait1状态很多,并且client ip分布正常,那可能是有人用肉鸡进行ddos攻击、又或者最近的程序改动引起了问题。一般说来后者可能性更大,应该主动联系程序员解决。
但是如果有某个ip连接数非常多,就值得注意了,可以考虑用iptables直接封了他。
PS:
不同服务器之间内网通信获取数据引起的time_wait状态过多是可以通过设置sysctl的reuse和recyclel来得到改善的。
收藏:
QQ书签
del.icio.us
订阅:
Google
抓虾
