一个Oracle监听问题的网络排查

本文涉及的产品
云防火墙,500元 1000GB
简介:   今天在梳理一套环境的时候,发现了一个奇怪的问题,应用端连接正常,但是服务端却有些问题。    假设服务端的IP地址为10.129.128.57    使用tnsping本机的服务,竟然抛出了监听的问题。

  今天在梳理一套环境的时候,发现了一个奇怪的问题,应用端连接正常,但是服务端却有些问题。

   假设服务端的IP地址为10.129.128.57

   使用tnsping本机的服务,竟然抛出了监听的问题。

$ tnsping s2gamebbs
Attempting to contact (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = s2gamebbs.test.com)(PORT = 1528)) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = gamebbs)))
TNS-12541: TNS:no listener

   是监听没启动吗,查看监听进程存在,确实是启动了,但是查看监听状态却抛出了错误

LSNRCTL> status listener_1528
Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=s2gamebbs.test.com)(PORT=1528)))
TNS-12541: TNS:no listener
 TNS-12560: TNS:protocol adapter error
  TNS-00511: No listener
   Linux Error: 111: Connection refused

这个问题立马勾起了我的兴趣,我使用域名解析的方式查看是没有问题的。

$ ping `hostname`
PING s2gamebbs.cyou.com (10.129.128.57) 56(84) bytes of data.
64 bytes from s2gamebbs.cyou.com (10.129.128.57): icmp_seq=1 ttl=64 time=0.059 ms
。。。
^C
但是ping服务器的IP是有问题的。
# ping 10.129.128.57                                     
PING 10.129.128.57 (10.129.128.57) 56(84) bytes of data.   
From 10.129.128.57 icmp_seq=1 Destination Port Unreachable 
From 10.129.128.57 icmp_seq=2 Destination Port Unreachable    
如此一来,这个问题就有趣了,我对比了如下的几种测试场景。 
# telnet 10.129.128.57 1528
Trying 10.129.128.57...
telnet: connect to address 10.129.128.57: Connection refused
#  telnet 127.0.0.1 1528
Trying 127.0.0.1...
telnet: connect to address 127.0.0.1: Connection refused
# telnet `hostname` 1528
Trying 10.129.128.57...
telnet: connect to address 10.129.128.57: Connection refused
同时做了strace调试,也没有看到明显的问题,于是我怀疑是网络层面解析的问题,/etc/hosts的文件看了很多遍没有问题,那就只有网络层面,比如防火墙了,我开始琢磨防火墙里的配置。 看到了下面的一段:
-A INPUT -s 10.10.75.59/32 -j ACCEPT
-A INPUT -p udp -j ACCEPT
-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
-A INPUT -j REJECT --reject-with icmp-port-unreachable
其中最后的一句是关键,如果倒数两句的顺序调整一下,上面的错误就会完全不一样。

   这个参数其实的设定其实也是一种安全策略,如果能够扫描到我们的端口,但是却没法得知我们的网络访问是否在防火墙控制下,当然这个地方的设置伤害到“自己人”了。所以暂不需要。

去掉折后,重新启动防火墙,问题就得到了解决。



目录
相关文章
|
13天前
|
网络协议 Linux
使用nmcli命令设置IP地址并排查网络故障
nmcli 是一个功能强大的网络管理工具,通过它可以轻松配置IP地址、网关和DNS,同时也能快速排查网络故障。通过正确使用nmcli命令,可以确保网络配置的准确性和稳定性,提高系统管理的效率。希望本文提供的详细步骤和示例能够帮助您更好地掌握nmcli的使用方法,并有效解决实际工作中的网络问题。
30 2
|
2月前
|
Ubuntu Oracle 关系型数据库
Oracle VM VirtualBox之Ubuntu 22.04LTS双网卡网络模式配置
这篇文章是关于如何在Oracle VM VirtualBox中配置Ubuntu 22.04LTS虚拟机双网卡网络模式的详细指南,包括VirtualBox网络概述、双网卡网络模式的配置步骤以及Ubuntu系统网络配置。
283 3
|
3月前
|
存储 缓存 网络协议
网络丢包排查方法
网络丢包排查方法
|
3月前
|
运维 监控 网络协议
在Linux中,如何进行网络故障排查?
在Linux中,如何进行网络故障排查?
|
3月前
|
域名解析 运维 监控
网络故障排查的常用工具与方法:技术深度解析
【8月更文挑战第20天】网络故障排查是一项复杂而重要的工作,需要网络管理员具备扎实的网络知识、丰富的实践经验和灵活的问题解决能力。通过掌握常用工具和方法,遵循科学的排查流程,可以显著提高故障排查的效率和准确性。希望本文能为读者在网络故障排查方面提供有益的参考和启示。
|
3月前
|
Kubernetes 网络协议 网络安全
在K8S中,容器提供一个服务,外部访问慢,到底是容器网络问题?还是容器服务问题?这种怎么排查?
在K8S中,容器提供一个服务,外部访问慢,到底是容器网络问题?还是容器服务问题?这种怎么排查?
|
3月前
|
Kubernetes 监控 Shell
在K8S中,我们公司用户反应pod连接数非常多,希望看一下这些连接都是什么信息?什么状态?怎么排查?容器里面没有集成bash环境、网络工具,怎么处理?
在K8S中,我们公司用户反应pod连接数非常多,希望看一下这些连接都是什么信息?什么状态?怎么排查?容器里面没有集成bash环境、网络工具,怎么处理?
|
3月前
|
Kubernetes 监控 网络协议
在K8S中,如果因为网络原因导致Pod异常,该如何排查?
在K8S中,如果因为网络原因导致Pod异常,该如何排查?
|
3月前
|
监控 网络协议 Linux
在Linux中,如何排查网络连接问题?
在Linux中,如何排查网络连接问题?
|
3月前
|
网络虚拟化
网络二层环路,老练的网工,都是这么排查的!
网络二层环路,老练的网工,都是这么排查的!

推荐镜像

更多
下一篇
无影云桌面