Skip to Main Content

Oracle Database Discussions

Announcement

For appeals, questions and feedback about Oracle Forums, please email oracle-forums-moderators_us@oracle.com. Technical questions should be asked in the appropriate category. Thank you!

tcp.invited_nodes, part deux

EdStevensSep 9 2010 — edited Sep 10 2010
following on from a discussion last week re invited_nodes ..

I wanted to do some more testing of the finer points, and had been told by a collegue that if a listed invited node is not reachable, the listener will not come up. Sounded fishy, but worth checking out.

For the test I did a fresh install of 10.2.0.1 on OEL 5.4 on a physical (no VM) box. Made sure basic connections were working and was able to sqlplus connect from my desktop to the db. All of that was with everything straight out of the box. Then I started to test and things got fishy..

The following was captured by logging a putty session, then global changes on ip, server and domain names.

First we see the sqlnet.ora has invited-nodes coded in but not yet enabled.
[oracle@myserver admin]$ cat sqlnet.ora
# sqlnet.ora Network Configuration File: /ora00/app/oracle/product/10.2.0/db_1/network/admin/sqlnet.ora
# Generated by Oracle configuration tools.

NAMES.DIRECTORY_PATH= (TNSNAMES, EZCONNECT)
TCP.INVITED_NODES=(**.**.***.102)
#TCP.VALIDNODE_CHECKING=yes
And, from the server, we ping my workstation, which is listed in the validnode
[oracle@myserver admin]$ ping **.**.***.102
PING **.**.***.102 (**.**.***.102) 56(84) bytes of data.
64 bytes from **.**.***.102: icmp_seq=1 ttl=128 time=0.332 ms
64 bytes from **.**.***.102: icmp_seq=2 ttl=128 time=0.272 ms

--- **.**.***.102 ping statistics ---
2 packets transmitted, 2 received, 0% packet loss, time 1000ms
rtt min/avg/max/mdev = 0.272/0.302/0.332/0.030 ms
Next I start the listener, and everything looks good.
[oracle@myserver admin]$ lsnrctl start

LSNRCTL for Linux: Version 10.2.0.1.0 - Production on 09-SEP-2010 13:52:19

Copyright (c) 1991, 2005, Oracle.  All rights reserved.

Starting /ora00/app/oracle/product/10.2.0/db_1/bin/tnslsnr: please wait...

TNSLSNR for Linux: Version 10.2.0.1.0 - Production
System parameter file is /ora00/app/oracle/product/10.2.0/db_1/network/admin/listener.ora
Log messages written to /ora00/app/oracle/product/10.2.0/db_1/network/log/listener.log
Listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=myserver.mydomain)(PORT=1521)))

Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=myserver.mydomain)(PORT=1521)))
STATUS of the LISTENER
------------------------
Alias                     LISTENER
Version                   TNSLSNR for Linux: Version 10.2.0.1.0 - Production
Start Date                09-SEP-2010 13:52:19
Uptime                    0 days 0 hr. 0 min. 0 sec
Trace Level               off
Security                  ON: Local OS Authentication
SNMP                      OFF
Listener Parameter File   /ora00/app/oracle/product/10.2.0/db_1/network/admin/listener.ora
Listener Log File         /ora00/app/oracle/product/10.2.0/db_1/network/log/listener.log
Listening Endpoints Summary...
  (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=myserver.mydomain)(PORT=1521)))
The listener supports no services
The command completed successfully
I was able to sqlplus connect from my desktop.
So let's stop the listener and enable node checking
[oracle@myserver admin]$ lsnrctl stop

LSNRCTL for Linux: Version 10.2.0.1.0 - Production on 09-SEP-2010 13:52:28

Copyright (c) 1991, 2005, Oracle.  All rights reserved.

Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=myserver.mydomain)(PORT=1521)))
The command completed successfully

[oracle@myserver admin]$ vi sqlnet.ora
<snip vi session>

[oracle@myserver admin]$ cat sqlnet.ora
# sqlnet.ora Network Configuration File: /ora00/app/oracle/product/10.2.0/db_1/network/admin/sqlnet.ora
# Generated by Oracle configuration tools.

NAMES.DIRECTORY_PATH= (TNSNAMES, EZCONNECT)
TCP.INVITED_NODES=(**.**.***.102)
TCP.VALIDNODE_CHECKING=yes
So we see node checking enabled, so start the listener
[oracle@myserver admin]$ lsnrctl start

LSNRCTL for Linux: Version 10.2.0.1.0 - Production on 09-SEP-2010 13:52:52

Copyright (c) 1991, 2005, Oracle.  All rights reserved.

Starting /ora00/app/oracle/product/10.2.0/db_1/bin/tnslsnr: please wait...

TNSLSNR for Linux: Version 10.2.0.1.0 - Production
System parameter file is /ora00/app/oracle/product/10.2.0/db_1/network/admin/listener.ora
Log messages written to /ora00/app/oracle/product/10.2.0/db_1/network/log/listener.log
Listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=myserver.mydomain)(PORT=1521)))

Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=myserver.mydomain)(PORT=1521)))
TNS-12547: TNS:lost contact
 TNS-12560: TNS:protocol adapter error
  TNS-00517: Lost contact
   Linux Error: 104: Connection reset by peer
Huh???
[oracle@myserver admin]$ ps -ef|grep LISTENER|grep -v grep
oracle    4867     1  0 13:52 ?        00:00:00 /ora00/app/oracle/product/10.2.0/db_1/bin/tnslsnr LISTENER -inherit

[oracle@myserver admin]$ 
Comments
Locked Post
New comments cannot be posted to this locked post.
Post Details
Locked on Oct 8 2010
Added on Sep 9 2010
14 comments
7,103 views