Funcionamiento de Protocolos DNS, HTTP y FTP en Redes de Computadores

Enviado por Chuletator online y clasificado en Informática y Telecomunicaciones

Escrito el en español con un tamaño de 4,76 KB

1. Papel de la caché en un servidor de nombres DNS

La caché de un servidor de nombres DNS sirve para guardar temporalmente respuestas DNS que ya se han consultado con anterioridad.

Así, cuando otro cliente vuelve a preguntar por el mismo nombre, el servidor no tiene que consultar otra vez a otros servidores DNS, sino que responde directamente desde su caché. Esto hace que la resolución sea más rápida y reduce significativamente el tráfico en la red.

Ejemplo de funcionamiento de la caché

Por ejemplo, si una máquina pregunta por: www.ulpgc.es

Y el servidor DNS obtiene como respuesta: www.ulpgc.es IN A 193.145.147.22

El servidor guarda esa información durante el tiempo indicado por el TTL (Time To Live). Si poco después otra máquina pregunta otra vez por www.ulpgc.es, el servidor DNS puede responder directamente con la IP 193.145.147.22 desde su caché.

Por tanto, la caché DNS mejora el rendimiento y evita repetir consultas innecesarias.

2. Registros de Recurso (RRs) para la recepción de correo electrónico

Para que un dominio pueda recibir correo correctamente, en el DNS hay que declarar un registro MX (Mail Exchange), que indica cuál es el servidor encargado de recibir el correo del dominio. Además, ese servidor debe tener un registro A o AAAA, para que se pueda conocer su dirección IP.

Ejemplo de configuración de registros

Por ejemplo, para el dominio ejemplo.com:

ejemplo.com. IN MX 10 mail.ejemplo.com.
mail.ejemplo.com. IN A 192.168.1.20

Con esto, cuando alguien envía un correo a [email protected], el sistema consulta el registro MX, ve que el servidor de correo es mail.ejemplo.com, y después usa el registro A para saber a qué dirección IP debe enviar el mensaje.

3. Identificación de roles Cliente-Servidor mediante el comando ss

En una máquina se ha ejecutado la siguiente orden: ss -tn y se obtiene una salida similar a: State Recv-Q Send-Q Local A...:50618.

En esa conexión, la máquina que actúa como servidor es: 193.145.147.22 porque está usando el puerto 443, que es un puerto típico de servicio. La máquina que actúa como cliente es: 10.110.1.29 porque usa el puerto 50618, que es un puerto alto y temporal, típico de los clientes.

El servicio que se está ejecutando en el servidor probablemente es HTTPS, ya que el puerto 443 corresponde normalmente a servidores web seguros.

4. Papel de la cabecera de solicitud Expect en el protocolo HTTP

La cabecera HTTP Expect sirve para que el cliente indique que espera una respuesta previa del servidor antes de continuar enviando toda la petición.

El caso más típico es: Expect: 100-continue

Se usa cuando el cliente va a enviar un cuerpo grande, por ejemplo al subir un archivo. Primero manda las cabeceras y espera a que el servidor responda:

HTTP/1.1 100 Continue

Si el servidor acepta, el cliente envía el cuerpo de la petición. Si el servidor no acepta, puede rechazarla sin que el cliente tenga que enviar todos los datos de forma innecesaria.

Ejemplo de petición HTTP

POST /subir HTTP/1.1
Host: ejemplo.com
Content-Length: 5000000
Expect: 100-continue

Así se evita enviar un archivo grande si el servidor ya sabe desde el principio que no va a aceptar la petición.

5. Conexiones y puertos en el protocolo FTP para listado de ficheros

En el protocolo FTP se establecen dos conexiones diferenciadas para realizar un listado de ficheros:

  1. Conexión de control: Sirve para enviar comandos FTP, como USER, PASS o LIST.
    • Cliente: puerto temporal alto.
    • Servidor: puerto 21.
  2. Conexión de datos: Sirve para enviar el resultado del listado del directorio.

En modo activo, que es el funcionamiento clásico, la estructura es la siguiente:

Conexión de control:
Cliente: puerto alto → Servidor: puerto 21

Conexión de datos:
Servidor: puerto 20 → Cliente: puerto alto indicado por el cliente

Por ejemplo, el cliente se conecta al servidor por el puerto 21 y pide un comando LIST. Entonces, el servidor abre una conexión desde su puerto 20 hacia un puerto temporal del cliente para enviarle la lista de ficheros solicitada.

Entradas relacionadas: