Conoce tu router (III): Los puertos

En un ordenador podemos tener corriendo simultáneamente un buen puñado de programas y servicios que hacen uso de nuestra conexión a la red. Y aunque no lo parezca esta, en aparente, marabunta de datos sin control entrando y saliendo de nuestro equipo fluye de una manera totalmente ordenada, como si una autopista de miles de carriles se tratara. Los puertos son estos carriles.

Es posible que hayáis oído, ante problemas de conexión con ciertos programas de descarga o lentitud en la misma, que lo más seguro es que vuestro problema estuviera provocado porque no teníais abiertos los puertos. Seguramente en ese momento os sonaba a marciano, pero los puertos es una de las claves en la comunicación entre máquinas a través de la red.

Técnicamente, un puerto es un número binario de 16 bits, lo que significa que su máximo valor será 65535, que va unido a una dirección IP e indica el camino de entrada y/o salida en nuestras comunicaciones. Esta combinación de IP y puerto, por ejemplo 125.168.23.45:4335, es conocida como socket. Pero, ¿qué indica el puerto exactamente? Pues simplemente es una manera de identificar cada una de las “puertas” que tiene nuestro router, por las que fluye la información en ambos sencillos.

Los puertos son utilizados por numerosos programas para comunicarse con el exterior. Por ejemplo, eMule usa unos puertos para comunicarse con sus servidores y el resto de la red eDonkey, al igual que Bittorrent, Skype e incluso videojuegos online como World of Warcraft. En definitiva, todo software que haga uso de una comunicación con el exterior vía Internet necesita de un número de puerto a su disposición.

A la hora de asignar un número de puerto a un programa (aunque normalmente todos lo tienen definido por defecto), no podemos elegir a la ligera el que queramos, sino que existe cierta regulación al respecto. La organización encargada de ello es la ICANN (Internet Corporation for Assigned Names and Numbers, o Corporación de Internet para la Asignación de Nombres y Números), la cual se encarga también de asignar las direcciones IP a nivel mundial.

Los puertos cuyo número va desde 0 a 1023 son los reservados para los sistemas operativos (Windows, Linux, Mac…) y los protocolos más conocidos. Por poner algunos ejemplos, el puerto 80 es el del protocolo HTTP y lo usan nuestros navegadores, 110 es para el protocolo POP3 del correo electrónico y 21 es para los FTP.

Desde el número 1024 hasta el 49151 encontramos los puertos registrados y están a disposición del usuario y sus aplicaciones. Es decir, si tenéis que elegir un nuevo puerto para algún programa, debéis tomarlo de este rango. Y para terminar, los puertos desde el 49152 al 65535 se denominan puertos dinámicos o privados y también pueden ser utilizarlos, aunque con los protocolos actuales (TCP) han quedado en desuso y no se recomiendan.

A la hora de la verdad, ¿cómo nos afectan los puertos? Normalmente, por motivos de seguridad, todos los routers vienen con sus puertos cerrados, salvo los del primer rango que contempla los protocolos más usados. Es por eso que si usamos un programa que use un puerto de un rango superior, lo más seguro es que nos toque abrir ese puerto y redireccionarlo a la IP privada del equipo que tiene instalado dicho programa.

No puedo explicar el proceso detalladamente ya que cada fabricante otorga a sus routers una interfaz de gestión distinta, pero todos tienen un apartado denominado NAT (Network Address Translation) en el que poder abrirlos y los datos que se solicitan son siempre los mismos. Necesitaremos saber los puertos inicial y final que deseamos abrir (en caso de querer abrir sólo uno pondremos el mismo) y el protocolo que utiliza dicho puerto (TCP o UDP, aunque en caso de duda se puede abrir para los dos)..

Poniendo un ejemplo clásico, si deseamos abrir los puertos de eMule, tendremos que introducir en la configuración de nuestro router los puertos 4662 TCP y 4672 UDP, aunque estos podemos cambiarlos y elegir los que queramos.

En Xataka ON | Conoce tu router

Portada de Xataka Móvil