DNS
Domain Name System
Introducción
● DNS (Domain Name System)
○ Sistema jerárquico y descentralizado
○ Localización:
■ ordenadores
■ servicios
■ o cualquier recurso conectado a una red de datos
○ Internet y redes privadas
○ Usualmente traduce nombres de dominio en direcciones
numéricas IP
■ Los humanos recordamos mejor nombres.
■ Las máquinas trabajan mejor con números (usados por protocolos de red)
○ Y si no existiese DNS?:
■ Gran cantidad de máquinas y recursos en la red. Imposible de mantener en
bases de datos individuales
■ Anteriormente bastaban ficheros locales:
● C:\Windows\System32\Drivers\etc\...
● /etc/hosts
/home/pierresimt/gota-webserver/te
nerife-fire/simulations-test/2022/07/
21/06/output
Distribuido y jerárquico
● Cada servidor DNS se encarga de una porción de todos los
nombres existentes (zona) de la que es responsable.
● Ejemplo de árbol jerárquico de dominios:
“.” (raíz)
top-level domains” (TLDs):
originales (.com, .org, .edu, etc.)
códigos de países (.es, .it, .ar, etc.)
.es .fr .com .org y otros…
http://data.iana.org/TLD/tlds-alpha-b
y-domain.txt
Segundo nivel:
ull.es ulpgc.es Habitualmente nombres de
organizaciones, empresas, etc.
esit.ull.es
● Nombre dispositivo + ruta hasta la raíz: FQDN (Fully
Qualified Domain Name). Ejemplo: “exthost.esit.ull.es.”
Dominios y zonas
● Dominio: Parte del espacio de nombres DNS (subtree)
○ P. Ej.: esit.ull.es
● Zona: Estructura en la que se almacena la
información de gestión.
○ Contiene información de un dominio o una parte del mismo.
○ Si no hay subdominios que constituyen zonas diferentes, la
zona corresponde al dominio completo.
○ Conjunto de servidores que se utilizan para almacenar todos
los registros de ese espacio de nombres ⇒ Ficheros de
zona.
● Dos tipos de ficheros de zona:
○ Resolución directa
○ Resolución inversa
¿Qué almacenan los servidores DNS?
● Registros de recursos (RRs, resource records):
○ Start of Authority (SOA): indica qué servidor DNS es el autorizado para
gestionar una zona en particular.
○ Host (A): pares “nombre:IP”. Son utilizados para las resoluciones directas, en
las que se busca la IP a partir del nombre.
○ Pointer (PTR): Son los contrarios a los anteriores, son utilizados para las
resoluciones inversas, en las que se proporciona una IP para obtener el
nombre de un recurso.
○ Name Server (NS): Indica los servidores DNS disponibles para una zona.
Aunque sólo exista un SOA, pueden existir varios servidores en una zona por
balanceo de carga y disponibilidad del servicio.
○ Service (SRV): indican qué recursos tienen disponible un determinado
servicio. Este tipo de registros es muy importante para Active Directory.
○ Mail Exchanger (MX): Indica los servidores disponibles en el dominio para
recibir mensajes de correo electrónico (SMTP, simple mail transfer protocol).
○ Canonical Name (CNAME): representa un alias para un recurso particular, de
modo que varios nombres pueden apuntar a la misma dirección IP.
○ etc.
Proceso de resolución de nombres
¿Cómo conoce
los serv. “.”?
fichero ¿Qué contienen?
mapa
dig +trace www.ull.es (Linux)
web
DNS lookup
Tipos de servidores DNS
• Servidor Primario
• Es el único que contiene la copia original del fichero de la zona.
• Es donde se realizan las modificaciones de la zona.
• Después de modificar estos datos, se replican a los servidores secundarios
⇒transferencia de zona
• Servidores Secundarios
• Contienen una copia (sólo lectura) del fichero de zona
• Se actualizan a través de transferencias de zona (completas o incrementales)
• Proporcionan balanceo de carga (no tolerancia a fallos)
• Servidores caché
• No contienen copia de ningún fichero
• Almacenan temporalmente las resoluciones anteriores
Resolución inversa
link
Zonas de autoridad
En cada zona, los servidores primarios y secundarios son los
responsables de la resolución de su dominio
Servidores DNS primarios
Accesible sólo
desde el
interior
Zonas delegadas
• Permite mantener la estructura jerárquica de DNS
• Se implementa a través de registros de delegación
Servidores
autorizados para la
zona NAmerica
Forwarders
• Normalmente se usan estos mecanismos para conectar con los
niveles superiores en la jerarquía
• Forwarders Se establecen en servidores DNS que no son
responsables de la resolución externa
Petición recursiva
www.google.es
DNS Dinámico
Uno de los inconvenientes del servicio DNS tradicional es su
configuración “manual”.
• Algunas implementaciones ya incluyen DNS dinámico.
• Los clientes se registran automáticamente en el DNS
• Los servidores también pueden registrar los servicios que
proporcionan
• Inconvenientes: Seguridad
• Cualquier equipo puede registrarse en el DNS de una red
• Solución: Secure Updates
• Sólo los equipos autorizados pueden registrarse
DNS Seguro: DNSSEC
DNS es un protocolo muy antiguo que tiene
importantes problemas de seguridad
● Suplantación de identidad: Redirección del
tráfico a un servidor que suplanta la
identidad del servidor original
● Denegación de servicio: Deja inaccesible el
servidor original
Solución:
DNSSEC (Domain Name System Security
Extensions)
DNS Seguro: DNSSEC
Está basado en una cadena de confianza en la
que cada nodo es capaz de autenticar al nodo
jerárquicamente inferior.
Servidores del dominio “.”
Servidores del dominio
“.es”
ull.es
www.
Servidores del dominio “ull.es.”
DNS Seguro: DNSSEC
Cada dominio envía al dominio superior su
clave pública.
Esta clave se firma con la clave privada de cada
dominio
Todos se fían de la clave pública del dominio
raíz
Cuando se resuelve una dirección se envía,
junto a la información solicitada, las pruebas de
que esta información no ha sido alterada
DNS Seguro: DNSSEC
Servidores del dominio “.”
1. Resolver .es
- Clave pública del dominio .
?
.es
- Servidores del dominio .es
- Prueba de la clave pública de esos
servidores firmadas por la clave
secreta de “.”
s?
ll.e
u
w.
ww
Clave pública de “.”
DNS Seguro: DNSSEC
Servidores del dominio “.”
2. Resolver ull.es
?
.es
Servidores del dominio “.es”
- Clave pública de “.”
- Servidores del dominio .es
- Prueba de la clave pública de
s?
esos servidores firmadas por la ull.e
clave secreta de “.”
s?
- Clave pública de .es
ll.e
- Servidores del dominio ull.es
u
w.
ww
firmados por la clave secreta de “.es”
- Firma de la clave pública de esos
servidores firmadas por la clave
Clave pública de “.” secreta de “.es”
DNS Seguro: DNSSEC
Servidores del dominio “.”
2. Resolver ull.es
.es
? Coinciden ambas claves???
Servidores del dominio “.es”
- Servidores del dominio .es
- Prueba de la clave pública de s?
esos servidores firmadas por la ull.e
clave secreta de “.”
s?
- Clave pública de .es
ll.e
- Servidores del dominio ull.es
u
w.
ww
firmados por la clave secreta de “.es”
- Firma de la clave pública de esos
servidores firmadas por la clave
Clave pública de “.” secreta de “.es”
DNS Seguro: DNSSEC
Si toda la cadena está asegurada, podemos
garantizar la identidad de la máquina a la que
nos queremos conectar.
Comprobación online: dnsviz.net
Otras funcionalidades: ssh
Cuando nos conectamos por ssh a una
máquina, ésta nos envía el “fingerprint” de su
clave pública.
● Necesitamos pedirle al administrador de la
máquina la clave pública para poder
comparar
● Con DNS se pueden introducir nuevos
registros con los “fingerprints” de las
máquinas → Registros SSHFP
● Sólo es eficiente cuando DNS usa DNSSEC
Herramientas para DNS
Existen dos herramientas estándar para la
depuración DNS: dig y nslookup
Ejemplos de dig:
dig ull.es ANY
● Por tipo de registro:
dig ull.es MX
● Ver una sección específica de los
resultados
dig ull.es +noall +answer
● Especificar servidor de nombres:
dig @8.8.8.8 ull.es
Herramientas para DNS
Freeipa incluye su propia herramienta de
depuración DNS.
Ejemplos:
● Mostrar todos los registros de una zona:
ipa dnsrecord-find prueba.home.
● Mostrar información de un registro concreto:
ipa dnsrecord-show prueba.home. cliente1