Qué es un puerto
Lección 10 de 47 del curso Redes con la terminal de Coddy.
Una dirección lleva tu solicitud a la máquina correcta. Pero una sola máquina puede estar ejecutando un sitio web, una base de datos y un servidor de correo a la vez. Algo tiene que indicar para cuál de ellos es la solicitud.
Eso es un puerto: un número del 1 al 65535 que selecciona el programa. La dirección es el edificio; el puerto es la puerta.
En una URL aparece después de dos puntos:
curl -s http://127.0.0.1:9104/hello.txt
# ^^^^ el puertoUna dirección y un puerto juntos identifican un extremo de una conversación, y ese par se llama socket. Cuando oyes que un servidor «abrió un socket en 9104», significa exactamente esta combinación.
Dos programas en una misma máquina no pueden escuchar ambos en el mismo puerto, lo que provoca el error con el que todo desarrollador se encuentra tarde o temprano: dirección ya en uso.
Desafío
DifícilDemuestra que el puerto selecciona el programa ejecutando dos servidores en una sola máquina.
- Crea dos carpetas,
ayb - Coloca un archivo
i.txten cada una:AAAena,BBBenb - Sirve
aen el puerto 9104 yben el puerto 9105 - Obtén
i.txtde cada puerto, primero del 9104
La misma dirección, el mismo nombre de archivo, una puerta diferente:
AAA
BBB
(cd a && python3 -m http.server 9104 &)inicia un servidor para una carpeta sin cambiar la carpeta en la que te encuentras.
Pruébalo tú mismo
Esta lección incluye un breve cuestionario. Empieza la lección para responderlo y registrar tu progreso.
Todas las lecciones de Redes con la terminal
2Nombres y DNS
Por qué existen los nombresEl archivo hostsBuscar un nombreTipos de registrosRepaso: nombresPractica por tu cuenta: Playground de Terminal