Am Tue, 22 Aug 2006 00:01:37 +0200 schrieb Sybrand Bakker
<postbus@sybrandb.demon.nl>:
> On 21 Aug 2006 14:54:41 -0700, sirajka@hotmail.com wrote:
>
>> If you can tnsping successfully then it is not a firewall issue!
>
> Incorrect. If you can tnsping the only thing you know for certain is
> there is a listener running on that port.
> Sqlnet by default uses 2 (*two*) ports, one fixed and one random.
>
> --
> Sybrand Bakker, Senior Oracle DBA
Thanks for your answer, exactly that was the problem in my case.
There was a firewall on the server that blocked all ports except port 1521.
But communication with the listener will only be initiated through port
1521. Afterwards communication is switched to other not-predictable ports,
so all answer-attempts were blocked by the firewall and therefore there
was never ever any reaction from the oracle server till the timeout
occured.
This can be solved by adding a registry entry on the server:
Under HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\HOME0, an entry USE_SHARED_SOCKET
(Type Reg_SZ) has to be added and set to TRUE.
Then all inside/outside connections will be made only via the predefined
listener port (1521, if not changed otherwise).
Afterwards communication operated flawlessly.