20Jul
Aunque los enrutadores modernos manejan la mayoría de las funciones automáticamente, algunas aplicaciones requerirán que reenvíes manualmente un puerto a esa aplicación o dispositivo. Afortunadamente, es realmente simple de hacer si sabes dónde mirar.
¿Qué es el reenvío de puertos?
Hay muchos proyectos que hemos cubierto que usan su computadora como servidor para otros dispositivos. Cuando estás dentro de tu red, la mayoría de las cosas funcionarán bien. Pero algunas aplicaciones, si quieres acceder a ellas cuando estás fuera de tu red, hacen que las cosas sean mucho más peludas. Comencemos por echar un vistazo a por qué es eso.
Cómo su enrutador maneja las solicitudes y usos Puertos
Aquí hay un mapa de una red doméstica simple. El ícono de la nube representa la mayor conexión a Internet y su dirección de Protocolo de Internet( IP) pública o hacia adelante. Esta dirección IP representa a toda su familia desde el exterior, como una calle, en cierto modo.
La dirección roja 192.1.168.1 es la dirección del enrutador dentro de su red. Todas las direcciones adicionales pertenecen a las computadoras que se ven en la parte inferior de la imagen. Si su dirección IP pública es como una dirección de calle, piense en las direcciones IP internas, como los números de apartamento para esa dirección.
El diagrama plantea una pregunta interesante en la que quizás no hayas pensado antes.¿Cómo llega toda la información de internet al dispositivo correcto dentro de la red? Si visita howtogeek.com en su computadora portátil, ¿cómo termina en su computadora portátil y no en el escritorio de su hijo si la dirección IP pública es la misma para todos los dispositivos?
Esto se debe a una maravillosa magia de enrutamiento conocida como Traducción de direcciones de red( NAT).Esta función ocurre en el nivel del enrutador donde NAT actúa como un policía de tránsito, dirigiendo el flujo de tráfico de red a través del enrutador para que una sola dirección IP pública pueda ser compartida entre todos los dispositivos detrás del enrutador. Debido a la NAT, todos los miembros de su hogar pueden solicitar sitios web y otro contenido de Internet simultáneamente y todo se entregará en el dispositivo correcto.
Entonces, ¿dónde entran los puertos en este proceso? Los puertos son un viejo pero útil vestigio de los primeros días de la computación en red. En el pasado, cuando las computadoras solo podían ejecutar una aplicación a la vez, todo lo que tenía que hacer era apuntar una computadora a otra computadora en la red para conectarlas, ya que estarían ejecutando la misma aplicación. Una vez que las computadoras se volvieron sofisticadas para ejecutar múltiples aplicaciones, los primeros científicos de la computación tuvieron que lidiar con el problema de garantizar aplicaciones conectadas a las aplicaciones correctas. Por lo tanto, los puertos nacieron.
Algunos puertos tienen aplicaciones específicas que son estándares en toda la industria informática. Cuando busca una página web, por ejemplo, usa el puerto 80. El software de la computadora receptora sabe que el puerto 80 se usa para servir documentos http, por lo que escucha allí y responde en consecuencia. Si envía una solicitud http a través de un puerto diferente, por ejemplo, 143, el servidor web no lo reconocerá porque no está escuchando allí( aunque podría haber algo más, como un servidor de correo IMAP que tradicionalmente usa ese puerto).
Otros puertos no tienen usos preasignados, y puede usarlos para lo que desee. Para evitar interferir con otras aplicaciones que cumplen con las normas, es mejor usar números más grandes para estas configuraciones alternativas. Plex Media Server usa el puerto 32400, por ejemplo, y los servidores de Minecraft usan 25565, ambos números que corresponden a este territorio de "juego limpio".
Cada puerto se puede usar a través de TCP o UDP.TCP, o Protocolo de control de transmisión, es lo que se usa con más frecuencia. UDP, o User Datagram Protocol, es menos utilizado en aplicaciones domésticas con una gran excepción: BitTorrent. Dependiendo de lo que esté escuchando, esperará que las solicitudes se realicen en uno u otro de estos protocolos.
Por qué necesita reenviar puertos
Entonces, ¿por qué exactamente tendría que reenviar puertos? Mientras que algunas aplicaciones aprovechan NAT para configurar sus propios puertos y manejar toda la configuración por usted, todavía hay muchas aplicaciones que no lo hacen, y usted tendrá que darle una mano a su enrutador cuando se trata de conectar servicios y aplicaciones..
En el siguiente diagrama, comenzamos con una premisa simple. Estás en tu computadora portátil en algún lugar del mundo( con una dirección IP de 225.213.7.42) y deseas conectarte a tu red doméstica para acceder a algunos archivos. Si simplemente conecta la dirección IP de su hogar( 127.34.73.214) con la herramienta que esté utilizando( un cliente FTP o una aplicación de escritorio remota, por ejemplo), y esa herramienta no aprovecha las funciones avanzadas del enrutador que acabamos de mencionar,no tienes suerte. No sabrá a dónde enviar su solicitud, y no pasará nada.
Esta es, por cierto, una gran característica de seguridad de .Si alguien se conecta a su red doméstica y no están conectados a un puerto válido, quiere para que la conexión sea rechazada. Ese es el elemento de firewall de su enrutador que hace su trabajo: rechaza las solicitudes no deseadas. Sin embargo, si la persona que llama a su puerta virtual es usted, entonces el rechazo no es tan bienvenido y debemos hacer un pequeño ajuste.
Para resolver ese problema, debe decirle a su enrutador "hey: cuando acceda a usted con este programa, tendrá que enviarlo a este dispositivo en este puerto".Con esas instrucciones en su lugar, su enrutador se asegurará de que pueda acceder a la computadora y aplicación correctas en su red doméstica.
Por lo tanto, en este ejemplo, cuando está fuera de casa y usando su computadora portátil, usa diferentes puertos para realizar sus solicitudes. Cuando accede a la dirección IP de su red doméstica usando el puerto 22, su enrutador en casa sabe que esto debe ir a 192.168.1.100 dentro de la red. Entonces, el daemon de SSH en su instalación de Linux responderá.Al mismo tiempo, puede realizar una solicitud a través del puerto 80, que su enrutador enviará al servidor web al 192.168.1.150.O bien, puede intentar controlar de forma remota la computadora portátil de su hermana con VNC, y su enrutador lo conectará con su computadora portátil en 192.168.1.200.De esta forma, puede conectarse fácilmente a todos los dispositivos para los que ha configurado una regla de reenvío de puerto.
¡La utilidad del reenvío de puertos no termina ahí sin embargo! Incluso puede usar el reenvío de puertos para cambiar los números de puerto de los servicios existentes para mayor claridad y conveniencia. Por ejemplo, supongamos que tiene dos servidores web ejecutándose en su red doméstica y quiere que uno sea fácil y obviamente accesible( p. Ej., Es un servidor meteorológico que desea que las personas puedan encontrar fácilmente) y el otro servidor web es para un servidor personalproyecto.
Cuando accede a su red doméstica desde el puerto público 80, puede indicarle a su enrutador que lo envíe al puerto 80 en el servidor meteorológico en 192.168.1.150, donde estará escuchando en el puerto 80. Pero puede decirle a suenrutador que cuando accede a él a través del puerto 10,000, debe ir al puerto 80 en su servidor personal, 192.168.1.250.De esta forma, la segunda computadora no tiene que reconfigurarse para usar un puerto diferente, pero aún así puede administrar el tráfico de manera efectiva, y al mismo tiempo, al dejar el primer servidor web vinculado al puerto 80, facilita que las personas accedan a suproyecto del servidor meteorológico antes mencionado.
Ahora que sabemos qué es el reenvío de puertos y por qué es posible que deseemos usarlo, echemos un vistazo a algunas pequeñas consideraciones sobre el reenvío de puertos antes de sumergirnos en la configuración real.
Consideraciones previas a la configuración de su enrutador
Hay algunas cosas que debe tener en cuenta antes de sentarse a configurar su enrutador y ejecutarlo con anticipación para reducir la frustración.
Establezca la dirección IP estática para sus dispositivos
Lo primero y más importante es que todas las reglas de reenvío de puertos se desmoronarán si las asigna a dispositivos con direcciones IP dinámicas asignadas por el servicio DHCP de su enrutador. Examinamos los detalles de lo que DHCP es en este artículo sobre DHCP frente a las asignaciones de direcciones IP estáticas, pero le daremos el resumen rápido aquí.
Su enrutador tiene un grupo de direcciones que reserva solo para entregar a los dispositivos cuando se unen ysalir de la redPiense que es como obtener un número en una cafetería cuando llega: su computadora portátil se une, boom, obtiene la dirección IP 192.168.1.98.Tu iPhone se une, boom, obtiene la dirección 192.168.1.99.Si desconectas esos dispositivos durante un período de tiempo o si reinicias el enrutador, la lotería completa de direcciones IP se repite.
En circunstancias normales, esto es más que bueno. A su iPhone no le importa qué dirección IP interna tiene. Pero si ha creado una regla de reenvío de puertos que dice que su servidor de juego está en una determinada dirección IP y luego el enrutador le da una nueva, esa regla no funcionará, y nadie podrá conectarse a su servidor de juegos. Para evitar eso, debe asignar una dirección IP estática a cada dispositivo de red al que está asignando una regla de reenvío de puerto. La mejor manera de hacerlo es a través de su enrutador; consulte esta guía para obtener más información.
Conozca su dirección IP( y configure una dirección DNS dinámica)
Además de usar asignaciones de IP estáticas para los dispositivos relevantes dentro de su red, también debe conocer su dirección IP externa; puede encontrarla visitando whatismyip.commientras está en su red doméstica. Aunque es posible que tenga la misma dirección IP pública durante meses o incluso más de un año, su dirección IP pública puede cambiar( a menos que su proveedor de servicios de Internet le haya dado explícitamente una dirección IP estática orientada al público).En otras palabras, no puede confiar en escribir su dirección IP numérica en la herramienta remota que esté utilizando( y no puede confiar en darle esa dirección IP a un amigo).
Ahora, si bien puede pasar por la molestia de verificar manualmente esa dirección IP cada vez que sale de la casa y tiene la intención de trabajar fuera de casa( o cada vez que su amigo se va a conectar a su servidor de Minecraft o similar), eso es unaGran dolor de cabeza. En su lugar, le recomendamos encarecidamente que configure un servicio de DNS dinámico que le permitirá vincular su( cambiante) dirección IP doméstica a una dirección memorable como mysuperawesomeshomeserver.dynu.net. Para obtener más información sobre cómo configurar un servicio DNS dinámico con su red doméstica, consulte nuestro tutorial completo aquí.
Preste atención a los cortafuegos locales
Una vez que configure el reenvío de puertos en el nivel del enrutador, existe la posibilidad de que deba modificar también las reglas del cortafuegos en su computadora. Por ejemplo, a lo largo de los años hemos recibido muchos correos electrónicos de padres frustrados que configuran el reenvío de puertos para que sus hijos puedan jugar a Minecraft con sus amigos. En casi todos los casos, el problema es que a pesar de configurar correctamente las reglas de reenvío de puertos en el enrutador, alguien ignoró la solicitud del firewall de Windows preguntándole si estaba bien si la plataforma Java( que ejecuta Minecraft) pudiera acceder a Internet.
Tenga en cuenta que en las computadoras que ejecutan firewall local y / o software antivirus que incluye protección de cortafuegos, es probable que deba confirmar que la conexión que ha configurado está bien.
Paso uno: busque las reglas de reenvío de puertos en su enrutador
¿Agotado por todas las lecciones de conexión en red? No se preocupe, finalmente es hora de configurarlo, y ahora que conoce los conceptos básicos, es bastante simple.
Por mucho que nos gustaría proporcionar instrucciones exactas para su enrutador exacto, la realidad es que cada fabricante de enrutadores tiene su propio software, y la apariencia del software puede incluso variar entre los modelos de enrutadores. En lugar de intentar capturar cada variación, resaltaremos algunas para darle una idea de cómo se ve el menú y lo alentaremos a buscar el manual o los archivos de ayuda en línea de su enrutador en particular para encontrar los detalles.
En general, vas a buscar algo llamado, lo adivinaste, "Port Forwarding".Puede que tenga que buscar entre las diferentes categorías para encontrarlo, pero si su enrutador es bueno, debería estar allí.
Para comparar, así es como se ve el menú de reenvío de puertos en el enrutador D-Link DIR-890L:
Y así es como se ve el menú de reenvío de puertos en el mismo enrutador que ejecuta el popular firmware DD-WRT de terceros:
Como puedever, la complejidad entre las dos vistas varía mucho, incluso en el mismo hardware. Además, la ubicación es completamente diferente dentro de los menús. Como tal, es más útil si busca las instrucciones exactas para su dispositivo utilizando el manual o una consulta de búsqueda.
Una vez que haya localizado el menú, es hora de configurar la regla actual.
Paso dos: cree una regla de reenvío de puertos
Después de aprender todo acerca del reenvío de puertos, configurar un DNS dinámico para la dirección IP de su hogar y todos los demás trabajos que entraron en esto, el paso importante -crear la regla real- es más o menosUna caminata en el parque. En el menú de reenvío de puertos de nuestro enrutador, vamos a crear dos nuevas reglas de reenvío de puertos: una para el servidor de música Subsonic y otra para un nuevo servidor de Minecraft que acabamos de configurar.
A pesar de las diferencias de ubicación en diferentes programas de enrutadores, la entrada general es la misma. Casi universalmente, nombrarás la regla de reenvío de puertos. Lo mejor es simplemente nombrar qué es el servidor o servicio y luego añádalo si es necesario para mayor claridad( por ejemplo, "Servidor web" o "Servidor web-Meteorológico" si hay más de uno).¿Recuerda el protocolo TCP / UDP del que hablamos al principio? También deberá especificar TCP, UDP o Ambos. Algunas personas son muy militantes sobre averiguar exactamente qué protocolo usa cada aplicación y servicio y cómo hacer coincidir las cosas perfectamente por razones de seguridad. Seremos los primeros en admitir que somos perezosos en este aspecto y casi siempre elegimos "Ambos" para ahorrar tiempo.
Algunos firmware de enrutadores, incluido el DD-WRT más avanzado que estamos utilizando en la captura de pantalla anterior, le permitirán especificar un valor "Fuente" que es una lista de direcciones IP a las que está restringiendo el reenvío de puertos por razones de seguridad. Puede usar esta función si lo desea, pero tenga en cuenta que presenta una serie de dolores de cabeza totalmente nuevos, ya que supone que los usuarios remotos( incluido usted cuando se encuentra lejos de casa y amigos que se conectan) tienen direcciones IP estáticas.
A continuación, deberá colocar el puerto externo. Este es el puerto que se abrirá en el enrutador y frente a Internet. Puede utilizar cualquier número que desee aquí entre 1 y 65353, pero prácticamente la mayoría de los números más bajos son asumidos por los servicios estándar( como el correo electrónico y los servidores web) y muchos de los números más altos se asignan a aplicaciones bastante comunes. Con esto en mente, recomendamos seleccionar un número superior a 5,000 y, para mayor seguridad, usar Ctrl + F para buscar esta larga lista de números de puerto TCP / UDP para asegurarse de que no está seleccionando un puerto que entra en conflicto con unservicio existente que ya está utilizando
Finalmente, ingrese la dirección IP interna del dispositivo, el puerto en el que está en ese dispositivo y( si corresponde) alternar la regla. No te olvides de guardar la configuración.
Paso tres: prueba tu regla de reenvío de puertos
La forma más obvia de probar si tu reenvío de puerto funciona es conectarte usando la rutina prevista para el puerto( por ejemplo, que tu amigo conecte su cliente Minecraft al servidor de tu casa), pero eso no siempreuna solución disponible de inmediato si no estás lejos de casa.
Afortunadamente, hay un práctico comprobador de puertos disponible en línea en YouGetSignal.com. Podemos probar si nuestro reenvío del puerto del servidor Minecraft tomó simplemente que el probador del puerto intente conectarse a él. Ingrese su dirección IP y el número de puerto y haga clic en "Verificar".
Debería recibir un mensaje, como se ve arriba, como "El puerto X está abierto en [Su IP]".Si se informa que el puerto está cerrado, compruebe dos veces las configuraciones en el menú de reenvío de puertos de su enrutador y los datos de su IP y puerto en el comprobador.
Es un poco molesto configurar el reenvío de puertos, pero siempre que asigne una dirección IP estática al dispositivo objetivo y configure un servidor DNS dinámico para la dirección IP de su hogar, es una tarea que solo necesita visitar una vez.para disfrutar de un acceso sin inconvenientes a su red en el futuro.