奇怪的问题:telnet无法连接另一台server的正常的开放端口

简介:

问题描述:

    有一台server(称为A)作为memcache服务器开放了11211端口,但是另一台server(称为B)无法调用A的memcache,显示无法连接。

排查:

  1. 先在B上用telnet 尝试连接连接A的11211端口,超时。

  2. 换用另外的机器来telnet A 的11211端口,正常。

  3. 用B去telnet另一台机器的开放端口,也正常。

  4. 用B telnet A的其他端口,例如 22,也不正常。

  5. 用A telnet B的开放端口,也正常。

所以,看来问题成了只有B telnet A的时候有问题。

后来想到在A上抓包看看,分别用B telnet A 和 用另一台能telnet通A的机器telnet A,观察两者在A上抓包的结果,发现结果果然不一样

B telnet A 时:

wKiom1WKfxLB1HZdAAGDRkCDRgo056.jpg

其他机器telnet A时:

wKiom1WKf6biTALkAAEpE7Tmw6Q942.jpg

可以看到B的telnet请求已经到达了A,但是A没有像正常情况下给予B相应,所以B就会显示超时。

虽然知道了问题出在哪,可是还是没思路,最后怀疑到内核的网络相关配置,即   /etc/sysctl.conf 的先关配置,对比了一下B和其他机子的该文件,发现B的配置里少了几行配置

wKiom1WKgLSy_9PDAAZSNFXr6EI537.jpg

然后在B的/etc/sysctl.conf里加上了这些配置,sysctl -p使生效,再尝试telnet A,竟然成功了。


说了这么多,虽然问题解决了,但是以本人当前的技能水平,还是不能精确的知道是哪个配置项起到了关键的作用,故而还是有点小郁闷。

还得博学啊!





     本文转自kai404 51CTO博客,原文链接:http://blog.51cto.com/kaifly/1665186,如需转载请自行联系原作者


相关文章
|
2月前
|
消息中间件 安全 Kafka
Kafka启动后需要开放什么端口?
Kafka启动后需要开放什么端口?
543 7
|
4月前
|
弹性计算 应用服务中间件 Linux
阿里云服务器开放端口完整图文教程
笔者近期开发完成的服务端程序部署在阿里云的ECS云服务器上面,一些应用程序配置文件需要设置监听的端口(如Tomcat的8080、443端口等),虽然通过CentOs 7系统的的「防火墙」开放了对应的端口号,任然无法访问端口号对应的应用程序,后面了解到原来还需要设置云服务器的「安全组规则」,开放相应的端口权限,服务端的接口才能真正开放。
657 1
阿里云服务器开放端口完整图文教程
|
2月前
|
Linux Python
用python扫描linux开放的端口(3种方式)
这篇文章介绍了三种使用Python实现Linux端口扫描的方法,包括基础版端口扫描、全端口扫描和多线程扫描技术。
55 15
|
3月前
|
网络协议 网络安全 Python
电脑中 TCP/UDP 端口是否开放的测试:令人意想不到的神奇策略等你发现!
【8月更文挑战第19天】在网络管理和维护中,常需确认TCP/UDP端口是否开放以确保服务运行顺畅。端口如同计算机对外通信的“门”,TCP提供可靠连接,UDP则快速但无连接。测试端口是否开放的方法多样:可用`telnet`测试TCP端口,如`telnet localhost 80`;UDP测试较复杂,可用`nc`工具,如`nc -u -z localhost 53`。此外,也有在线工具可供选择,但需确保其安全性。
207 1
|
3月前
|
网络协议 Windows
在电脑上测试TCP/UDP端口是否开放,还是得网络大佬这招厉害!
在电脑上测试TCP/UDP端口是否开放,还是得网络大佬这招厉害!
581 2
|
4月前
|
Linux
Linux telnet安装及端口测试联通性
Linux telnet安装及端口测试联通性
114 10
|
3月前
|
缓存 NoSQL 网络安全
【Azure Redis 缓存】使用开源工具redis-copy时遇见6379端口无法连接到Redis服务器的问题
【Azure Redis 缓存】使用开源工具redis-copy时遇见6379端口无法连接到Redis服务器的问题
|
3月前
|
Docker 容器
【Azure 应用服务】App Server 部署后,Docker报错,找不到8080端口
【Azure 应用服务】App Server 部署后,Docker报错,找不到8080端口
|
3月前
|
存储 缓存 NoSQL
【Azure Redis 缓存】Azure Cache for Redis服务中,除开放端口6379,6380外,对13000,13001,15000,15001 为什么也是开放的呢?
【Azure Redis 缓存】Azure Cache for Redis服务中,除开放端口6379,6380外,对13000,13001,15000,15001 为什么也是开放的呢?
|
3月前
|
网络协议 安全 Linux
在Linux中,如何查看开放的端口?
在Linux中,如何查看开放的端口?