這篇文章主要講解了“l(fā)inux中tcp連接不釋放怎么解決”,文中的講解內(nèi)容簡單清晰,易于學(xué)習(xí)與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學(xué)習(xí)“l(fā)inux中tcp連接不釋放怎么解決”吧!
目前成都創(chuàng)新互聯(lián)公司已為上1000家的企業(yè)提供了網(wǎng)站建設(shè)、域名、虛擬主機、網(wǎng)站托管、服務(wù)器租用、企業(yè)網(wǎng)站設(shè)計、東方網(wǎng)站維護等服務(wù),公司將堅持客戶導(dǎo)向、應(yīng)用為本的策略,正道將秉承"和諧、參與、激情"的文化,與客戶和合作伙伴齊心協(xié)力一起成長,共同發(fā)展。
解決方法:1、利用修改keepalive配置為合適的值可以快速釋放端口連接,利用echo設(shè)置“設(shè)置tcp_keepalive_time”即可,語法為“echo "指定值" > /proc/sys/net/ipv4/tcp_keepalive_time”;2、編輯“/etc/sysctl.conf”文件,語法為“net.ipv4.tcp_keepalive_time=指定值”。
本教程操作環(huán)境:linux7.3系統(tǒng)、Dell G3電腦。
問題描述
在開發(fā)測試時發(fā)現(xiàn)斷開與服務(wù)器端口后再次連接時拒絕連接。
分析:服務(wù)器上查看端口占用情況,假設(shè)端口為8080。
netstat -anp |grep 8080
發(fā)現(xiàn)端口8080端口顯示被占用(ip為本機ip確定是上次連接)且狀態(tài)為ESTABLISHED,然而實際上連接已經(jīng)斷開,但是服務(wù)端沒有斷開連接,查看TCP的keepalive配置。
sysctl -a |grep keepalive
發(fā)現(xiàn)為默認的配置
net.ipv4.tcp_keepalive_time = 7200 net.ipv4.tcp_keepalive_probes = 9 net.ipv4.tcp_keepalive_intvl = 75
默認情況下在連接空閑7200秒即2個小時后才會發(fā)送keepalive探測包來確認連接情況。
解決方案
解決:
1、通過修改keepalive配置為合適的值(如改為200秒)可以快速釋放端口連接。
臨時修改,通過echo設(shè)置tcp_keepalive_time。
echo "200" > /proc/sys/net/ipv4/tcp_keepalive_time
2、永久生效,編輯/etc/sysctl.conf,新增或修改為
net.ipv4.tcp_keepalive_time = 200
然后執(zhí)行命令使修改后的配置生效
感謝各位的閱讀,以上就是“l(fā)inux中tcp連接不釋放怎么解決”的內(nèi)容了,經(jīng)過本文的學(xué)習(xí)后,相信大家對linux中tcp連接不釋放怎么解決這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是創(chuàng)新互聯(lián),小編將為大家推送更多相關(guān)知識點的文章,歡迎關(guān)注!
網(wǎng)頁題目:linux中tcp連接不釋放怎么解決
標(biāo)題路徑:http://www.rwnh.cn/article36/ghchpg.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供小程序開發(fā)、全網(wǎng)營銷推廣、網(wǎng)頁設(shè)計公司、關(guān)鍵詞優(yōu)化、品牌網(wǎng)站建設(shè)、域名注冊
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)