Usted necesita entender cómo el establecimiento de una red de Oracle trabaja.
En un de alto nivel:
El oyente está atentas SOLAMENTE conexiones, valida la petición, crea un nuevo puerto, manos de la conexión y vuelve a escuchar.
Escoge aleatoriamente un puerto de alto nivel entre 1021 y 65535 (pienso). Usted necesita tener TODOS esos abiertos en el cortafuego.
Hay dos maneras alrededor de esto y ni uno ni otro es todo el que grande:
1: Configurar el Multi-Roscar-Servidor (MTS). MTS permite que usted defina un sistema fijo de puertos que se utilizarán.
2: Forzar TODAS LAS conexiones para utilizar el puerto de los oyentes con USE_SHARED_SOCKET.
El problema aquí es contención portuaria y si usted para nunca a oyente, usted MATA todas las conexiones de base de datos activas.