Servicio de Resolución de Nombres de Dominio (DNS)

Introducción y Contextualización Práctica del Servicio DNS

  • Uso de la navegación web hoy en día: Se ha vuelto un elemento imprescindible. El proceso de navegar se complicaría significativamente si los usuarios tuvieran que memorizar e indicar manualmente las direcciones IP para cada solicitud.
  • Transición de protocolos de red: La complejidad aumenta con la transición de direcciones IPv4IPv4 a IPv6IPv6, debido a la longitud y formato de estas últimas.
  • Definición de Nombres de Dominio: Son nombres únicos y relativamente sencillos de recordar que se asocian de forma biunívoca a una dirección IP.
  • Concepto de DNS (Domain Name System): Se define como un conjunto de servicios y protocolos diseñados para traducir los nombres de dominio públicos (entendibles por humanos) a direcciones numéricas (IPv4IPv4 o IPv6IPv6) que las máquinas pueden procesar.
  • Impacto en la velocidad de Internet: Existe la duda técnica de si un servidor DNS afecta a la velocidad. La respuesta técnica es que el DNS no afecta a la velocidad de la conexión contratada, pero sí influye directamente en el rendimiento de la navegación. Un servidor saturado o lento incrementa el tiempo de respuesta en la resolución de los nombres, provocando una sensación de lentitud para el usuario.

Funcionamiento y Utilidad del Servicio DNS

  • Función Principal: Facilitar el manejo de Internet mediante la resolución de nombres, que consiste en la asociación entre nombres de dominio y direcciones IP.
  • Doble Dimensión del Servicio:
    • Para el usuario final: Permite la navegación sin necesidad de memorizar las direcciones IP físicas de los sitios web.
    • Para los administradores de servidores: Permite publicar el nombre de las máquinas en Internet para que sean accesibles sin revelar la dirección IP física interna.
  • Pilares de los Beneficios del DNS:
    • Servicio de almacenamiento: Capacidad para guardar información en diversas bases de datos relacionadas en la red que funcionan como servidores de nombres (NS).
    • Servicio de consulta de información: Permite que los clientes DNS se comuniquen con los servidores para obtener los datos necesarios.
  • Organización jerárquica: Debido al volumen masivo de dominios, el sistema se organiza mediante espacios de nombres con una estructura jerárquica de servidores dedicados.
  • Funciones Principales del Servicio:
    • Búsqueda directa: Obtención de la dirección IP a partir de un nombre de dominio.
    • Búsqueda inversa: Obtención del nombre de dominio a partir de una dirección IP específica.
    • Resolución de servidores de correo: Identifica el servidor específico al que se debe entregar un correo electrónico.
  • Funciones Adicionales del DNS:
    • Obtención de claves públicas.
    • Gestión de listas de spam.
    • Replicación de ficheros entre servidores.
    • Actualización dinámica de ficheros de DNS.
    • Notificación automática de cambios en la base de datos.

Componentes del Servidor DNS

Para ejecutar sus funciones de manera eficiente, el DNS consta de tres piezas fundamentales:

  • Espacios de dominio de nombres: Una estructura jerárquica en forma de árbol que contiene los registros de recursos (RR o Resource Records). Estos pueden dividirse en subdominios de niveles inferiores.
  • Servidores de nombres (Name Servers): Equipos que almacenan y proporcionan información sobre el espacio de nombres.
    • Servidores autoritativos: Suelen ser gestionados por proveedores de Internet y solicitan la IP del dominio.
    • Servidores caché: Almacenan las peticiones más frecuentes para evitar la saturación de la red y acelerar las búsquedas.
  • Resolvers o Clientes: Son programas o partes del sistema operativo encargados de realizar las consultas necesarias para obtener los datos IP o de dominio y entregarlos al usuario.
  • Apoyos adicionales:
    • Protocolo DNS: Reglas que rigen la comunicación cliente-servidor.
    • Bases de datos DNS: Bases de datos distribuidas en la red que guardan las asociaciones entre IP y nombres de dominio.

Estructura y Organización de los Dominios

  • Definición de Dominio: Nombre fácil de recordar que identifica una dirección web.
  • Sistemas de Organización:
    • Sistema de dominios planos: Lista de nombres válidos sin agrupamiento. Exige que no se repitan nombres para evitar colisiones. No es escalable para grandes redes.
    • Sistema de dominios jerárquico: Estructura en árbol donde el nombre depende de su ubicación jerárquica. Es el sistema empleado por el DNS actual.
  • Niveles de Dominio:
    • Nivel Raíz: Es el punto de inicio de la jerarquía.
    • TLD (Top Level Domain) o Nivel Superior:
      • Genéricos: Dominios como .com o .net, no vinculados a un territorio específico y adquiribles por cualquier usuario.
      • ccTLD (Country Code Top Level Domain): Dominios terrestres de dos letras que identifican un país (ejemplo: .es, .it).
    • Tercer Nivel: Combinación de un dominio genérico y uno terrestre (ejemplo: .edu.es).
  • Delegación: Proceso mediante el cual una organización cede la administración de subdominios a otras entidades.

Caso Práctico 1: Niveles de Dominio

  • Objetivo: Identificar las partes de la dirección http://www.medac.com.
  • Análisis de Componentes:
    1. Protocolo de dominio: http://.
    2. Subdominio: www.
    3. Nombre del dominio: medac.
    4. Dominio superior (TLD) o extensión: .com.

Resolvers (Clientes DNS)

  • Concepto: El término hace referencia a los clientes DNS, aunque algunos servidores también pueden actuar como tales. Es el software encargado de gestionar las consultas (querys) enviadas a un servidor DNS.
  • Funciones Principales:
    • Envío de consultas.
    • Interpretación de las respuestas.
    • Suministro de la información a la aplicación solicitante.
  • Proceso Básico del Resolver:
    1. La aplicación solicita una web y el resolver consulta al servidor DNS configurado en el equipo.
    2. Si el servidor tiene los datos (memoria caché o archivos locales), responde directamente.
    3. Si no los tiene, la consulta se lanza al exterior, escalando desde servidores raíz hasta el servidor autoritativo.
    4. Una vez hallado el dato, se devuelve al resolver y este a la aplicación.
  • Nota Técnica: Es posible operar sin resolvers usando IPs directas, pero es un proceso tedioso para el ser humano.

Procesos de Resolución: Consultas Recursivas e Iterativas

Al resolver nombres, los clientes y servidores emplean dos métodos principales:

7.1. Consultas Recursivas

El servidor de nombres proporciona la respuesta definitiva directamente al resolver. Los resultados pueden ser:

  • Respuesta positiva: Contiene la información del dominio. El servidor indica si es autoritario o caché.
  • Respuesta negativa (NXDOMAIN): El dominio no puede ser resuelto y la web es inaccesible.
  • Error: Otro problema técnico.

Procedimiento del servidor ante consulta recursiva:

  1. Si es autorizado (maestro o esclavo), busca en sus archivos de zona y responde como autoritativo.
  2. Si no es autorizado, busca en su caché. Si lo encuentra, responde como no autoritativo.
  3. Si no tiene la respuesta:
    • Si tiene reenviadores, les envía la pregunta y devuelve la respuesta final al cliente.
    • Si no tiene reenviadores, realiza consultas a otros servidores hasta que uno autorizado devuelva la respuesta (positiva o negativa).
7.2. Consultas Iterativas

El servidor DNS realiza preguntas repetitivas a través del árbol jerárquico hasta encontrar el servidor autoritativo.

Respuestas posibles:

  • Positiva con información del dominio (indicando si es autoritario).
  • Error NXDOMAIN.
  • Referencia de otro servidor DNS a consultar (autorizado o no).
  • Otro tipo de problema.

Observación: Las consultas iterativas suelen ocurrir entre servidores DNS después de que una consulta recursiva no haya obtenido respuesta inmediata.

Resolución Inversa

  • Concepto: Consulta realizada a partir de una dirección IP para obtener su nombre de dominio.
  • Finalidades:
    • Seguimiento de trazas de ataques informáticos.
    • Resolución de problemas técnicos en la web.
    • Detección de correos no deseados (spam).
  • Mecánica de Funcionamiento:
    • Cada byte de la dirección IP se trata como un dominio.
    • Se utiliza el dominio dedicado .IN-ADDR.ARPA.
    • Estructura Jerárquica: A diferencia de la resolución directa (diagonal derecha a izquierda), la inversa se procesa de izquierda a derecha en los octetos.
    • Ejemplo de Consulta: Para la IP 100.168.120.150, la consulta generada es 150.120.168.100.IN-ADDR.ARPA.
  • Diferenciación de dominios por protocolo:
    • IPv4: Utiliza in-addr.arpa.
    • IPv6: Utiliza ip6.arpa.
  • Mapeado inverso: Se refiere a la pregunta específica sobre qué nombre corresponde a una IP, empleando consultas recursivas e iterativas sobre los dominios dedicados.

Tipos de Servidores de Nombres

Se clasifican según su función y posición en el árbol de consultas:

  • Servidor Raíz: No posee la traducción directa, pero redirige la consulta al servidor TLD pertinente.
  • Servidor TLD (Top Level Domain): Gestiona nombres con una extensión común (ej. .com). Recibe órdenes del servidor raíz.
  • Servidor Autoritativo: Proporciona la información exacta del nombre de dominio que sirve. Se dividen en:
    • Primario: Donde reside la zona primaria de datos.
    • Secundario: Recibe actualizaciones (transferencias de zona) desde el primario.
  • Servidor Caché: No pertenece a ninguna zona específica. Su misión es almacenar consultas recientes para reducir el tráfico y la carga de otros servidores.
  • Servidor Reenviador (Forwarder): Gestiona el tráfico DNS externo de una red. Centraliza las peticiones hacia el exterior para minimizar la exposición y el número de salidas.

Caso Práctico 2: Traducción de Nombres de Dominio

  • Planteamiento: ¿Con cuántos servidores contacta depart.inf.medac.es para traducir www.medac.es si las cachés están vacías y se usa consulta iterativa?
  • Resolución: Siendo una traducción completa desde cero, se debe contactar con 33 servidores:
    1. Servidor del dominio raíz.
    2. Servidor del dominio .es.
    3. Servidor del dominio medac.es.

Resumen y Resolución del Caso de la Unidad

  • Efecto del DNS en la navegación: Los servidores DNS afectan el rendimiento, no la velocidad de ancho de banda bruta. La saturación por alto volumen de peticiones o la lentitud del hardware del servidor causan retrasos.
  • Control de contenidos: Los proveedores pueden usar sus servidores DNS para bloquear el acceso a ciertas páginas web.
  • Herramienta de diagnóstico recomendada: https://www.dnsperf.com/dns-speed-benchmark para medir la velocidad de resolución.

Datos Históricos y Curiosidades

  • Origen: El primer servidor DNS se creó en el año 19681968.
  • Método Primitivo: Al inicio, consistía en un simple archivo de texto llamado HOSTS.TXT que asignaba nombres de host a direcciones IP en Arpanet.

Bibliografía de Referencia

  • López, R. J. M. (2022). Planificación y administración de redes. Ra-ma.
  • López, R. J., & Fernández, J. L. (2012). Redes Locales. Macmillan Advantage.
  • Stallings, William (2000). Comunicaciones y Redes de Computadores. Prentice Hall.
  • Planificación y transferencia en zonas DNS. Zeppelinux.