访问不上服务器的任何端口

           访问不了服务器端口问题

遇到一个问题:

客户反馈能够ping通服务器,但远程连接不上服务器(整个公司能有一两个client端能连上服务器),也访问不了服务器上的其他端口

排查过程如下:

1.让客户提供telnet端口报错信息,显示超时(通过超时能判断些问题)

 

2.判断网络连通性,client端可以ping通服务器

 

3.检查服务器端口是否监听,端口监听正常

 

4.是否系统内防火墙和pam模块有限制,检查发现系统内iptables/ufwpam模块默认策略 没有问题

5.检查系统内hosts.denyhosts.allow是否有对客户ip做相关限制,发现没有限制

6.检查系统内相关日志,也没有异常日志,但客户尝试登陆的日志并没有记录到auth.log里,从这里看估计请求都没有到达七层应用层面去,不然日志服务正常的话肯定会记录。

 

7.让客户连接然后在服务器端抓包发现,服务器能收到syn包,但是没有回应。这就能定位是系统层面限制导致的了,只要找到这个限制就行(结合第五条分析,基本判断限制是在系统层面的,不是应用层面的限制了)

 

。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。

一番抓耳挠腮 N个小时之后,通过客户提供的主机权限,发现/etc/sysctl.conf文件在客户反馈问题的当天有做配置修改。

 

接着进行配置查看发现net.ipv4.tcp_rw_recycle = 1这个内核参数值为1,由于客户公司内网办公环境是通过NAT转换成一个固定公网ip外出访问,但开启了这个参数之后,服务器会对收到的包进行时间戳比对,但NAT环境中多台主机同时请求就会出现TPC/IP时间戳不连续,造成服务端丢弃数据包 不做响应,刚好克制这种NAT环境,让客户把rw_recycle的值改成0在测试就好了。

之前还问过客户有没有做相关配置改动,客户一个劲说 没有 没有啊!

进一步学习tcp_rw_recycle和tw_reuse参数可以参考这篇文章:

https://www.cnblogs.com/Tao9/p/8267121.html

请问世界上什么最硬??  那肯定是客户的嘴啊!

不过这客户还是很有爱的哈哈哈

posted @ 2017-12-20 20:45  Arvin-Tao  阅读(2698)  评论(0编辑  收藏  举报