PROTOCOLO DNS
PROTOCOLO DNS
PROTOCOLO DNS
• Cada uno de los cuales no puede ser nulo y con una longitud máxima de 63.
• Nombres relativos, necesitamos conocer el contexto del dominio superior para saber a qué
nombre se hace referencia exactamente
• Nombres absolutos, nombre formado por todas las partes separadas por puntos desde el
nodo correspondiente hasta el dominio raíz. A estos se les llaman nombres de dominios
completos FQDN
FQDN(Full Qualified Domain Name)
• Nombre de dominio completamente cualificado está formado por el
conjunto de nombres que forman la trayectoria desde ese notdo
hasta el nodo raíz.
• Acaban en . (dominio raíz) que suele omitirse salvo en los mapas DNS
• Tiene una longitud máxima de 255 y alguna restricción como el no uso del
carácter ñ
• El nombre de nodo se identifica de forma única dentro de la jerarquía que
genera el árbol de nombres de dominio. No importa el número de interfaces
de red que tenga.
• Existe un límite en el número de niveles cerca de 127
Dominio
• Está formado por el espacio de nombres que comparten el mismo
dominio de primer nivel y segundo nivel.
• Es un subárbol del espacio, es decir, un nodo con todos los nodos por
debajo de él. El dominio contiene máquinas y otros
dominios llamados subdominios.
Uso de los dominios
• Lo habitual es usar un dominio para nombrar a un conjunto de host
y/o subdominios que se agrupan según algún criterio ( misma red,
misma empresa, misma localización, etc) aunque no siempre es así.
Zonas
• Los servidores DNS mantienen información relativa a los dominios,
esa información almacenada constituye una zona, que está definida
por un conjunto de dominios y/o subdominios.
• Una zona no es más que un archivo que se almacena en un servidor
DNS y que contiene una parte de toda la información del espacio de
nombres DNS.
• Cuando un servidor DNS contiene una zona se dice que es
autorizado para esa zona.
• Un servidor DNS puede tener autoridad sobre varias zonas
Zona vs Dominio
• Una zona no es lo mismo que un dominio.
• Un dominio es un subárbol del espacio de nombres de dominio. Los
datos asociados a los nombres de un dominio pueden
estar almacenados en una o varias zonas distribuidas en uno o varios
servidores DNS
Zona y Dominio
Tipos de Zonas según el tipo de búsqueda
Para que exista una zona secundaria debe existir una primaria. La zona primaria entrega la información a la zona
secundaria mediante el proceso de transferencia de zona.
Un servidor puede contener tanto zonas primarias como zonas secundarias.
Dominio raíz
• Tiene nombre nulo, se representa por .
• La zona definida como raíz de todos los dominios de internet está
gestionada por varios servidores de ISC (Internet System Consotium).
Dichos servidores están repartidos en varios lugares del mundo lo que
permite repartir la carga de trabajo entre ellos.
Administración de los nombres de dominio
en Internet
• ICAAN (Internet Corporation forAssigned Names and Numbers) es una
organización sin ánimo de lucro que tiene el objetivo de garantizar
que Internet es estable, operativa y segura.
• Se encarga entre otras funciones de administrar el dominio raíz y de
mantener un registro de los dominios de nivel superior (TLD)
existentes
• https://www.iana.org/domains/root/servers
TLD (Top Level Domain)
En la estructura del espacio de nombres se encuentran bajo el raiz.
Contienen información de los servidores de dominio de segundo nivel
dependientes del dominio.
De la administración de cada dominio TLD se encarga una organización
que cuenta con varios servidores.
Clasificación de los TLD desde un punto
administrativo. TODOS SON DOMINIOS DE NIVEL 1
TLD
sTLD uTLD
iTLD
gTLD, generic TLD
• También se conocen como dominios genéricos
• Incluyen 3 caracteres o más
• Pueden tener un propósito general o estar restringidos a un uso
específico.
• Los dominios genéricos son los más utilizados y por lo tanto los más
sencillos de registrar.
• Inicialmente se establecieron estos 6, aunque actualmente hay
muchos
.com .net .org
.int .mil .edu
GTLD se clasifican en : sTLD (sponsored TLD)
iTLD
sTLD se clasifican en : iTLD
https://www.nic.es/sgnd/dominio/publicInformacionDominios.action
Registro de nombres de dominio
Delegación
• Consiste en que la organización que administra un dominio cede la
administración de uno o varios o todos sus subdominios a otras
organizaciones
• Es un procedimiento que puede ser recursivo
• Si hay cesión no es necesario informar al nivel superior.
Lo ideal es que los servidores DNS de una zona estén ubicados en redes y
localizaciones diferentes para evitar que un problema ( eléctrico, denegación de
servicio, etc) les afecte simultáneamente y deje sin servicio DNS a dicha zona.
3
6
Consultas Recursivas.
Cuando un cliente formula una pregunta recursiva a un servidor DNS, éste debe intentar
por todos los medios resolverla aunque para ello tenga que preguntar a otros servidores.
Esta es la forma de interrogación más frecuente.
3
5
• https://www.iana.org/domains/root
• https://www.internic.net/domain/named.root fichero que contiene la
información que deben saber los servidores DNS que necesitan
conocer cuáles son los servidores raíz.
Transferencia de zona
• Es el proceso por el que se obtiene el fichero de zona de otros
servidores DNS autorizados para esas zonas.
• El objetivo de este proceso es que todos los servidores autorizados
para una zona tengan la misma información.
• Este proceso es una fuente de amenazas de seguridad puesto que una
fuente maliciosa puede suplantar identidad y tergiversar la
información almacenada. Para evitar este problema es importante
que los DNS que actúen como esclavo solo acepten transferencias de
zonas de fuentes conocidas.
Transferencia de zona completa (AXFR)
• Es la petición original
• Se realiza desde un servidor esclavo y es una petición de transferencia
completa de zona
Transferencias de zona incrementales(IXFR)
• Para evitar sobrecargar la red se establece este tipo de transferencia
• La comienza un servidor maestro y este envía sólo los registros que
han cambiado desde la última transferencia de zona
Proceso de transferencia de zona
• Se puede iniciar de dos maneras
• Pregunta el esclavo al iniciarse y después cada cierto tiempo de
forma periódica
• El servidor maestro notifica que se han producido cambios en sus
archivos de zona
El servidor esclavo pregunta. El original
1. Cuando se inicia o cada cierto tiempo (refresh del registro SOA)
solicita al maestro su SOA.
2. El servidor maestro responde con el registro SOA
3. Esclavo compara las versiones del registro SOA
4. Si las versiones son distintas ( mas reciente el servidor maestro)
entonces el esclavo está desactualizado. Si coinciden las versiones no
continua el proceso.
5. Envía una petición AXFR
6. El maestro envía la información COMPLETA de zona actualizada
El servidor maestro notifica (NOTIFY)
1. Se produce un cambio en la zona maestra, el servidor maestro avisa
a los esclavos enviando un mensaje NOTIFY
2. El esclavo debe solicitar el registro SOA al maestro
3. El maestro envía el registro SOA
4. El esclavo compara los números de serie de los registros SOA.
5. Si son distintos, debo solicitar la transferencia del fichero de zona o
bien por AXFR (completa) o bien por IXFR)incremental)
6. El servidor maestro envía los datos solicitados.
Cliente DNS (resolvers o resolutores)
• Programas que realizan preguntas a los servidores de nombres y
procesan las respuestas para ofrecer la información a los usuarios y/o
aplicaciones que los invocan.
Protocolo DNS
• Conjunto de normas y reglas en base a las cuales dialogan los clientes
y los servidores DNS
HEADER Especifica cuales son las secciones presentes, el tipo de mensaje y otros
campos
QUESTION Campos que definen una consulta a un servidor de nombres
ANSWER RRs que responden a la consulta
AUTHORITY RRs que apuntan a los servidores de nombre autoritativos
ADDITIONAL RRss que contienen información adicional
Base de datos DNS
• Es una base de datos distribuida y redundante que almacena
información sobre los nombres de dominio. Esta base de datos se
organiza en zonas que almacenan la información en lo que se conoce
como registros de recursos (RR, Resource Records)
Registros de recursos
• Formato general
NombreDeDominio [TTL] Clase TIPO TIPO-Dato
Record
subdominio
• Se han añadido estos registros en la zona padre.
• Si no lo definimos bien podemos perder zona de
nombre y dejarla inaccesible
Delegación
• El servidor DNS del subdominio (en el que se delega) no se encuentra
en el subdominio
• Se añade el registro NS pero no hace falta el registro A
Funcionamiento del servicio DNS
• Basado en el modelo cliente/servidor
• Caché y TTL
• Recursividad y Caché
Componentes
del servicio
DNS
Resolución inversa
• Preguntamos por el nombre asociado a una IP
• Se usa para resolver problemas de red, detectar spam en el correo,
seguir una traza, conocer los nombres que aloja un servidor hosting
DNS
• Configurar el servidor DHCP
DHCP
• Configurar el servidor DNS para que permita
actualizaciones del servidor DHCP
Ampliamos
DNSMasq
• Este paquete Linux permite instalar un servidor DNS y además
dispone de servidor DHCP que permite resolver los nombres de los
equipos a los que les ha asignado dirección IP dinámica
DNS dinámico en Internet
• La IP del router que nos da a acceso a internet es asignada por un
DHCP, salvo que tengamos una IP fija contratada.
• Si quiero publicar un servidor web, ¿qué ocurre cuando cambia la IP?
Ya que le hemos asignado una IP, la que teníamos en ese momento.
• Debemos informar de ese cambio cuando se produzca
• Existen web que permiten registrar un nombre DNS y actualizar su
dirección IP en tiempo real. (DynDNS, No-ip, EasyDNS)
• Actualización dinámica de cliente DNS
Servidores DNS y seguridad
• Una regla básica de seguridad es desplegar solo los servicios mínimos
necesarios para cumplir los objetivos deseados.
• Esta es una posición idealista que no siempre se puede cumplir.
• Las configuraciones mixtas pueden provocar un mayor riesgo de
seguridad pese a las medidas de seguridad que se puedan tomar
DNS SEC
(Domain Name System Security Extensions)
• Añade una capa de seguridad adicional a los servidores DNS de un
dominio.
• Gracias a ello se previenen una gran cantidad de posibles actividades
maliciosas (man in the middle, envenenamiento de cache).
• Proporciona integridad de datos y del origen de los mismos, pero no
confidencialidad, podemos saber cuales son las consultas DNS
realizadas.
• DNSSEC utiliza clave pública al utilizarlo se añaden firmas digitales en
cada una de las partes implicadas
• La clave aportada por el registro DNSKEY sirve para verificar la firma
de los registros RRSIG garantizando que no hay un servidor en medio
suplantando su identidad