Hoy en RedesZone os vamos a hablar sobre los registros DNS, qué son, para qué sirven y, sobre todo, despejar todas las dudas que tienen muchos usuarios al respecto. Lo primero que debemos saber es que los registros DNS son archivos de mapeo o sistemas, que le indican a un servidor DNS a qué dirección IP está asociado un dominio particular.
Sin embargo, si no tienes mucha idea sobre el tema, os vamos a explicar primero qué es el DNS, para posteriormente hablar sobre los registros del mismo, y que no haya ninguna duda al respecto.
Qué es el DNS
En lugar de introducir la dirección IP de un servidor web que sería más difícil de recordar, introducimos el nombre del sitio web, y automáticamente nos muestra nuestro navegador el sitio web. Esto ocurre porque cuando nosotros introducimos en el navegador el nombre del sitio web, el propio navegador consulta con el servidor DNS configurado en el sistema operativo, a qué dirección IP pública corresponde ese nombre web que hemos escrito.
También tenemos que tener claro que no sólo sirve para esto únicamente, sino que también les indican a los servidores DNS cómo manejar las solicitudes que se envían a cada nombre de dominio. Es decir, un administrador de un servidor DNS, puede indicar que el nombre que hemos introducido en el navegador y consulta en el servidor DNS, que se redirija a la IP que desee el administrador. Esto se usa mucho en colegios y empresas para prohibir el acceso a ciertos sitios web.
Tipos de DNS
Dentro de los DNS, nos vamos a poder encontrar tres versiones diferentes, estas son:
- DNS Recursivo: Este se encarga de realizar las búsquedas de las direcciones Ip correspondientes al nombre de un host. Se trata del tipo de DNS más común, y se utiliza en la gran mayoría de los hogares y empresas. Los servidores DNS recursivos, se encargan de seguir todas las consultas, hasta el punto donde encuentran la dirección IP correspondiente a esa consulta. Una vez localizada, trata de resolverla para mostrar el sitio.
- DNS Autoritativo: Este tipo de DNS, es el apartado que contiene la información definitiva sobre el dominio en cuestión. Es el encargado de das la resolución a las consultas que se hacen sobre él. Todos los servidores autoritativos, son los que tienen almacenada toda esa información sobre los nombres del host, y las direcciones IP correspondientes.
- DNS Raíz: Se trata del apartado que proporciona toda la lista de servidores DNS autoritativos para los dominios concretos. Es el primer punto de encuentro que se establece con el sistema de nombres de dominio, y también se encarga de proporcionar toda la información para encontrar los servidores DNS autoritativos de un dominio concreto.
En resumen, tenemos el DNS recursivo, que se encarga de realizar las búsquedas de las direcciones IP. El DNS autoritativo que almacena toda la información sobre los nombres host y direcciones IP. Y por último el DNS raíz, que se encarga de proporcionar la lista de servidores para un dominio en particular. Cada uno de los tipos de DNS, tiene una función importante en los sistemas de nombres de dominio, y nos permite disponer de la traducción necesaria de nombres de host en direcciones IP en Internet. Por lo cual, todos sin imprescindibles en un proceso de comunicación.
Cómo conocer el DNS de una web
Ahora que ya sabes que una página web no funciona por su nombre, sino que va asociada a una dirección IP, puede que tengas curiosidad por saber cuál ese número. Para ello existen muchas páginas que nos ayudan a conseguirlo, aunque también podríamos de forma manual, por nuestra cuenta, sin embargo, os vamos a dejar esta, donde podréis escribir la URL de cualquier sitio, y automáticamente os dará la información sobre ese lugar.
Si posteriormente pegáis esa IP en vuestro navegador, accederá a la web de la misma manera que escribiendo el nombre completo de la misma. ¿Mágico verdad?
Registros DNS
Los registros DNS son diferentes cadenas de letras que se utilizan para indicar ciertas acciones al servidor DNS. Estas letras también son conocidas como sintaxis de DNS. A continuación, veremos una lista de las diferentes sintaxis de DNS que existen:
- A: Cuando vemos el registro “A”, este hace referencia a la dirección IPv4 de un servidor web y es el más típico de encontrarnos en los servidores DNS. Gracias a estos, los usuarios podemos introducir un nombre de dominio en el navegador que utilicemos, y hacer que como cliente se envíe una solicitud HTTP a la dirección IP que corresponda. Como el tamaño de las direcciones IPv4 es de 4 bytes, el valor rdlenght, siempre será de 4.
- AAAA: Cuando vemos el registro “AAAA”, este hace referencia a la dirección IPv6 de un host. Es igual que el registro “A”, pero refiriéndose a una dirección IPv6 y no IPv4. En este caso, las direcciones IPv6 necesitan de 128 bits, por lo cual el valor rdlenght también será fijo. Por este motivo se denomina AAAA, siendo cuatro veces más larga que A.
- CNAME: Cuando vemos el registro “CNAME”, este hace referencia a un alias de otro dominio. Es decir, su función es hacer que un dominio sea un alias de otro dominio. Normalmente este tipo de registros se utilizan para asociar nuevos subdominios con dominios ya existentes del registro A.
- MX: Cuando vemos el registro “MX”, este hace referencia a una lista de servidor de intercambio de correo que se debe utilizar para el dominio. Funciona de forma que se definen uno o más servidores de correo electrónico. Con estos podemos compensar fallos estableciendo nuevos niveles de prioridad, por ejemplo.
- PTR: Cuando vemos el registro “PTR”, este hace referencia a un punto de terminación de red. Es decir, que la sintaxis de DNS es la responsable del mapeo de una dirección IPv4 para el CNAME en el alojamiento.
- NS: Cuando vemos el registro “NS”, este hace referencia a que servidor de nombres es el autorizado para el dominio. Por lo general, se deberían tener registros para el servidor de nombres principales, y a mayores secundarios para nuestro dominio.
- SOA: Cuando vemos el registro “SOA”, este hace referencia al comienzo de autoridad. Este registro es uno de los registros DNS más importantes porque guarda información esencial como la fecha de la última actualización del dominio, otros cambios y actividades. En este tipo de transferencias se copian archivos en otros servidores con la finalidad de evitar fallos. Esto también controla la propagación del archivo original.
- SRV: Cuando vemos el registro “SRV”, este hace referencia a un servicio. Es decir, se utiliza para la definición de un servicio TCP en el que opere en el dominio.
- TXT: Cuando vemos el registro “TXT”, este hace referencia a un texto. Es decir, permite que los administradores inserten texto en el registro DNS. Esto se utiliza para dejar notas sobre información del dominio.
- SPF: Cuando vemos el registro “SPF”, este hace referencia a qué servidores están autorizados para enviar correos electrónicos con nuestro dominio.
- LOC: Cuando vemos el registro “LOC”, este hace referencia a la ubicación física del servidor. Es decir, este tipo de registros se utilizan para indicar la latitud, longitud y altura sobre el nivel de mar de la ubicación física del servidor.
- MB: Cuando vemos el registro “MB”, este hace referencia al nombre del dominio de correo electrónico. Actualmente este registro es experimental.
- MG: Cuando vemos el registro “MG”, este hace referencia a los miembros de un grupo de correo electrónico. Actualmente este registro es experimental.
- MR: Cuando vemos el registro “MR”, este hace referencia al renombre de un dominio de correo electrónico. Actualmente este registro es experimental.
- NULL: Cuando vemos el registro “NULL”, este hace referencia a recurso nulo. Actualmente este registro es experimental.
- HINFO: Cuando vemos el registro “HINFO”, este hace referencia a los detalles sobre el hardware y el software del host.
- MINFO: Cuando vemos el registro “MINFO”, este hace referencia a la información sobre un buzón de correo electrónico. Actualmente este registro es experimental.
- RP: Cuando vemos el registro “RP”, este hace referencia a información sobre los encargados del dominio.
- ANY: Cuando vemos el tipo de consulta “ANY”, este hace referencia a toda la información de todos los tipos que exista.
- AFSDB: Cuando vemos el registro “AFDSB”, este está pensado especialmente para clientes AFS.
- NAPTR: Cuando vemos el registro “NAPTR”, este hace referencia a una ampliación del registro A que permite usar patrones de búsqueda.
- KX: Cuando vemos el registro “KX”, este hace referencia a Key Exchanger y permite gestionar claves criptográficas.
- CERT: Cuando vemos el registro “CERT”, este registro guarda certificados.
- DNAME: Cuando vemos el registro “DNAME”, este indica alias para dominios enteros.
- OPT: Cuando vemos el registro “OPT”, este hace referencia a un pseudo registro del ámbito de los mecanismos de extensión de DNS más conocido como EDNS.
- APL: Cuando vemos el registro “APL”, este hace referencia a “Address Prefix List” y sirve para enumerar rangos de direcciones en formato CIDR.
- DS: Cuando vemos el registro “DS”, este hace referencia a “Delegation Signer” y sirve para identificar zonas con firma DNSSEC.
- SSHFP: Cuando vemos el registro “SSHFP”, este hace referencia a “SSH Public Key Fingerprint” y muestra la huella digital para las claves SSH.
- IPSECKEY: Cuando vemos el registro “IPSECKEY”, este contiene una clave para IPsec.
- RRSIG: Cuando vemos el registro “RRSIG”, este alberga una firma digital para DNSSEC.
- NSEC: Cuando vemos el registro “NSEC”, este interconecta zonas firmadas en DNSSEC.
- DNSKEY DNS: Cuando vemos el registro “DNSKEYDNS”, este contiene una clave pública para DNSSEC.
- DHCID: Cuando vemos el registro “DHCID”, este enlaza nombres de dominio con clientes DHCP.
- TLSA: Cuando vemos el registro “TLSA”, este registro establece un enlace conocido como TLSA con un nombre de dominio.
- SMIMEA: Cuando vemos el registro “SMIMEA”, este registro establece un enlace conocido como S/MIME con un nombre de dominio.
- CDS: Cuando vemos el registro “CDS”, este es una copia de un registro DS.
- CDNSKEY: Cuando vemos el registro “CDNSKEY”, este es una copia de un registro DNSKEY.
- OPENPGPKEY: Cuando vemos el registro “OPENPGKEY”, este muestra claves públicas.
- TKEY: Cuando vemos el registro “TKEY”, este permite el intercambio de claves secretas.
- TSIG: Cuando vemos el registro “TSIG”, este sirve para la autenticación.
- URI: Cuando vemos el registro “URI”, este muestra la asignación de nombres de host a las URL.
- CAA: Cuando vemos el registro “CAA”, este especifica las posibles autoridades de certificación (CA) para un dominio.
Pero cuando hablamos de este tipo de registros, hay otros términos que debemos tener en cuenta y conocer, como por ejemplo.
- Tiempo de vida (TTL): Esto se trata de un valor el cual determina el tiempo que transcurre antes de que se apliquen los cambios realizados al realizar la petición del registro. Cada registro DNS de un dominio, dispone de un valor TTL, el cual determina cuánto se tardará en aplicar cualquier cambio. Si cambiamos estos valores, afectará a toda intención de cambio que hagamos posteriormente. Lo más recomendable por Google, por ejemplo, es establecer un TTL de 3600, lo cual indicará a los servidores de Internet, que revisen si se realizaron cambios cada hora. Tener un TTL más corto solo se podrá aplicar cuando el periodo anterior haya vencido, de esta forma la próxima vez que procedamos a actualizar un registro, este cambio tardará una hora en aplicarse si seguimos las recomendaciones de Google.
- Localizador uniforme de Recursos (URL): Se trata de la dirección de un recurso en Internet.
Falsificación de registros DNS
La respuesta rápida, es que sí. Se pueden falsificar los registros DNS. Esto es un acto conocido como DNS Spoofing, o DNS Cache Poisoning. El proceso consiste en introducir datos falsos en la caché del DNS de un servidor. De forma que un nombre de dominio se puede resolver con una dirección IP incorrecta y dirigida por el atacante. Esto puede hacer que se permita una serie de ataques, como la interceptación de tráfico, ataques man-in-the-middle, o incluso phishing. Esto se basa en el principio de que los servidores DNS son inherentemente confiables. Cuando uno de ellos recibe una respuesta a una consulta, no tiene forma de verificar la autenticidad de esa respuesta. Por lo cual, si el atacante puede interceptar, puede proporcionar respuestas falsas. En cambio, en el servidor DNS aparecerán como válidas.
Hay muchas formas en las cuales el atacante podría llevar a cabo un ataque de este estilo. Una es mediante el uso de un servidor DNS malintencionado. Si este puede engañar a un sistema para que haga uso de un servidor DNS no legítimo, puede controlar todas las respuestas DNS que se reciben en el sistema. Otra táctica muy común es el envenenamiento. Esto implica tener que engañar a un servidor DNS para que almacene las respuestas faltas en la caché. Luego una vez el registro falsificado está en la caché, todas las consultas que se realicen a ese dominio serán respondidas con direcciones IP falsificadas.
Es importante saber que un ataque de DNS Spoofing es muy posible. Existen diferentes medidas de seguridad, las cuales están diseñadas para prevenir estos ataques. Como por ejemplo DNSSEC, que es un conjunto de extensiones del protocolo DNS que añade estas funciones de seguridad adicional a las consultas DNS que se realizan. Donde se incluye la verificación de la autenticidad de las respuestas DNS. Pero a pesar de su eficacia, la adopción de DNSSEC ha sido muy lenta. Esto es porque resulta compleja, y tiene la necesidad de realizar cambios significativos en las infraestructuras.
Después de ver qué es un registro DNS, para qué sirve, y en qué nos puede ayudar, tenemos que tener claro que los diferentes tipos de registro DNS, no tienen que preocupar al usuario final, sino que quien tiene que gestionar todos estos registros y algunos más que no salen en la lista, es el administrador del servidor DNS. Este administrador debe conocer muy bien para qué sirve cada registro DNS y qué puede hacer o no hacer con cada registro. Para los usuarios finales, tenéis que saber que normalmente los servidores DNS si no los habéis cambiado, son los del ISP que os ofrece internet. Si tenéis alguna duda, dejarnos un comentario y os la resolveremos.
¿Cómo comprobar la falsificación?
Ya hemos visto que se pueden falsificar los registros de DNS, llevándonos a casos de phishing, es por ello que siempre que nos llegue un email con una dirección web, o simplemente la encontremos por otro medio, no tenemos que fiarnos de ella, ya que podrían estar realizando ataques bastante sofisticados.
Es por ello que siempre tendremos que verificar la URL a la que estamos conectados (y no la que previamente clickeamos), así como comprobar y analizar si lo que nos piden es normal, o raro, es decir, usar el sentido común.
La mayor parte de estos ataques están creados para estafar, y por ello suelen relacionarse con cuentas bancarias. No des ningún dato por internet, pese a creer estar en las webs oficiales, ya que podrían conseguir su objetivo. Siempre ten precaución, y ante cualquier duda llama a tu banco o lugar desde el que te están solicitando el acceso.
Desventajas de los registros DNS
Pese a que poder recordar un dominio es mucho más sencillo que una IP, y, por tanto, es una gran ventaja, también existen desventajas en el uso de estos registros, que, pese a no ser muy graves, hay que conocerlas, aunque solo sea por curiosidad:
- Tiempo de propagación: Los cambios en los registros DNS no son inmediatos y pueden tardar desde unos minutos hasta 48 horas en propagarse por todo Internet. Esto puede llegar a ser un problema para los usuarios, pues podrían quedarse sin servicio hasta que esta configuración termine de completarse.
- Errores en la configuración: La configuración incorrecta de los registros DNS puede resultar en la inaccesibilidad del sitio web o servicio. Un simple error tipográfico o una mala configuración de los registros puede causar problemas importantes.
- Dependencia de terceros: Muchas organizaciones dependen de proveedores externos de DNS, lo que significa que no tienen control total sobre su infraestructura DNS. ¿Qué quiere decir? Que si, por ejemplo, el proveedor tiene una interrupción, el servicio del cliente también se verá afectado, y por tanto, no podremos hacer nada para solucionarlo.
- Coste: Esto no es gratuito, y, dependiendo del nivel de DNS contratado, tendrá un coste mayor o menor, ya que podremos optar por servicios de DNS premium con características avanzadas como alta disponibilidad, mitigación de DDoS, y resolución rápida, entre otras funciones.
Tendríamos otros pequeños inconvenientes, sin embargo, estos serían los principales a destacar, que si bien, como decíamos, no son super importantes, hay que tenerlos en cuenta, ya que no todos serían ventajas.
Si tienes cualquier duda sobre los registros DNS, o algo no te ha quedado claro, puedes dejarnos un comentario e intentaremos ayudarte.