tcp_tw_recycle和tcp_timestamps导致connect失败问题

news/2025/1/24 14:38:51/文章来源:https://www.cnblogs.com/walkersss/p/18689494

第一个现象:模块A通过NAT网关访问服务S成功,而模块B通过NAT网关访问服务S经常性出现connect失败,抓包发现:服务S端已经收到了syn包,但没有回复synack;另外,模块A关闭了tcp timestamp,而模块B开启了tcp timestamp;
第二个现象:不同主机上的模块C(开启timestamp),通过NAT网关(1个出口ip)访问同一服务S,主机C1 connect成功,而主机C2 connect失败;

在使用 NAT 做转发或者做负载均衡的时候,关闭后端服务器的 tcp_tw_recycle 功能,保留 tcp_timestamps。

参数:
/proc/sys/net/ipv4/tcp_timestamps - 控制timestamp选项开启/关闭
/proc/sys/net/ipv4/tcp_tw_recycle - 减少timewait socket释放的超时时间

echo 0 > /proc/sys/net/ipv4/tcp_tw_recycle;
tcp_tw_recycle默认是关闭的,有不少服务器,为了提高性能,开启了该选项;
个人建议关闭tcp_tw_recycle选项,而不是timestamp;
因为 在tcp timestamp关闭的条件下,开启tcp_tw_recycle是不起作用的;而tcp timestamp可以独立开启并起作用。

timestamp和tw_recycle同时开启的条件下,timewait状态socket释放的超时时间和rto相关;否则,超时时间为TCP_TIMEWAIT_LEN,即60s;


cat /proc/sys/net/ipv4/tcp_tw_recycle
cat /proc/sys/net/ipv4/tcp_timestamps

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/874727.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

SpringBoot使用SSE流,打tar包发版后出现问题

SpringBoot使用SSE流,打tar包发版后出现问题 以下纯个人实践,如有问题,还望指正~ 出现的问题 出现原因:本地调试SSE推送数据没有问题,但是通过打包为tar包发版之后,出现了以下报错: 主要问题就是: java.lang.IllegalArgumentException: Async support must be enabled …

【每日一题】20250124

读书就是这样好,无论心不在焉,板着长脸,只要考试及格,就是一个及格的人。【每日一题】 1.(20分) \(\hspace{0.6cm}\)如图所示,质量 \(M=2 \; \mathrm{kg}\) 的滑块套在光滑的水平轨道上,质量 \(m=1 \; \mathrm{kg}\) 的小球通过长 \(L=0.5 \; \mathrm{m}\) 的轻质细杆与…

Golang sync.pool源码解析

sync.Pool 是 Go 中用于对象复用的工具,可减少频繁创建和销毁对象的开销,从而优化内存使用和降低 GC 压力。本文通过分析其用法、真实案例及源码结构,详细解读了 sync.Pool 的读写流程及其背后的高效设计思想,为性能优化提供了实用参考。Golang sync.pool源码解析 - sync.p…

从靶场到实战:双一流高校多个高危漏洞

本文结合其它用户案例分析讲解挖掘某双一流站点的过程,包含日志泄露漏洞深入利用失败,到不弱的弱口令字典进入后台,再到最后偶遇一个貌似只在靶场遇到过的高危漏洞。本文结合其它用户案例分析讲解挖掘某双一流站点的过程,包含日志泄露漏洞深入利用失败,到不弱的弱口令字典…

Nginx 架构和安装

1.1 Nginx 概述 1.1.1 Nginx 介绍 Nginx:engine X ,2002年开发,分为社区版和商业版(nginx plus ) 2019年3月11日 F5 Networks 6.7亿美元的价格收购 Nginx是免费的、开源的、高性能的HTTP和反向代理服务器、邮件代理服务器、以及TCP/UDP代理服务器 解决C10K问题(10K Connect…

Linux命令大全-快速查询手册

访问地址: 线上访问:https://git.io/linux 开源社区:https://github.com/jaywcjlove/linux-command 简要介绍: Linux 命令大全搜索工具,内容包含 Linux 命令手册、详解、学习、搜集,中文解释,支持背景切换。主要功能: 当前仓库搜集了 580 多个 Linux 命令,是一个非盈利…

IPTVnator - 最方便的开源 IPTV 播放器

IPTVnator 是一款视频播放器应用程序,提供对 IPTV 播放列表播放(m3u、m3u8)的支持。该应用程序允许用户使用远程 URL 或从本地文件系统上传文件来导入播放列表。此外,它还支持 XMLTV 格式的 EPG 信息,可以通过 URL 提供。该应用程序是一个使用 Electron(目前正在迁移到 T…

中电金信首次通过数据管理能力成熟度(DCMM)四级认证

日前,中国电子信息行业联合会发布《关于公布获得数据管理能力成熟度等级证书单位的通知(第十四批)》,中电金信正式通过数据管理能力成熟度(DCMM)等级认定——量化管理级(4级)。DCMM即数据管理能力成熟度评估模型(Data management Capability Maturity Model),是我国首…

执子之手与子偕老:镌刻在时光深处的爱情传奇

执子之手与子偕老:镌刻在时光深处的爱情传奇“死生契阔,与子成说。执子之手,与子偕老。” 这出自《诗经・邶风・击鼓》的千古名句,如同一首跨越千年的悠扬情歌,萦绕在人类情感的天际,描绘出爱情最纯粹、最美好的模样,承载着人们对永恒相伴、不离不弃的深深期许。它不仅仅…

二维数点问题

二维数点问题。P10814 【模板】离线二维数点 询问区间 \([l,r]\) 内,在值域为 \([0,x]\) 中数的个数。 想象这是个二维平面,我们要求的就是矩形内点的个数。通常用 cdq 做,将询问拆成两个点,将点按照x坐标排序,按照y坐标加入到树状数组中(为了满足第二条限制),这时就依次…

CS162 23Fall总结

CS 162 23Fall Lab 总结 PintOS是一个x86架构的教育用操作系统,它支持多线程,加载并运行用户程序,以及文件系统。骨架代码只提供了很简单的实现,本Lab需要丰富并增强这些模块的功能。本实验提供Bochs2和QEMU3模拟器模拟x86 CPU和相应外设来运行并调试PintOS.PintOS源码结构…

《汇编语言》阅读笔记

如题汇编语言 首先,我必须赞扬王爽老师,这是我见过写的最好的教科书了. 然后要注意,汇编语言这本书的前提是8086PC机十六位处理器.还要学x86和x64以及其他奇奇怪怪的架构的汇编 全称 AH&AL=AX(accumulator):累加寄存器 BH&BL=BX(base):基址寄存器 CH&CL=CX(co…