问题解决:TNS-12543: TNS:destination host unreachable

这篇具有很好参考价值的文章主要介绍了问题解决:TNS-12543: TNS:destination host unreachable。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

环境:
11.2.0.3 ADG (db11g\db11gadg\db11gcas)

在自己先前克隆后的环境互相tnsping报错。

tnsping 本机ok,tnsping其他机器均报错:

[oracle@db11g ~]$ tnsping jingyu

TNS Ping Utility for Linux: Version 11.2.0.3.0 - Production on 13-MAY-2023 08:09:11

Copyright (c) 1997, 2011, Oracle.  All rights reserved.

Used parameter files:
/u01/app/oracle/product/11.2.0/dbhome_1/network/admin/sqlnet.ora


Used TNSNAMES adapter to resolve the alias
Attempting to contact (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.18)(PORT = 1521)) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = jingyu)))
OK (0 msec)
[oracle@db11g ~]$ tnsping jyadg

TNS Ping Utility for Linux: Version 11.2.0.3.0 - Production on 13-MAY-2023 08:09:14

Copyright (c) 1997, 2011, Oracle.  All rights reserved.

Used parameter files:
/u01/app/oracle/product/11.2.0/dbhome_1/network/admin/sqlnet.ora


Used TNSNAMES adapter to resolve the alias
Attempting to contact (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.19)(PORT = 1521)) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = jyadg)))
TNS-12543: TNS:destination host unreachable
[oracle@db11g ~]$ tnsping jycas

TNS Ping Utility for Linux: Version 11.2.0.3.0 - Production on 13-MAY-2023 08:09:17

Copyright (c) 1997, 2011, Oracle.  All rights reserved.

Used parameter files:
/u01/app/oracle/product/11.2.0/dbhome_1/network/admin/sqlnet.ora


Used TNSNAMES adapter to resolve the alias
Attempting to contact (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.20)(PORT = 1521)) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = jycas)))
TNS-12543: TNS:destination host unreachable
  • 1.检查防火墙和SElinux状态
  • 2.确认克隆的网卡是否正常
  • 3.网络层面排查1521端口

1.检查防火墙和SElinux状态

第一反应就是防火墙或SELinux导致,初步检查发现:防火墙未运行,SELinux也禁用掉。
[root@db11g ~]# service iptables status
Redirecting to /bin/systemctl status iptables.service
Unit iptables.service could not be found.

[root@db11g ~]# getenforce
Permissive
[root@db11g ~]# cat /etc/sysconfig/selinux 

# This file controls the state of SELinux on the system.
# SELINUX= can take one of these three values:
#     enforcing - SELinux security policy is enforced.
#     permissive - SELinux prints warnings instead of enforcing.
#     disabled - No SELinux policy is loaded.
SELINUX=disabled
# SELINUXTYPE= can take one of three values:
#     targeted - Targeted processes are protected,
#     minimum - Modification of targeted policy. Only selected processes are protected. 
#     mls - Multi Level Security protection.
SELINUXTYPE=targeted 

配置文件tnsnames.ora同步到3个环境,保持一致:

# tnsnames.ora Network Configuration File: /u01/app/oracle/product/11.2.0/dbhome_1/network/admin/tnsnames.ora
# Generated by Oracle configuration tools.

JINGYU =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.18)(PORT = 1521))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = jingyu)
    )
  )

JYADG =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.19)(PORT = 1521))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = jyadg)
    )
  )

JYCAS =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.20)(PORT = 1521))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = jycas)
    )
  )

2.确认克隆的网卡是否正常

主要怀疑克隆是否MAC地址之类做了变化,期望是不一样的MAC,实际也是,在宿主机看arp记录的和目前的都匹配:

[oracle@bogon ~]$ arp -a|grep 1.18
bogon (192.168.1.18) at 52:54:00:6f:92:54 [ether] on br0
[oracle@bogon ~]$ arp -a|grep 1.19
localhost (192.168.1.19) at 52:54:00:d0:49:1b [ether] on br0
[oracle@bogon ~]$ arp -a|grep 1.20
localhost (192.168.1.20) at 52:54:00:71:f1:9a [ether] on br0

可现在就是网络IP可以ping通,但是tnsping说啥不通:

[oracle@bogon ~]$ ping 192.168.1.18
PING 192.168.1.18 (192.168.1.18) 56(84) bytes of data.
64 bytes from 192.168.1.18: icmp_seq=1 ttl=64 time=0.525 ms
64 bytes from 192.168.1.18: icmp_seq=2 ttl=64 time=0.312 ms
^C
--- 192.168.1.18 ping statistics ---
2 packets transmitted, 2 received, 0% packet loss, time 1024ms
rtt min/avg/max/mdev = 0.312/0.418/0.525/0.108 ms
[oracle@bogon ~]$ tnsping 192.168.1.18

TNS Ping Utility for Linux: Version 19.0.0.0.0 - Production on 13-MAY-2023 08:39:50

Copyright (c) 1997, 2022, Oracle.  All rights reserved.

Used parameter files:
/u01/app/oracle/product/19.3.0/db_1/network/admin/sqlnet.ora

Used HOSTNAME adapter to resolve the alias
Attempting to contact (DESCRIPTION=(CONNECT_DATA=(SERVICE_NAME=))(ADDRESS=(PROTOCOL=tcp)(HOST=192.168.1.18)(PORT=1521)))
TNS-12543: TNS:destination host unreachable

3.网络层面排查1521端口

以db11g环境为例说明:

[oracle@db11g ~]$ netstat -ano|grep 1521
tcp6       0      0 :::1521                 :::*                    LISTEN      off (0.00/0/0)
unix  2      [ ACC ]     STREAM     LISTENING     26303    /var/tmp/.oracle/sEXTPROC1521

使用telnet工具定位:

[root@bogon ~]# telnet 192.168.1.18 1521
Trying 192.168.1.18...
telnet: connect to address 192.168.1.18: No route to host

而正常的环境(其他可以tnsping的正常虚机)应该类似这样:

[root@bogon ~]# telnet 192.168.1.11 1521
Trying 192.168.1.11...
Connected to 192.168.1.11.
Escape character is '^]'.

看来的确是网络问题了。
说没有路由可达主机,直接traceroute对比看下有何区别:

# 正常的虚机:
[root@bogon ~]# traceroute 192.168.1.11
traceroute to 192.168.1.11 (192.168.1.11), 30 hops max, 60 byte packets
 1  bogon (192.168.1.11)  0.556 ms  0.507 ms  0.486 ms

# 不正常的虚机:
[root@bogon ~]# traceroute 192.168.1.18
traceroute to 192.168.1.18 (192.168.1.18), 30 hops max, 60 byte packets
 1  bogon (192.168.1.18)  0.516 ms !X  0.450 ms !X  0.404 ms !X

[root@bogon ~]# traceroute 192.168.1.19
traceroute to 192.168.1.19 (192.168.1.19), 30 hops max, 60 byte packets
 1  bogon (192.168.1.19)  0.546 ms !X  0.491 ms !X  0.455 ms !X

[root@bogon ~]# traceroute 192.168.1.20
traceroute to 192.168.1.20 (192.168.1.20), 30 hops max, 60 byte packets
 1  localhost (192.168.1.20)  0.730 ms !X  0.680 ms !X  0.648 ms !X

又回到防火墙。。之前检查命令搞错了,来吧,赶紧正常关闭防火墙:

[root@db11g ~]# systemctl status firewalld
● firewalld.service - firewalld - dynamic firewall daemon
   Loaded: loaded (/usr/lib/systemd/system/firewalld.service; enabled; vendor preset: enabled)
   Active: active (running) since Sat 2023-05-13 08:38:13 CST; 23min ago
     Docs: man:firewalld(1)
 Main PID: 850 (firewalld)
   CGroup: /system.slice/firewalld.service
           └─850 /usr/bin/python2 -Es /usr/sbin/firewalld --nofork --nopid

May 13 08:38:12 db11g systemd[1]: Starting firewalld - dynamic firewall dae.....
May 13 08:38:13 db11g systemd[1]: Started firewalld - dynamic firewall daemon.
May 13 08:38:13 db11g firewalld[850]: WARNING: AllowZoneDrifting is enabled...w.
Hint: Some lines were ellipsized, use -l to show in full.
[root@db11g ~]# systemctl stop firewalld

一切恢复正常:

[root@bogon ~]# traceroute 192.168.1.18
traceroute to 192.168.1.18 (192.168.1.18), 30 hops max, 60 byte packets
 1  bogon (192.168.1.18)  0.559 ms  0.497 ms  0.445 ms
[root@bogon ~]# telnet 192.168.1.18 1521
Trying 192.168.1.18...
Connected to 192.168.1.18.
Escape character is '^]'.

[oracle@bogon ~]$ tnsping 192.168.1.18

TNS Ping Utility for Linux: Version 19.0.0.0.0 - Production on 13-MAY-2023 08:59:56

Copyright (c) 1997, 2022, Oracle.  All rights reserved.

Used parameter files:
/u01/app/oracle/product/19.3.0/db_1/network/admin/sqlnet.ora

Used HOSTNAME adapter to resolve the alias
Attempting to contact (DESCRIPTION=(CONNECT_DATA=(SERVICE_NAME=))(ADDRESS=(PROTOCOL=tcp)(HOST=192.168.1.18)(PORT=1521)))
OK (0 msec)

克隆的环境全部都关闭下防火墙,并禁用:

systemctl status firewalld
systemctl stop firewalld
systemctl disable firewalld

一切正常!

这个根因找到后着实有点丢人了,折腾半天居然就是最开始怀疑的防火墙问题,但却因为命令搞错误判了。
记得早些时候这个Linux6查看防火墙的命令在Linux7中执行,重定向是可以变成正确命令的。
再就是应该多查下,如果是类似下面的输出才是没有防火墙运行:

[root@db11g ~]# /sbin/iptables -L
Chain INPUT (policy ACCEPT)
target     prot opt source               destination         

Chain FORWARD (policy ACCEPT)
target     prot opt source               destination         

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination         

不过troubleshooting的有意思之处也就在于此,你总不能每次都可以快速解决问题,哪怕是相对简单的问题,也可能因为一个疏忽而走不少弯路,但这个过程是有意思的!文章来源地址https://www.toymoban.com/news/detail-442023.html

到了这里,关于问题解决:TNS-12543: TNS:destination host unreachable的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 解决在win环境下配置hosts文件中ipv6映射主机名,找不到主机问题

    当前springBoot项目中需要支持通过主机名的方式连接redis,于是在win的hosts环境中配置 ipv6    hostname 映射关系,ping命令失败如下(不能通过ping hostname  ,ping通ipv6) 解决办法: 1.查看当前 要访问的 ipv6的地址是通过那个【网卡号】进行访问。 例如我要访问的是linux虚拟机。 则

    2023年04月08日
    浏览(54)
  • 解决Freeswitch的INCOMPATIBLE_DESTINATION

    问题: switch_channel.c:3936 Hangup verto.rtc/123456789 [CS_EXECUTE] [INCOMPATIBLE_DESTINATION] 解答: 其实这个问题通常就是编码问题,查看自己的sdp发现了需要48kHz,所以需要安装下面的模块 FreeSWITCH 的 mod_opus 是用于支持 Opus 音频编解码的模块。Opus 是一种开放的音频编解码器,广泛用于实时

    2024年02月11日
    浏览(42)
  • 解决fatal: No configured push destination.

    问题:git push时,出现fatal: No configured push destination. 原因:推送至远程仓库时,缺少目标仓库地址 解决方法: 1、添加远程仓库地址: 2、 推送本地代码至远程仓库分支 不会调试运行的同学,你只需打开远程,会帮你搭建调试好一切(JDK、Idea/Eclipse、MySQL、Tomcat、Maven………)

    2024年02月11日
    浏览(43)
  • IPVS: rr: TCP xxxxxX - no destination available 问题优化

    可以参考腾讯的 sysctl参数控制输出 参考 :https://github.com/Tencent/TencentOS-kernel/commit/fe66d659f44e13c0e1c007782309d79c987b4788

    2024年02月12日
    浏览(44)
  • Setting up SSH Host ...问题解决

    网速问题导致下载过慢,超时 1、确定VSCode commit id,如下图所示  2、拼接请求,下载vscode server包  Arm: https://update.code.visualstudio.com/commit: 换成步骤1中的commit号 /server-linux-arm64/stable  x86: https://update.code.visualstudio.com/commit: 换成步骤1中的commit号 /server-linux-x64/stable 3、执行如下

    2024年02月02日
    浏览(28)
  • Host key verification failed 问题解决

    ​ 一、发现问题: 出现问题的截图: ​ 出现问题的原因:         环境经过重装后,系统重置;相当于首次访问当前环境。A通过ssh登陆(scp的传输第一步就是进行ssh的登录动作,然后再基于ssh协议进行文件的传输,传输过程加密。scp的登录过程是基于ssh协议)B时提示

    2024年02月11日
    浏览(43)
  • ping会出现的两种问题-----time out 和 unreachable

    ping命令常见的返回信息有两种: Request timed out和Destination host unreachable 两者的区别是: Request timed out是ping包没有返回的路由,导致超时 Destination host unreachable是ping包没有去到目的地的路由 来看一个例子: 各部件配置如下: !路由器R1的基本配置 configure terminal interface e0/0 ip addr

    2024年02月03日
    浏览(46)
  • REMOTE HOST IDENTIFICATION HAS CHANGED问题解决

    由于Ubuntu20.4默认安装的Mysql为8.0版本,我需要5.7版本,因此打算安装Ubuntu18.04,在将云服务器的操作系统从Ubuntu20.4改为Ubuntu18.04之后,vscode无法进行远程登录,报错为: 如下图所示: 意思是远程主机标识已更改,原因是第一次使用SSH连接时,会生成一个认证,储存在客户端的

    2024年02月15日
    浏览(41)
  • Centos 8 网卡connect: Network is unreachable错误解决办法

    现象1、ifconfig没有ens160配置 [test@localhost ~]$ ifconfig  lo: flags=73UP,LOOPBACK,RUNNING  mtu 65536         inet 127.0.0.1  netmask 255.0.0.0         inet6 ::1  prefixlen 128  scopeid 0x10host         loop  txqueuelen 1000  (Local Loopback)         RX packets 4  bytes 240 (240.0 B)         RX errors 0  dropped 0  overr

    2024年02月12日
    浏览(41)
  • 【小技巧】FPGA工程综合后出现WNS或者TNS小于零的问题处理

    通常情况下,如果出现程序设计不合理,时序优化不到位等问题,vivado在布局布线之后,会出现WNS,TNS小于零的情况,如下图所示: 当WNS和TNS较小时,对于一些低速的FPGA工程,可以忽略,不影响系统的工作性能,而当WNS或者TNS负数较大时,那么必须对其进行时序约束,否则

    2024年02月11日
    浏览(42)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包