La activación de puertos es una opción de configuración en un enrutador habilitado para NAT que controla la comunicación entre las máquinas host internas y externas en una red IP. Es similar al reenvío de puertos en el sentido de que permite reenviar el tráfico entrante a una máquina host interna específica, aunque el puerto reenviado no está abierto de forma permanente y la máquina host interna de destino se elige de forma dinámica. [1] [2] [3]
Cuando dos redes se comunican a través de un enrutador NAT, las máquinas host de la red interna se comportan como si tuvieran la dirección IP del enrutador NAT desde la perspectiva de las máquinas host de la red externa. Sin ninguna regla de reenvío de tráfico, es imposible que una máquina host de una red externa (host B) abra una conexión con una máquina host de la red interna (host A). Esto se debe a que la conexión solo puede estar dirigida a la IP del enrutador NAT, ya que la red interna está oculta detrás de NAT. Con la activación de puertos, cuando algún host A abre una conexión con un host B utilizando un puerto o puertos predefinidos, todo el tráfico entrante que recibe el enrutador en algún puerto o puertos predefinidos se reenvía al host A. Este es el evento "activador" de la regla de reenvío. La regla de reenvío se desactiva después de un período de inactividad. [2]
La activación de puertos es útil para aplicaciones de red donde los roles de cliente y servidor deben cambiarse para ciertas tareas, como la autenticación para el chat IRC y la descarga de archivos para compartir archivos FTP .
Como ejemplo de cómo funciona la activación de puertos, al conectarse a IRC (Internet Relay Chat), es común autenticar un nombre de usuario con el protocolo Ident a través del puerto 113.
Al conectarse a IRC, el equipo cliente normalmente realiza una conexión saliente en el puerto 6667 (o cualquier puerto en el rango 6660–7000), lo que hace que el servidor IRC intente verificar el nombre de usuario proporcionado al realizar una nueva conexión de regreso al equipo cliente en el puerto 113. Cuando el equipo está detrás de NAT, el dispositivo NAT abandona silenciosamente esta conexión porque no sabe a qué equipo detrás del NAT debe enviar la solicitud de conexión. Estas dos conexiones de nivel de transporte son necesarias para que la conexión de nivel de aplicación al servidor IRC tenga éxito (consulte Conjunto de protocolos de Internet ). Dado que la segunda conexión TCP/IP no es posible, el intento de conexión al servidor IRC fallará.
En el caso de la activación de puertos, el enrutador está configurado de modo que cuando se establece una conexión saliente en cualquier puerto entre 6660 y 7000, debe permitir conexiones entrantes a esa computadora en particular en el puerto 113. Esto le da más flexibilidad que el reenvío de puertos estático porque no es necesario configurarlo para una dirección específica en su red, lo que permite que varios clientes se conecten a servidores IRC a través del enrutador NAT. También se gana en seguridad, en el sentido de que el puerto de entrada no se deja abierto cuando no se usa activamente.
La activación de puertos tiene la desventaja de que vincula el puerto activado a un solo cliente a la vez. Mientras el puerto esté vinculado a ese cliente en particular, la activación de puertos no está disponible para todos los demás clientes. En el intercambio de archivos FTP, por ejemplo, esto significa que no hay dos clientes que puedan descargar archivos de un servidor FTP que se ejecuta en "modo activo" simultáneamente. Para IRC, aunque el paso de autenticación ocurre muy rápidamente, el tiempo de espera de activación de puertos puede evitar que otros clientes inicien sesión en los servidores IRC. La activación de puertos no es adecuada para servidores detrás de un enrutador NAT porque depende de que la computadora local realice una conexión saliente antes de poder recibir las entrantes. En algunos enrutadores es posible que más de un cliente use la activación de puertos y el reenvío de puertos, pero no simultáneamente. [ aclaración necesaria ]