Linux中tcp连接不释放怎么回事,处理方案是什么
Admin 2022-07-21 群英技术资讯 1155 次浏览
这篇文章主要讲解了“Linux中tcp连接不释放怎么回事,处理方案是什么”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Linux中tcp连接不释放怎么回事,处理方案是什么”吧!解决方法:1、利用修改keepalive配置为合适的值可以快速释放端口连接,利用echo设置“设置tcp_keepalive_time”即可,语法为“echo "指定值" > /proc/sys/net/ipv4/tcp_keepalive_time”;2、编辑“/etc/sysctl.conf”文件,语法为“net.ipv4.tcp_keepalive_time=指定值”。

本教程操作环境:linux7.3系统、Dell G3电脑。
问题描述
在开发测试时发现断开与服务器端口后再次连接时拒绝连接。
分析:服务器上查看端口占用情况,假设端口为8080。
netstat -anp |grep 8080
发现端口8080端口显示被占用(ip为本机ip确定是上次连接)且状态为ESTABLISHED,然而实际上连接已经断开,但是服务端没有断开连接,查看TCP的keepalive配置。
sysctl -a |grep keepalive
发现为默认的配置
net.ipv4.tcp_keepalive_time = 7200 net.ipv4.tcp_keepalive_probes = 9 net.ipv4.tcp_keepalive_intvl = 75
默认情况下在连接空闲7200秒即2个小时后才会发送keepalive探测包来确认连接情况。
解决方案
解决:
1、通过修改keepalive配置为合适的值(如改为200秒)可以快速释放端口连接。
临时修改,通过echo设置tcp_keepalive_time。
echo "200" > /proc/sys/net/ipv4/tcp_keepalive_time
2、永久生效,编辑/etc/sysctl.conf,新增或修改为
net.ipv4.tcp_keepalive_time = 200
然后执行命令使修改后的配置生效
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
猜你喜欢
linux中finger找不到的解决方法:1、将镜像文件加载到Linux光驱,并将光驱挂载到Linux系统上;2、利用“ls | grep finger”命令定位finger软件包;3、利用“rpm -ivh 完整的rpm包名”命令安装finger即可。
今天继续给小伙伴们分享关于“vsftpd配置第二章节”的内容,为了让大家更好的理解这方面的知识点,小编在此整理了相关资料,感兴趣的话一定不要错过了。
linux删除文件名是乱码文件的方法:1、利用“ls -i”命令获取文件的节点号,ls命令用于显示指定工作目录下之内容;2、通过获取到的文件节点号利用find命令即可删除指定的文件,语法为“find -inum 节点号 -delete”。
解决方法:1、利用“yum list | grep zip/unzip”获取软件安装列表,没有结果说明没有安装;2、利用“yum install zip”命令安装zip;3、利用“yum install unzip”命令安装unzip即可。
在Linux中添加定时任务是比较经常遇到的需求,那么我们如何来实现添加呢?crond是Linux下用来周期性的执行某种任务或者等待处理某些事件的一个守护进程,下面小编就介绍下如何用crond命令来添加定时任务,有需要的朋友就继续往下看吧。
成为群英会员,开启智能安全云计算之旅
立即注册关注或联系群英网络
7x24小时售前:400-678-4567
7x24小时售后:0668-2555666
24小时QQ客服
群英微信公众号
CNNIC域名投诉举报处理平台
服务电话:010-58813000
服务邮箱:service@cnnic.cn
投诉与建议:0668-2555555
Copyright © QY Network Company Ltd. All Rights Reserved. 2003-2020 群英 版权所有
增值电信经营许可证 : B1.B2-20140078 粤ICP备09006778号 域名注册商资质 粤 D3.1-20240008