¿Qué es un servidor DNS y para qué sirve?
¿Qué es un servidor DNS?
Un servidor DNS responde a las siglas Domain Name System, o Sistema de Nombres de Dominio, y nos permite relacionar una dirección escrita, como sería geeknetic.es, a una dirección IP que puede ser fija o dinámica, dependiendo del registro que tengamos configurado y el software que soporte a dicha configuración.
Esto permite que la navegación por Internet sea muchísimo más fácil de lo que en su día lo era, donde, por un lado, como usuarios finales, teníamos que recordar las direcciones IP de los sitios a los que nos queríamos dirigir, y, por otro lado, poco después, la existencia de un archivo centralizado denominado HOSTS, que hacía las veces de servidor DNS, junto al enorme crecimiento de Internet, se tornaba casi imposible de mantener.
A raíz de todas estas complicaciones, en 1984 se emitía el RFC 920, ratificando lo que sería la primera definición de un servidor DNS en el RFC 881 y que con el paso de los años ha evolucionado en lo que hoy día conocemos como un servidor DNS moderno, añadiéndose características como el soporte a cambios dinámicos en el RFC 2136, soporte para nombres de dominio internacionalizados en los RFC 5890 y RFC 5891, y mecanismos de extensión de DNS en el RFC 2671.
En definitiva, los servidores DNS llegaron para cambiar la forma de funcionar de Internet y permitir su expansión, algo que podemos ver a día de hoy como ha sido extremadamente grande y potente, probablemente más de lo que nadie pudiese imaginar cuando se introdujeron los servidores DNS como solución a la dificultad del mantenimiento del archivo HOSTS de Internet, aunque como veremos más adelante, también introducían algunos problemas de seguridad que serían corregidos en otras RFC, mientras que otros problemas simplemente confían en engañar al usuario final.
¿Para qué sirve un servidor DNS?
De lo anteriormente expuesto se puede deducir para qué sirve exactamente un servidor DNS, pero, aun así, existen varios detalles que tienen que ver con los mecanismos de funcionamiento de los mismos. Sin embargo, a efectos prácticos, un servidor DNS sirve para traducir un nombre de dominio conocido para la red de servidores DNS de alrededor del mundo a la dirección IP que el navegador necesita conectarse, de modo que excepto en los casos en los que el host lo evite activamente, podríamos sustituir el nombre de dominio por la dirección IP del servidor y debería funcionar.
Del mismo modo, los servidores DNS no son solamente útiles para redirigir un nombre de dominio a una página web, sino para habilitar el propio funcionamiento de los servidores de correo electrónico a través de los registros MX (Mail Exchange), de modo que se asocia un nombre de dominio a una lista de servidores de intercambio de correo para ese dominio, habilitando así también sistemas de balanceo de carga y prioridad de uso de uno o más servicios de correo.
Sin embargo, también sirven, desafortunadamente, para crear ataques que no hubiesen sido posibles con el –inviable—uso de direcciones IP “a pelo”, y es que, por ejemplo, los ataques homográficos permiten la sustitución de unos caracteres por otros de modo que a simple vista no podamos distinguirlos, como ocurriría entre Wikipedia.org y Wikipedia.org, donde si bien a simple vista no podemos distinguirlo, cuentan con diferencias en las “e” y “a”, sustituyendo las letras latinas por caracteres cirílicos y, por tanto, llevan a hosts distintos.
En cualquier caso, estos ataques confían más en el lado usuario, dado que tanto los servidores DNS como los navegadores y las propias páginas web suelen tener mecanismos que evitan que caigamos en este tipo de trampas, pero al no ser infalibles, siempre tenemos que estar al tanto cuando nos encontremos navegando por Internet y veamos que algún aspecto de nuestra sesión no nos encaja por completo.