DNS: qué es y cómo funciona
Publicado: 2014-08-14El Sistema de nombres de dominio, o DNS, es uno de los pilares más importantes de Internet. Es responsable de nuestra capacidad para conectarnos a servidores sin tener que recordar cadenas de números largas y engorrosas. Como diseñador o desarrollador, es importante comprender qué es el DNS, cómo funciona y cómo usarlo.
¿Qué es DNS?

En la década de 1970, había tan pocas computadoras conectadas en red que todos podían mantener fácilmente una lista manual de todas las demás computadoras. En los días de ARPANET (un predecesor de Internet), si se compraba una nueva computadora y se agregaba a la red, el propietario simplemente se lo decía a todos los demás en ARPANET, quienes simplemente agregaban esa nueva computadora a su lista. Este sistema funcionó bien cuando solo había unas pocas docenas de computadoras conectadas entre sí, pero se degradó rápidamente a medida que la informática se volvió más barata y más accesible para el público. En los términos actuales, esto sería como tener que notificar a todo el mundo cada vez que se lanza un nuevo sitio web o servicio.
A principios de los años 80, el DNS se creó para resolver este problema al mantener una lista autorizada de dominios y las computadoras a las que apuntan. ¿Pero cómo, exactamente, Cómo funciona eso? En términos técnicos, DNS es un sistema que utilizan casi todos los dispositivos habilitados para red para resolver nombres de dominio con direcciones IP asociadas. Piense en ello como la guía telefónica de Internet.
Cuando ingresa una dirección web como http://www.getflywheel.com en su navegador web, su computadora no sabe automáticamente a dónde ir. Requiere una dirección IP para conectarse, pero le proporcionó un nombre de dominio, que es solo una cadena de letras. Los dominios hacen que sea mucho más fácil para los humanos recordar dónde se encuentran los sitios web, pero no son lo que necesita una computadora para establecer una conexión. En cambio, su computadora contacta a un servidor DNS y le pide la dirección IP de ese sitio web. El servidor DNS responde y le dice a su computadora "http://www.getflywheel.com está ubicado en 192.241.128.208". Su computadora toma esa dirección IP del servidor DNS y la usa para conectarse a la dirección IP, lo que a su vez abre el sitio web de Flywheel.

¿Cómo se administran y configuran los registros DNS?
El DNS se establece a través de registros DNS, que contienen información como a qué dirección IP debe apuntar un dominio, subdominios, configuraciones de correo electrónico e incluso texto arbitrario. Una vez que se compra un dominio, el propietario especifica los servidores de nombres autorizados para el dominio. Estos servidores de nombres controlan los registros DNS para el dominio, que son tomados por otros servidores DNS y propagados por todo Internet. Generalmente, si está configurando sus propios registros DNS, sabrá la dirección IP de su sitio web. Por ejemplo, Flywheel le proporcionará una dirección IP a la que puede apuntar un registro de nombre A.
Hay muchos miles de servidores DNS en todo el mundo y todos se sincronizan para mantener un registro de dónde está todo. Sin embargo, no todos los servidores DNS son iguales.
La estructura de los servidores DNS parece un árbol al revés. Hay 13 servidores raíz o maestros que forman el tronco de este árbol. Son la última copia maestra de DNS. Todos los datos de DNS deben provenir de un servidor raíz o de un servidor que se haya puesto en contacto previamente con un servidor raíz y haya obtenido los datos. Los servidores raíz conforman lo que se llama la zona raíz , o la zona DNS con mayor autoridad.

Más allá de la zona raíz, hay subzonas que contienen dominios. Cada dominio de nivel superior tiene su propio registro de zona, que se divide en dominios individuales, como http://www.getflywheel.com, que se conocen como dominios de segundo nivel.
Esto se está volviendo un poco técnico, así que veamos esto desde la perspectiva de nuestra analogía con el árbol. Con la zona raíz formando el tronco, cada dominio de nivel superior, como .com o .org, es una rama de ese tronco. Cada sitio web, como getflywheel.com, es una hoja que sobresale de esa rama. Esa pequeña hoja es el área en la que el propietario de un dominio tiene control de DNS. Cada rama sería un servidor de nombres individual, haciendo un seguimiento de las ramas y hojas que se derivan de ella.
Entonces, cuando una computadora solicita getflywheel.com, primero se comunica con un servidor raíz, que dice: “Está buscando un sitio web .com. Ve a hablar con el servidor de nombres .com, que se encuentra aquí”. Luego, su computadora recurre a la cadena hasta el servidor de nombres responsable de .com y le solicita más detalles. Su computadora se comunica con los servidores hasta que finalmente encuentra el servidor de nombres especificado por el propietario del dominio. Luego averigua la dirección IP asociada con el sitio web y se dirige a él. Su computadora atraviesa el árbol de servidores por las ramas hasta que finalmente llega a la hoja que contiene el destino final.

Nota: aunque oficialmente hay 13 servidores DNS raíz, todos menos dos están vinculados y distribuidos por separado a docenas de servidores idénticos a través de una tecnología de enrutamiento llamada anycast . Anycast permite que varios nodos existan como la misma entidad. Cuando un dispositivo se conecta a esa entidad, se conectará al nodo disponible más cercano en la red (esto es diferente a geocast , que se usa en CDN, por ejemplo, donde un dispositivo se conecta al servidor geográfico más cercano). Anycast permite que los servidores raíz se multipliquen y distribuyan en todo el mundo, equilibrando la carga, acelerando los tiempos de respuesta y evitando puntos únicos de falla.
Toda esta cadena de contacto con el servidor parece bastante engorrosa y agotadora cada vez que desea visitar un sitio web. Afortunadamente, el DNS tiene una gran cantidad de caché, lo que significa que las copias se guardan con frecuencia en las computadoras más cercanas a usted, lo que elimina la carga de los servidores raíz y hace que sus consultas se carguen más rápido. Muchos ISP, empresas, universidades e incluso su propia computadora mantendrán cachés de consultas de DNS recientes. Si está buscando, por ejemplo, google.com, es probable que su computadora ya tenga almacenada la dirección IP. Pero si está buscando un sitio web en el que nunca ha estado, es posible que alguien más en su vecindario o empresa ya haya estado allí, y la consulta y la información simplemente se almacenan en el servidor DNS de su ISP.
Sin DNS, cada uno de nosotros tendría que recordar o anotar la dirección IP de cada sitio web y computadora que nos gustaría visitar. Afortunadamente, DNS es una pieza de ingeniería increíblemente resistente, confiable e impresionante, que realiza un seguimiento de todos nuestros sitios web y nuestras comunicaciones para que no tengamos que hacerlo nosotros.
