博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
tcp协议timestamp字段导致问题分析
阅读量:6839 次
发布时间:2019-06-26

本文共 635 字,大约阅读时间需要 2 分钟。

1.现象 不同主机C1,C2上的相同模块(开启timestamp),通过NAT网关(1个出口ip)访问同一服务S,主机C1 connect成功,而主机C2 connect失败

2.分析 根据现象上述问题明显和tcp timestmap有关;查看linux 2.6.32内核源码,发现tcp_tw_recycle/tcp_timestamps都开启的条件下,60s(timewai时间)内同一源ip主机的socket connect请求中的timestamp必须是递增的。
3.验证
server端当tcp_tw_recycle和tcp_timestamps都是1的时候,会检查收到数据包TCP选项字段中的的timestamp(TS Value),当来自同一个IP地址(任意源端口号)后来的数据包中TCP选项字段如果有timestamp且比前面的数据包中的timestamp小,则server不做ACK响应
4.解决方法
1.服务器端不要将tcp_tw_recycle字段和tcp_timestamps字段同时设为1
2.客户端把tcp_timestamps字段设0,这样不会发送TCP选项字段中的timestamps选项
对于服务提供方1较适合
引用:
个人建议关闭tcp_tw_recycle选项,而不是timestamp;因为 在tcp timestamp关闭的条件下,开启tcp_tw_recycle是不起作用的;而tcp timestamp可以独立开启并起作用。

转载地址:http://dqkul.baihongyu.com/

你可能感兴趣的文章
CISCO 路由器 HWIC-4ESW 配置案例
查看>>
1 张图秒懂 Nova 16 种操作 - 每天5分钟玩转 OpenStack(44)
查看>>
hostPath Volume - 每天5分钟玩转 Docker 容器技术(148)
查看>>
Liunx 终端 bash 提示符 修改 DIY
查看>>
jQuery 判断图片加载完毕例子
查看>>
Freemarker生成PDF
查看>>
IDC评述网:12月上旬全球域名解析服务商Top15
查看>>
Tomcat认证授权与简单的SSO
查看>>
Redis未授权访问及安全组漏洞招致kerberods来挖矿
查看>>
ip 归属地查询
查看>>
php xampp redis扩展
查看>>
apache 403
查看>>
scanf函数
查看>>
阿里云不做SaaS、要练好内功被集成,发布SaaS加速器
查看>>
双系统如何正确的删除Ubuntu
查看>>
大话it职场之经历风雨是否能见彩虹
查看>>
二叉树的遍历与还原
查看>>
我的友情链接
查看>>
二进制安装MariaDB 5.5.36
查看>>
我的友情链接
查看>>