Tanaceto y la Información

Siempre es preferible un final catastrófico a una catastrofe sin fin.

Los famosos “puertos de red” y su redireccionamiento

Posted by tanaceto en octubre 9, 2007

Aprender a redireccionar puertos es una de las cosas más prácticas que puedes aprender de ordenadores y redes, sobretodo cuando usamos programas-servidores, como el Apache si queremos hacer un servidor web, o el PureFTPd Manager si queremos un servidor FTP, por ejemplo.

Siempre que me refiera a “puerto“, en verdad quiero decir “puerto de red“, puesto que hay muchos tipos de puertos según el ámbito en el que nos estemos moviendo. No es lo mismo un puerto en computación que un puerto en red.

Existen muchas clases de servidores, y éstos siempre están instalados en un ordenador concreto. Los servidores permiten que desde otros ordenadores puedas acceder a determinados recursos, por lo que sus ventajas son múltiples. Puedes crear una base de datos accesible desde cualquier parte con acceso a Internet, o instalar una webcam y poder acceder a su señal desde otro ordenador, etc.

La teoría, en mi opinión, es esta:

Cuando un ordenador está conectado a una red externa (Internet) tiene que usar un hardware de conexión a la red física (teléfono, cable, etc). Lo más normal es usar o un módem (cuando un solo ordenador recibe conexión) o un router (cuando varios ordenadores acceden a este aparato autónomo que mantiene la conexión a Internet y redistribuye la señal a los equipos que se conecten a ella). En el caso del módem no tenemos problemas, puesto que el dispositivo entiende que todas las señales que procedan de Internet no pueden tener sino un solo destino. En el caso del router no es igual.

Un router se conecta a Internet con autonomía de los ordenadores que usen esa señal. Es en el router donde se configura y se introducen los datos de conexión (los que te da tu ISP). Lleva un software incorporado que normalmente trae un menú en html para que, desde tu navegador, puedas configurar de manera sencilla el router. Existen otros procedimientos (telnet por ejemplo), pero no entraremos en ellos.

El router además es el que crea la LAN a la que los equipos se conectarán para acceder a Internet. La dirección IP del router determina las direcciones IP de los ordenadores (si aspiran a conectarse a Internet), siendo el último dígito el único que sirve para diferenciar los equipos (por ejemplo, si el router tiene una dirección IP 192.168.0.1, los ordenadores que se conecten deberán tener una IP así: 192.168.0.x (siendo x un valor comprendido entre 0 y 255 y que no sea el 1 porque es el escogido por el router, ni otro que haya sido asignado a un segundo ordenador). Mientras asignes una IP propia a cada equipo no tendrás problemas de compatibilidad. Para saber más de esto lee el siguiente post.

Bien, aquí es donde quería llegar. Si una señal llega desde Internet hacia el router, éste deberá saber a qué ordenador debe enviar esa señal. Para automatizar esta tarea se asigna un puerto a un servicio concreto. Por ejemplo, si tienes un servidor de emisión distribuida de audio (audio streaming), le asignas un puerto para que toda petición externa que venga con ese puerto vaya directamente hacia el ordenador al que tú le asignes ese puerto en la configuración del router.

El puerto se especifica después de escribir la dirección IP a la que te quieras conectar, y viene precedido por “:”.

http://80.45.69.78:8000

Pongamos un ejemplo:

R: Router. IP local: 192.168.0.1 IP externa: 80.47.89.122

A: Ordenador A. IP: 192.168.0.10

B: Ordenador B. IP: 192.168.0.20

X: Ordenador X. IP: x.x.x.x (Está situado en otra ciudad)

R tiene la conexión a Internet, y A tiene instalado un servidor FTP. R, A y B forman una red local. X quiere acceder al servidor FTP de A para descargarse unos archivos. Envía la petición a R (80.47.89.122) para que le de acceso a A y poder empezar la descarga. La señal de X llega hasta R, pero R no sabe si el ordenador que tiene instalado el servidor FTP es A o B, a no ser que se lo especifiques.

Para que funcione lo que debes hacer es acceder a la configuración del router y redireccionar un puerto determinado para esa función. Para FTP, por ejemplo, el puerto por defecto es el 21. Debes decirle al router que todas las peticiones que vengan hacia el puerto 21 las envíe directamente a A.

En nuestro ejemplo, una vez redireccionado el puerto 21 hacia A, lo que hace X es mandar una petición directa al servidor que pasa por el router pero sabe a dónde mandarlo porque se especifica el puerto (http://80.47.89.122:21).

La redirección de puertos es muy usada porque las redes P2P (a las que acceden programas como el Emule, Azureus, LimeWire, etc) precisan de algunos puertos redireccionados para optimizar su conexión. De todas formas repito que lo más atractivo es el funcionamiento de programas-servidores que te permitirán controlar un ordenador a distancia, ya sea como control remoto o con el envío-recepción de archivos.

El problema del redireccionamiento de puertos es que dependen de la configuración del router, y cada empresa tiene su propio software para sus modelos. Por lo tanto deberemos aprender a usar nuestro router. Una buena ayuda la podemos encontrar en ADSLayuda. Tienen instrucciones muy precisas (con ejemplos en capturas) de muchos tipos de router. Si no, hay otro tipo de páginas de consulta similares o incluso buscando en google la respuesta aparecerá por algún lado.

Aprender a manejar tu router te puede solucionar muchos problemas, aunque también te los puede generar (aprendemos más de los fracasos que de los éxitos).

Para los usuarios de routers Belkin aquí hay una explicación de cómo configurarlo. Dentro de poco espero hacer lo mismo con un Sagem F@st 1201S.

Anuncios

8 comentarios to “Los famosos “puertos de red” y su redireccionamiento”

  1. Ricardo said

    Hola:

    Tengo un router Belkin, instale apache en mi pc y necesito acceder desde internet al servidor que levante en mi computador con apache.
    He intentando redireccionar utilizando varios puerto y la ip primvada de mi pc en la opcion Virtual Server pero no llego a nada, es decir intento acceder desde otro pc utilizando la ip publica del router más “:” y un puerto que no sea el 80 porque no me lo permite porque dice que hay coliciones con router service o algo asi…el caso que no se que hacer si alguien pudiera ayudarme seria ideal…de antemano gracias

    Saludos

  2. tanaceto said

    Para que al escribir tu ip pública -estática o tu dirección de no-ip -recuerda, siempre desde fuera de tu red local-, es decir, que tu servidor sea accecible desde internet- básicamente debes especificar en el router que el puerto 81 sea traducido a 80 para la ip o dirección mac de la máquina donde tienes tu servidor http.

    Por ejemplo, tenemos 2 servidores http en 2 máquinas distintas de nuestra red local, 192.168.0.100 y 192.168.0.101, que queremos que sean accesibles desde internet. Ambas localmente mantienen el puerto 80 para este servicio, pero en el router especificaremos que el puerto 80 publico lo abrimos al puerto 80 de nuestra LAN para la ip 192.168.0.100. -De esta manera. al teclear -ojo siempre desde fuera de tu lan- la dirección http://tucuentanoip.no-ip.info (:80 esta por defecto) nos redirecciona al puerto 80 de la ip indicada, 192.168.0.100
    Si queremos que al escribir http://tucuentanoip.no-ip.info:81 en un explorador fuera de tu red local accedamos a nuestro segundo servidor, debemos pues crear una nueva entrada en la que indicaremos abrir el puerto 81 externo y traducirlo al 80 interno, esta vez para la segunda ip, 192.68.0.101.

    Espero que el comentario sea de ayuda. También te recomiendo copiar y pegar el mensaje de error “literalmente y entre comillas” en don google a ver que te dice

  3. Ales said

    Me podrian decir cuales son los puertos de red mas bulnerables en una PC y como hacer para verificarlos??????????? Agradecere sus respuestas.
    Atte. Ales

  4. tanaceto said

    mirate esta web

    http://www.outpost-es.com/support_faq_kb/1000146.html

  5. mauricio said

    hola tengo un problema tengo un servidor de un juego en linea el problema esta en q para q los otros juagadores que se conecten nesecita el hamachi sin el hamachi no hay coneccion y cuando pongo la ip publica me dice q es 201.201.145.154 pero es la ip del rauter y los paquetes de informacion yegan hasta alli porq es la del rauter y no la de la pc q es el servidor e usado la noip, e redirecionado los paquetes a el srvidor desde el rauter y e abierto los puertos del juego pero no logro tener coneccion si no es con el hamachi.
    gracias

  6. pablo tanaceto said

    Pues creo que debes redireccionar los puertos que el juego necesite abiertos. Para eso debes ir al router y redireccionar (suele haber un apartado llamado NAT-Virtual Servers). Redireccionas y debería funcionar. No conozco el hamachi, aunque acabo de leer algo de ese programa. No deberías, en teoría, necesitarlo. Siento no poder ser de ayuda.

    suerte

  7. mARIO said

    Por favor alguien podría explicar como se redirecciona el puerto 80 de la Wan (IP estática) a la Lan interna (IP del router), tengo varios días buscando en Google y en ningún sitio lo explican.

    Gracias si alguien me puede ayudar.

  8. Darkzoft said

    Para todos los que preguntan “Lo mismo”.

    Por favor vuelvan a leer…

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s

 
A %d blogueros les gusta esto: