Sistemas de nombres planos y jerárquicos 1 Sistemas de nombres = registros que relacionan nombres, pesudónimos o alias con unas direcciones IP. • Hace años, en 1983, las páginas web no existían y los servidores eran tan pocos que TODOS los host tenían la lista de nombres de dominio completa y la actualizaban diariamente. Se trataba de un sistema de nombres planos. • En el archivo hosts.txt o en hosts de Linux teníamos la lista de nombres. Hoy todavía podemos usarlo a nivel local (LAN) Sistemas de nombres planos y jerárquicos 1 • Ahora se hace imposible manejar los más de 50.000 nombres nuevos diarios y, por ello, se utiliza un sistema de gestión de forma distribuida (en millones de servidores DNS) y jerárquica. • El Domain Name System (DNS) es el servicio encargado de esta gestión, traduciendo un nombre en una dirección IP consultando la base de datos distribuida, conformada por todos los servidores DNS. Este sistema se denomina de nombres jerárquicos. • Los organismos que alquilan los nombres de dominio son: • A nivel internacional, los alquila Internet Corporation for Assigned Names and Numbers (ICANN). • En el caso de los .es los reparte nic.es, que forma parte de red.es y este, a su vez, del Gobierno de España. Espacio de nombres de dominio 2 • El espacio de nombres de dominio tiene una estructura de arbol invertido. • El nombre de un nodo es el trayecto completo de cada nodo de los niveles superiores, separado por puntos. • Los nombres de dominio son sucesiones de 2 a 5 grupos, de 1 a 63 caracteres, separados por un punto. • Tienen un nombre por cada nodo o host hasta el nodo raíz (nombre con 0 caracteres). Espacio de nombres de dominio 2 • El término FQDN (Fully Qualified Domain Name), o nombre de dominio completamente cualificado, define un nombre de dominio completo, es decir, incluye el nombre de una máquina o host y no de servicios. En total, el FQDN no debe exceder los 255 caracteres, que únicamente deben ser letras (exceptuando las letras no anglosajonas y con tildes), los dígitos del 0 al 9 y los guiones. • Un servidor DNS tiene registros de los nombres de dominio y de los servicios que tiene bajo su autoridad delegada y que por tanto pueden administrar y/o configurar directamente. • Nombres de dominio: • Nombres de servicios: • dccia.ua.es • ftp.ua.es • cpd.ua.es • www.ua.es • ua.es • Irc.ua.es Dominios genéricos 3 • gTLD: son los dominios genéricos de primer nivel, los llamados globales o internacionales. • Alquilables por todo el mundo: .com (compañías), .net (telecomunicaciones), .org (organizaciones), .info (información). • Alquilables cumpliendo unas restricciones: .biz (para empresas), .name (para nombres propios antonio.lopez.name), .pro (destinados a profesionales de diferentes sectores), .int (incluye organizaciones con tratados internacionales y organizaciones no gubernamentales con el estatus de “observadores” de las Naciones Unidas), .edu (universades e institutos, educación), .mil (para el departamento de defensa de los Estados Unidos, fue uno de los primeros en crearse), .gov (organismos gubernamentales de Estados Unidos), etc. Dominios genéricos 3 • sTLD: están patrocinados, promovidos por una fundación independiente o se obtienen pagando unos 50.000 dólares (más de 35.000 euros). Tenemos .aero (aeropuertos), .coop (sociedades cooperativas), .museum (museos), y los .travel (agencias de viajes). • mTLD: son los patrocinados para móviles, como .mobi. • lTLD: patrocinados para una lengua, como .cat para el catalán. • SLD: algunas autoridades crean un segundo nivel genérico, como España, Reino Unido o Colombia: .nom.es, .org.uk, .com.co, etc. • IDN: son conversiones de lenguas no latinas a ASCII. • Dominios de tercer nivel: son los subdominios, los que alquila una empresa, como el caso de: cocacola.com.uk. Dominios genéricos 3 • ccTLD: son dominios geográficos o country codes, están regulados por la norma ISO 3166-1 alpha-2, en la lengua materna están escritos en ASCII. • No debemos confundir los ccTLD con dominios lingüísticos, ya que, por ejemplo, existen muchas páginas en español en Alemania (como lapagina.de) y en Estados Unidos existen páginas en varias lenguas, sobre todo en inglés y español. Delegación 4 • Existe la posibilidad de delegar a un nivel inferior la administración y la configuración. • ICANN maneja la delegación de los gTLD y de los ccTLD. En España Red.es delega los dominios de segundo y tercer nivel, que a su vez pueden ser delegados a nivel local. • La delegación es una administración descendente. La autoridad superior puede delegar la administración, coordinando los resultados. Funcionamiento DNS 5.1.- Consultas DNS 5 Funcionamiento DNS 5.2.- Consultas recursivas e iterativas 5 Funcionamiento DNS 5.3.- Resolución inversa 5 Servidores de nombres 6.1.- Características 6
Los servidores de nombres son sistemas
informáticos que tienen instalado un software que permite administrar y consultar las bases de datos de nombres de dominio. Existen para Linux, Windows, Mac OS, etc. El programa que se utiliza con más frecuencia es BIND. Servidores de nombres 6.2.- Tipos. 6 Existen muchísimos tipos de servidores DNS, pero o son una combinación o se pueden resumir en estos tipos: Funcionan Un Es un Un servidor reenviador servidor con de autosuficiente, es el nombres mismo un servidor secundario software, dedonde Sistema pero espodremos no de • Primario (master). básicamente contienen actualizar, nombres delamodificar dominio base un servidor de (DNS) datos o añadir dede para respaldo. nombres una la red resolución No que de se de • Secundario (slave). mantiene nombres. dominio. utiliza paraDebemos Cuando lasreenviar versiones setener les consultas maestras realiza al menos DNS unadeuno para consulta, la sinombres nos han información estos delegado DNS externos a su una vezdeazona consultan zona, servidores o dominio, sinoa copias. los DNSservidores pero queLasenomayoría encuentran tiene DNS de • Cache (hint). los correspondientes, sentido fuerasitios desiusan lanored somos servidores interna. almacenando autoridad También secundarios delegada ladependiendo respuesta en de endel • Reenviador (forward). ubicaciones su ninguna propósito base de zona. del datos remotas servicio Si para tenemos oagilizar se para pueden varios disminuir la repetición se hacer hace el trabajo difícil de la del estas administración, redirecciones servidor peticionesPrimario. condicionales, pero en elcontestará futuro Obtienen dependiendo los el que datoshaya de del los servidores tardado de nombre menos primarios dominio tiemposolicitado. a través en las de pruebas una transferencia del cliente. de zona. Zonas DNS 7 • Las zonas DNS son un concepto importante en la infraestructura de DNS, ya que permiten separar lógicamente la gestión de dominio DNS. ¿Qué es una zona DNS?
• El espacio de nombres de dominio se particiona en zonas que se utilizan
para distribuir las tareas administrativas a diferentes grupos. • Cada zona engloba un espacio de nombres de dominio contiguo. Las zonas no pueden solaparse. • Existe un servidor de nombres primario por cada zona y posiblemente uno o más secundarios Zonas DNS 7 El servidor primario contiene la base de datos primaria para la zona. Todos los cambios sobre la estructura y nombres de una zona se realizan sobre el servidor primario. Los servidores secundarios mantienen una copia de la base de datos llamada base de datos secundaria. Mediante un procedimiento llamado transferencia de zona, los servidores secundarios actualizan periódicamente su base de datos mediante consultas al servidor primario Base de datos DNS 8.1.- Estructura 8 • La organización de las bases de datos en DNS no es tan simple como puede parecer. Lo habitual es que partiendo de un nombre de dominio, obtengamos una dirección IP, pero puedo tener otras necesidades, por ejemplo obtener una lista de servidores de nombres. ¿Qué pasa entonces? • En DNS la base de datos que tenemos se organiza en base a lo que se denominan Registros de recursos(RR). Por ejemplo el RR para un servidor web podría ser este:
www.mi-empresa.es. IN A 195.57.80.100
Con que indicariamos que la dirección IP de www.mi-empresa.sa es
195.79.80.100 Base de datos DNS 8.1.- Estructura 8 • Veamos exáctamente en qué consiste un RR: • Un nombre de dominio: la entrada que estoy buscando. Puede ser: ".es" o “www.mi-empresa-sa.es”. • Clase: indica clase de registro, pero solo nos interesa una: Internet, que se representa con "IN“. • Tipo: indica el tipo de registro, es decir, qué dato nos va a devolver. Puede tratarse de una dirección IPv4(A), una dirección IPv6(AAA), un servidor de nombres(NS). • Valor del TTL: campo que nos indica el tiempo de vida durante el cual esa entrada puede ser considerada válida, el tiempo durante el cual se almacena esta entrada en caché(Se expresa en segundos). • Datos: se trata de la respuesta que esperamos. Base de datos DNS 8.2.- Tipos de registros 8 En las bases de datos de nombres de dominio distribuidas lo más importante son los registros, ya que éstos contienen realmente la configuración para traducir tanto los nombres de dominio a direcciones IP como los pseudónimos, direccionamientos inversos, servicios distintos en un mismo servidor, etc. • A (dirección): este registro se usa para traducir nombres de dominio a direcciones IPv4. <nombre> IN A <Dirección_IP> Ejemplo: ldap.mi-empresa-sa.es. IN A 130.206.8.10 pc-dire IN A 130.206.7.200 En este ejemplo, la primera entrada hace referencia a un nombre FQDN(termina en ".") y hace que se corresponda "ldap.mi-empresa-sa.es." con la dirección IP 130.206.8.10. La segunda entrada no termina en "." y, por tanto, el servidor DNS la convertirá en "pc-dire.mi-empresa-sa.es." Base de datos DNS 8.2.- Tipos de registros 8 • AAAA: dependiendo de la versión se usa AAAA (menor que la versión 9.3.2 de BIND) o A6 para la IPV6. • CNAME (nombre canónico): estos registros se usan cuando quiero que varios nombres apunten al mismo ordenador. <nombre_alias> IN CNAME <nombre_verdadero> Nombre_alias hace referencia a ese segundo, tercer, cuarto... nombre que queremos que apunte el otro. Nombre_verdadero hace referencia al nombre real de ese ordenador, se debe corresponder con una entrada A. Ejemplo: pop3 IN CNAME ldap imap IN CNAME ldap smtp IN CNAME ldap Base de datos DNS 8.2.- Tipos de registros 8 • NS (servidor de nombres): Deben existir tantos registros NS como servidores de nombres hay para esa zona. El nombre que aprezca a la derecha será el que identifica a cada uno de los servidores. Estos servidores pueden estar dentro de la misma zona o fuera de esta. Ejemplo: mi-empresa-sa.es. IN NS dns1.mi-empresa-sa.es. mi-empresa-sa.es. IN NS dns2.mi-empresa-sa.es. mi-empresa-sa.es. IN NS dns.otro-sitio.com mi-empresa-sa.es. IN NS dns.otro-lugar.com Como puede verse, dos de los servidores están en otra zona e incluso puede estar fuera de España. Base de datos DNS 8.2.- Tipos de registros 8 • MX (registro de intercambio de correo): asocia un nombre de dominio a un servidor de intercambio de correo (SMTP, SSMTP, etc.) <nombre> IN MX <pri> <FQDN_Servidor> El campo <pri> indica la prioridad de este servidor, cuanto mas bajo sea este número, mayor prioridad. Ejemplo: mi-empresa-sa.es. IN MX 10 correo.mi-empresa-sa.es. mi-empresa-sa.es. IN MX 20 correo2.mi-empresa-sa.es. mi-empresa-sa.es. IN MX 30 smtp.otro-sitio.es. • PTR (puntero o registro inverso): traduce direcciones IP a nombres de dominio. • SOA (autoridad de la zona): proporciona información sobre la zona.