Descripción general de DNS,Descripción general de DNS,Descripción general de DNS,Descripción general de DNS

Esta página proporciona una descripción general del Sistema de nombres de dominio (DNS).

Para obtener una descripción general de Cloud DNS, consulte la descripción general de Cloud DNS . Para conocer los términos clave relacionados con Cloud DNS, consulte Términos clave .

DNS es una base de datos distribuida jerárquica que almacena direcciones IP y otros datos y permite consultas por nombre.

En otras palabras, el DNS es un directorio de nombres de dominio legibles que se traducen en direcciones IP numéricas que las computadoras utilizan para comunicarse entre sí. Por ejemplo, al escribir una URL en un navegador, el DNS la convierte en la dirección IP de un servidor web asociado a ese nombre. Los directorios DNS se almacenan y distribuyen por todo el mundo en servidores de nombres de dominio que se actualizan periódicamente.

Los siguientes conceptos son útiles cuando se trabaja con DNS.

Tipos de servidores DNS

Un servidor DNS almacena una base de datos de nombres de dominio y luego procesa los nombres de dominio en función de las consultas DNS que provienen de un cliente en una red.

Servidor autorizado

Un servidor autorizado es un servidor que contiene los registros de nombres DNS, incluidos A, AAAA y CNAME.

Un servidor no autoritativo crea un archivo de caché basado en consultas previas de dominios. No conserva los registros de nombres originales.

Resolver recursivo

Un solucionador recursivo es el servidor que envía una consulta al servidor, con o sin autoridad, para su resolución. Se le llama así porque ejecuta cada consulta para un nombre determinado y devuelve el resultado final.

Esto contrasta con un solucionador iterativo , que solo devuelve una referencia a los próximos servidores DNS que podrían tener la respuesta.

Por ejemplo, al resolver el nombre google.com. , el solucionador recursivo debe determinar quién tiene autoridad para . (la zona raíz del DNS). Luego, pregunta a esos servidores de nombres quién tiene autoridad para .com. Finalmente, pregunta a esos servidores de nombres quién tiene autoridad para google.com. , y los datos rdata del registro A se devuelven al cliente.

A continuación se muestra un ejemplo de un solucionador recursivo en acción; si ejecuta dig +trace google.com , el solucionador recursivo realiza la siguiente acción (8.8.8.8/Google Public DNS es uno de esos solucionadores):

 dig +trace google.com
; <<>> DiG 9.11.5-P4-5.1-Debian <<>> +trace google.com
;; global options: +cmd
.           168383  IN  NS  a.root-servers.net.
.           168383  IN  NS  b.root-servers.net.
.           168383  IN  NS  c.root-servers.net.
.           168383  IN  NS  d.root-servers.net.
.           168383  IN  NS  e.root-servers.net.
.           168383  IN  NS  f.root-servers.net.
.           168383  IN  NS  g.root-servers.net.
.           168383  IN  NS  h.root-servers.net.
.           168383  IN  NS  i.root-servers.net.
.           168383  IN  NS  j.root-servers.net.
.           168383  IN  NS  k.root-servers.net.
.           168383  IN  NS  l.root-servers.net.
.           168383  IN  NS  m.root-servers.net.
.           168383  IN  RRSIG   NS 8 0 518400 20190810170000 20190728160000 59944 .
    ITqCp5bSKwoG1P76GpNfDanh4fXxOtHuld5SJzEm9ez0U/K7kpmBm4TE
    cw82zuqtZlqiGOuq+90KHJEhD1fdX3FujgDqe3kaY/41LgFIo76RBeMP
    CorYg29lKQOBf7pLPiJWewFmnLsRXsvENzxNXl9mynX80EQSS2YlCWpr
    47i2j5SFpGDzmxls7LinB4VvwVLhy0FPwBaVc5NVqQoFS5ZkfKXCUz8x
    urExPT2OtPJeDiGzrQGmT6vDbYZtJRWWGK5tPIKZQyF/08YSJlrjebNa
    1nKZVN8SsO8s7elz6JGmdoM6D/1ByLNFQmKvU55ikaVSnXylqixLbJQI 7LyQoA==
;; Received 525 bytes from 127.0.0.1#53(127.0.0.1) in 22 ms

com.            172800  IN  NS  a.gtld-servers.net.
com.            172800  IN  NS  b.gtld-servers.net.
com.            172800  IN  NS  c.gtld-servers.net.
com.            172800  IN  NS  d.gtld-servers.net.
com.            172800  IN  NS  e.gtld-servers.net.
com.            172800  IN  NS  f.gtld-servers.net.
com.            172800  IN  NS  g.gtld-servers.net.
com.            172800  IN  NS  h.gtld-servers.net.
com.            172800  IN  NS  i.gtld-servers.net.
com.            172800  IN  NS  j.gtld-servers.net.
com.            172800  IN  NS  k.gtld-servers.net.
com.            172800  IN  NS  l.gtld-servers.net.
com.            172800  IN  NS  m.gtld-servers.net.
com.            86400   IN  DS  30909 8 2
    E2D3C916F6DEEAC73294E8268FB5885044A833FC5459588F4A9184CF C41A5766
com.            86400   IN  RRSIG   DS 8 1 86400 20190811170000 20190729160000 59944 .
    KXPRdZspxd6hZYRFx3cj7Yp3d6HDzOG5CmoK46ZrrlKnZkCYMPKzyFQ2
    15pA+jZ37MbQbhe6+S+C4AHWqv95DDsue85ha3ZmWGhnJxcLnDaL5Twp
    Z/W/a+1cTHhhbMZua1riw74mqvzRAF1kVerj7jrvWnOAOZCh69Dr4AFJ
    gRN4MAn+wCZDmPQCtkcGVJ9vyNV7Xra45B4ISqEo0xi8CXewp9cc+aW5
    TSjFRhj1RM9d3k+3Mrq6AAV8dVgWofYTg6Ihph/SfoIx4TrTrEbgfdsv
    MvuLPXvK6Y7oSh5WknbFduw7HQdo1jH3/QR54FORswBJT8VmYD7Zii88 tAjbRQ==
;; Received 1170 bytes from 192.58.128.30#53(j.root-servers.net) in 2 ms

google.com.     172800  IN  NS  ns2.google.com.
google.com.     172800  IN  NS  ns1.google.com.
google.com.     172800  IN  NS  ns3.google.com.
google.com.     172800  IN  NS  ns4.google.com.
    CK0POJMG874LJREF7EFN8430QVIT8BSM.com. 86400 IN NSEC3 1 1 0 -
    CK0Q1GIN43N1ARRC9OSM6QPQR81H5M9A NS SOA RRSIG DNSKEY NSEC3PARAM
    CK0POJMG874LJREF7EFN8430QVIT8BSM.com. 86400 IN RRSIG NSEC3 8 2
    86400 20190803044434 20190727033434 17708 com.
    rMmiNL7bYvJpB3Bc+WnqS2iiczm2PwxBvJcl7SL/vcTj88GsxM1ycTSV
    PsHZHxfrv1dv2C5BCSZ+mzeVBu8upLoeraQy+UVf3VXyt3i3rNGzcXYV
    8HSrHcXrRoAJopFim3Ge1xdZ+uERg3cTIcN2tJxxkCeqt/EcUTqtQl8t EAc=
    S84BDVKNH5AGDSI7F5J0O3NPRHU0G7JQ.com. 86400 IN NSEC3 1 1 0 -
    S84CFH3A62N0FJPC5D9IJ2VJR71OGLV5 NS DS RRSIG
    S84BDVKNH5AGDSI7F5J0O3NPRHU0G7JQ.com. 86400 IN RRSIG NSEC3
    8 2 86400 20190804045723 20190728034723 17708 com.
    jypPsaWVop9rzuf70CFYyiK0hliiJ+YYtkjgb3HVj9ICc57kLmv9DkvG
    DddF5GBQpqNEakzyJtya179MAdDT7RhJB4XfmY6fu5I5QTeIjchfP5wt
    7gU1AL7cqTmBAo2RWu62vtUytV09+O3KGFq5O+Cwr11dSTfq1yYyw6YW cMI=
;; Received 772 bytes from 192.41.162.30#53(l.gtld-servers.net) in 2 ms

google.com.     300 IN  A   172.217.7.14
;; Received 55 bytes from 216.239.32.10#53(ns1.google.com) in 13 ms

Cada cliente DNS consulta un servidor de nombres. Un solucionador recursivo consulta otros servidores de nombres, hasta un servidor de nombres de nivel superior, si es necesario. El registro NS de una zona en un servidor de nombres de nivel superior dirige el solucionador a otro servidor de nombres, llegando finalmente al servidor de nombres que almacenó en caché la zona o al servidor autorizado de la zona.

Zonas

Zona pública

Una zona pública es visible en internet. Puedes crear registros DNS en una zona pública para publicar tu servicio en internet. Por ejemplo, podrías crear un registro A en una zona pública llamada example.com. (observa el punto final) para tu sitio web público www.example.com. .

Zona privada

Una zona privada es cualquier zona que no puede consultarse a través de Internet público.

Subzona delegada

El DNS permite al propietario de una zona usar registros NS para delegar un subdominio a un servidor de nombres diferente. Los resolutores siguen estos registros y envían consultas para el subdominio al servidor de nombres de destino especificado en la delegación.

Por ejemplo, puede crear zonas independientes para example.com y subdomain.example.com , cada una con su propio servidor de nombres autorizado. Dado que subdomain.example.com es un dominio secundario de example.com , el método para habilitar la ubicación del servidor de nombres autorizado del subdominio desde la zona del dominio principal se denomina delegación. La delegación es, en esencia, un puntero al servidor de nombres autorizado de un subdominio. Para habilitar la delegación en Cloud DNS, puede agregar registros NS para los subdominios en la zona del dominio principal.

DNS de horizonte dividido

Horizonte dividido es un término que describe la creación de dos zonas para el mismo dominio: una para la red interna y otra para la red externa (normalmente Internet). El DNS de horizonte dividido permite ofrecer diferentes respuestas (diferentes conjuntos de registros de recursos) para el mismo nombre según la solicitud.

Por ejemplo, puede proporcionar la versión de desarrollo o de prueba de su aplicación si la consulta proviene de la red de desarrollo, y la versión de producción o pública de su aplicación si la consulta proviene de Internet pública.

Archivos

Un registro es una correspondencia entre un recurso DNS y un nombre de dominio. Cada registro DNS individual tiene un tipo (nombre y número), una fecha de caducidad (tiempo de vida) y datos específicos del tipo.

Algunos de los tipos de registros más utilizados son:

  • A: Registro de dirección, que asigna los nombres de host a su dirección IPv4.
  • AAAA: registro de dirección IPv6, que asigna los nombres de host a su dirección IPv6.
  • CNAME: Registro de nombre canónico, que especifica nombres de alias.
  • MX: Registro de intercambio de correo, que se utiliza para enrutar solicitudes a servidores de correo.
  • NS: Registro de servidor de nombres, que delega una zona DNS a un servidor autorizado.
  • PTR: Registro de puntero, que define un nombre asociado a una dirección IP.
  • SOA: Inicio de autoridad, utilizado para designar el servidor de nombres principal y el administrador responsable de una zona. Cada zona alojada en un servidor DNS debe tener un registro SOA (inicio de autoridad). Puede modificar el registro según sea necesario (por ejemplo, puede cambiar el número de serie a un número arbitrario para permitir el control de versiones basado en fecha).

Conjuntos de récords

Los registros con el mismo nombre y tipo, pero con diferentes valores de datos, se denominan conjuntos de registros. Al crear un registro, si existe un conjunto con el mismo nombre y tipo, este se añade a este conjunto coincidente. Si no existe ningún conjunto coincidente, se crea un nuevo conjunto y se añade a la lista de conjuntos de registros.

Este es un ejemplo de un conjunto de registros con más de un registro que tiene el mismo nombre y tipo:

Nombre DNS Tipo TTL (segundos) Datos
db-01.dev.gcp.example.com A 50 10.128.1.35
db-01.dev.gcp.example.com A 50 10.128.1.10

Para obtener una lista de los tipos de registros admitidos en Cloud DNS, consulte Tipos de registros DNS admitidos .

Delegación de subdominios

Al crear registros, asegúrese de que los registros NS y SOA coincidan. Los registros NS y SOA conflictivos pueden provocar que algunos solucionadores rechacen la delegación por inválida y se nieguen a almacenar en caché las respuestas NO DATA a las consultas. Esto puede generar un gran número inesperado de consultas a sus zonas públicas administradas por parte de solucionadores recursivos de terceros cuando estos consultan sus zonas públicas administradas en busca de registros inexistentes.

Por ejemplo, supongamos que hay dos subdominios, example.com y subdomain.example.com , en Cloud DNS. Los registros NS y SOA de subdomain.example.com no coinciden. Ninguna de las zonas contiene registros AAAA. Cuando un solucionador recursivo externo consulta subdomain.example.com para obtener un registro AAAA y recibe una respuesta NO DATA , si detecta la delegación no válida de subdomain.example.com , se niega a almacenar en caché la inexistencia de registros AAAA en esa zona. Esto provoca que se reintenten las consultas. Consultan, a su vez, todos los servidores de nombres de Cloud DNS para obtener esta información.

Registrador

Un registrador de nombres de dominio es una organización que gestiona la reserva de nombres de dominio de internet para zonas públicas. Un registrador debe estar acreditado por un registro de dominios genéricos de nivel superior (gTLD) o un registro de dominios de nivel superior de código de país (ccTLD). Así es como los servidores de nombres de nivel superior acuerdan la SOA y actualizan los registros NS de la zona para dirigir las solicitudes a servidores de nombres de caché o autorizados.

Número de serie de SOA

El número de serie de SOA es el número de versión de una zona DNS. Para que todos los servidores de nombres estén actualizados con la versión de una zona, deben tener el mismo número de serie de SOA. Los números de serie de los registros de SOA creados en zonas administradas por DNS aumentan de forma constante con cada cambio transaccional en los conjuntos de registros de una zona.

Sin embargo, puede cambiar el número de serie de un registro SOA a un número arbitrario, incluida una fecha con formato ISO 8601, como se recomienda en RFC 1912 .

DNSSEC

La Extensión de Seguridad del Sistema de Nombres de Dominio (DNSSEC) aborda las vulnerabilidades de los datos DNS. DNSSEC es un conjunto de especificaciones del IETF que proporciona autenticación de datos DNS, denegación de existencia autenticada e integridad de datos a clientes DNS (resolutores). En resumen, DNSSEC permite que el software verifique el origen de los datos DNS y valide que no se hayan modificado durante su transmisión.

Para obtener más detalles sobre DNSSEC, consulte RFC 4033 .

Para obtener una lista de la terminología general de DNS, consulte RFC 7719 .

¿Qué sigue?