El sistema de nombres de dominio

Ya hablamos, quizás brevemente, del funcionamiento del protocolo TCP/IP, ahora vamos a discutir el funcionamiento de otro componente clave de internet. El sistema de nombres de dominio es una base de datos que permite convertir los números IP en nombres como www.strellis.com.ar. En inglés se dice "Domain Name System" o DNS.

¿Por qué DNS?

Para empezar, es muy difícil recordar los números IP de todas las páginas web que queremos visitar. Es como recordar números de teléfono. Nos acordaremos de dos o tres de memoria, pero para el resto necesitamos una agenda. Bueno, el sistema DNS vendría a ser la "Agenda de teléfonos" de internet.

n

Antiguamente, los números IP y sus correspondientes nombres se guardaban en un archivo de texto que se volvió muy grande con el paso del tiempo, a medida que se agregaban más y más computadoras a Intenet. Administrar ese archivo se volvió una tarea imposible y para solucionar ese problema, Paul Mockapetris inventó el sistema DNS en 1983.

Cómo funciona

Un nombre de dominio está formado por varias palabritas separadas por puntitos: por ejemplo el nombre de dominio de este sitio, www.strellis.com.ar. La palabra de más a la izquierda (www) se denomina nombre de Host, y el resto (strellis.com.ar), se llama dominio. A la derecha de todo casi nunca se pone pero hay un dominio especial llamado "dominio raíz". A partir de ahí yendo para la izquierda, se encuentra el dominio de nivel superior o "Top-level domain". Luego viene el resto del nombre, que puede variar. Este nombre se
almacena en una base de datos, que debe consultarse antes de cualquier comunicación de cualquier tipo: los nombres de dominio están hechos para las personas, pero las computadoras deben comunicarse usando los números IP, que cada una tiene asignada dentro de Internet. La actividad de conseguir el número IP a partir de un nombre de dominio se llama Resolución de nombre y debe realizarse antes de establecer cualquier
comunicación.

El proveedor de Internet que nos da el servicio en nuestras casas, dispone de un servidor DNS que nuestra computadora consulta. Dado que conocer el número IP es indispensable para empezar cualquier comunicación, incluso con un DNS, nuestra computadora debe saber "de memoria" el número IP que le corresponde al servidor DNS de nuestro proveedor de internet: es un valor que la computadora obtiene al conectarse al proveedor.

Los DNS están organizados en forma
jerárquica, y el Dominio raíz que mencioné anteriormente es la cabeza de esa jerarquía. Cada uno de los puntitos separa los distintos miembros de la jerarquía hasta llegar al nombre de Host. Cada miembro de la jerarquía tiene autoridad para asignar nombres de dominio a todo lo que está a la izquierda. Por ejemplo, el DNS que controla el top-level domain .com puede asignar nombres que terminen en .com, el que controla .com.ar puede asignar nombres que terminen en .com.ar y así siguiendo.

Cuando nuestro proveedor de internet desea obtener el nombre de dominio de este sitio, manda la consulta al dominio raíz, el que a su vez le indica quién es el DNS que administra los nombres terminados en .ar. Entonces el DNS de nuestro proveedor dirige la consulta al DNS de .ar. Este contesta quién es el DNS de .com.ar y así sucesivamente hasta que se sabe quién es el DNS que administra www.strellis.com.ar: este &
uacute;ltimo DNS es el que contesta el número IP que tiene asignada la computadora donde se guarda esta página web.

Pero si para cada consulta nuestro proveedor debe contactarse con el dominio raíz, ¿cómo hace para encontrarlo? Por supuesto que necesita el número IP, y debe sabérselo de memoria. En el mundo existen 13 servidores DNS que atienden el dominio raíz. Existen copias de ellos en todo el mundo. Nuestro proveedor de internet sabe de memoria las direcciones IP de estos 13 servidores, y la copia de estos que esté más cerca o sea más rápida contestará la consulta. Estos servidores DNS del dominio raíz son una parte fundamental de Internet, y existen varias copias de ellos para que si alguno deja de funcionar, Internet siga funcionando sin que nadie se dé cuenta.

¿Qué significan los nombres?

Los Top-level domains son pocos y su
asignación está férreamente controlada por la ICANN (Internet Corporation for Assigned Names and Numbers), una de las entidades que controla y regula el funcionamiento técnico de Internet (ya se le dedicará un artículo). Esos Top-level domains son por ejemplo .com, .edu, .org, o también .ar, .br, etc. etc. etc. y funcionan como una agrupación o categoría para los nombres: por ejemplo .com lo usan empresas comerciales, .edu lo usan instituciones educativas, .org lo usan entidades sin fines de lucro, etc. etc. Aparte de esos, se encuentran los ccTLDs o "Country-Code Top Level Domains", o sea, nombres de dominio de países. Los países tienen dominios para identificar los sitios que se encuentran en ellos. En la gran mayoría de los casos, los nombres de dominio dependientes de los ccTLDs están limitados a sitios del país correspondiente, pero en algunos países no
existe esa limitación a
causa del significado intuitivo en particular que se les ha asignado a sus nombres: por ejemplo el TLD de Tuvalu, una islita perdida en el medio del Pacífico, es .tv, utilizado por muchas empresas relacionadas con la televisión para registrar sus nombres. Algo semejante ocurre con .ag, el dominio de Antigua y Barbuda, ya que AG es parte de la razón social de las empresas alemanas.

Registración de nombres

Los nombres de dominio se registran, muchas empresas le dan mucha importancia a su nombre de dominio ya que debe ser fácil de recordar para sus clientes, dado que termina siendo la única manera de que accedan al sitio de la empresa, que no sea utilizando buscadores. Las empresas que se dedican a registrar nombres de dominio se llaman autoridades de registro o Registrars. Por ejemplo, para registrar nombres terminados en .com.ar, hay que dirigirse a www.nic.ar, una entidad pública controlada por el Ministerio de Relaciones
Exteriores, y para registrar nombres terminados en .edu.ar hay que dirigirse a la Red Interuniversitaria argentina. Como ya dije antes, los países controlan a quiénes se asignan los nombres y las políticas para hacerlo. En caso de los nombres terminados en .com, .org, etc., la entidad que se ocupa de administrar los nombres es Verisign, una corporación estadounidense. Esta delega en otras empresas o Registrars la asignación de nombres,
como si fueran "revendedores" del servicio.

Ejemplo de resolución de nombres

Voy a hacer un ejemplo de resolución de nombres usando un programa para Unix llamado Dig. Este me va a proporcionar la información que mi computadora consume para obtener el número IP asignado a esta página web.


[root@princess strellis]# dig +trace www.strellis.com.ar

; <<>> DiG 9.5.0 <<>> +trace www.strellis.com.
ar
;; global options: printcmd
. 292910 IN NS D.ROOT-SERVERS.NET.
. 292910 IN NS E.ROOT-SERVERS.NET.
. 292910 IN NS B.ROOT-SERVERS.NET.
. 292910 IN NS A.ROOT-SERVERS.NET.
. 292910 IN NS H.ROOT-SERVERS.NET.
. 292910 IN NS K.ROOT-SERVERS.NET.
. 292910 IN NS L.ROOT-SERVERS.NET.
. 292910 IN NS G.ROOT-SERVERS.NET.
. 292910 IN NS J.ROOT-SERVERS.NET.
. 292910 IN NS M.ROOT-SERVERS.NET.
. 292910 IN NS I.ROOT-SERVERS.NET.
. 292910 IN NS F.ROOT-SERVERS.NET.
. 292910 IN NS C.ROOT-SERVERS.NET.
;;
Received 500 bytes from 127.0.0.1#53(127.0.0.1) in 0 ms

ar. 172800 IN NS ATHEA.ar.
ar. 172800 IN NS NS1.RETINA.ar.
ar. 172800 IN NS NS-AR.RIPE.NET.
ar. 172800 IN NS CTINA.ar.
ar. 172800 IN NS UUCP-GW-2.PA.DEC.COM.
ar. 172800 IN NS MERAPI.SWITCH.CH.
ar. 172800 IN NS UUCP-GW-1.PA.DEC.COM.
ar. 172800 IN NS NS.UU.NET.
;; Received 394 bytes from 192.33.4.12#53(C.ROOT-SERVERS.NET) in 172 ms

strellis.com.ar. 14400 IN NS ns1.mesi.com.ar.
strellis.com.ar. 14400 IN NS ns2.mesi.com.ar.
;; Received 110 bytes from 200.10.202.3#53(NS1.RETINA.ar) in 11 ms

www.strellis.com.ar. 14400 IN A 200.32.4.61
strellis.
com.ar. 14400 IN NS ns2.sinspam.com.
strellis.com.ar. 14400 IN NS ns1.sinspam.com.
;; Received 132 bytes from 200.32.4.71#53(ns1.mesi.com.ar) in 49 ms

Acá en esta pantalla vemos cómo se realizó la consulta a los servidores DNS. Veamos paso por paso.


[root@princess strellis]# dig +trace www.strellis.com.ar

; <<>> DiG 9.5.0 <<>> +trace www.strellis.com.ar
;; global options: printcmd
. 292910 IN NS D.ROOT-SERVERS.NET.
. 292910 IN NS E.ROOT-SERVERS.NET.
. 292910 IN NS B.ROOT-SERVERS.NET.
. 292910 IN NS A.ROOT-SERVERS.NET.
. 292910 IN NS H.ROOT-SERVERS.NET.
. 292910 IN NS K.ROOT-SERVERS.NET.
.
292910 IN NS L.ROOT-SERVERS.NET.
. 292910 IN NS G.ROOT-SERVERS.NET.
. 292910 IN NS J.ROOT-SERVERS.NET.
. 292910 IN NS M.ROOT-SERVERS.NET.
. 292910 IN NS I.ROOT-SERVERS.NET.
. 292910 IN NS F.ROOT-SERVERS.NET.
. 292910 IN NS C.ROOT-SERVERS.NET.
;; Received 500 bytes from 127.0.0.1#53(127.0.0.1) in 0 ms

En esta parte se observa que mi computadora (127.0.0.1) obtiene de su base de datos los nombres de dominio de los servidores del dominio raíz. Luego dirige la consulta a uno de ellos (C.ROOT-SERVERS.NET) como se observa a continuación.



ar. 172800 IN NS ATHEA.ar.
ar. 172800 IN NS NS1.RETINA.ar.

nar. 172800 IN NS NS-AR.RIPE.NET.
ar. 172800 IN NS CTINA.ar.
ar. 172800 IN NS UUCP-GW-2.PA.DEC.COM.
ar. 172800 IN NS MERAPI.SWITCH.CH.
ar. 172800 IN NS UUCP-GW-1.PA.DEC.COM.
ar. 172800 IN NS NS.UU.NET.
;; Received 394 bytes from 192.33.4.12#53(C.ROOT-SERVERS.NET) in 172 ms

En esta parte se observa que de C.ROOT-SERVERS.NET, uno de los servidores del dominio raíz, obtuvo quién es el DNS que administra el dominio .AR: son 8. Luego dirige la consulta a uno de ellos (NS1.RETINA.AR).



strellis.com.ar. 14400 IN NS ns1.mesi.com.ar.
strellis.com.ar. 14400 IN NS ns2.mesi.com.ar.
;; Received 110 bytes from 200.10.202.3#53(NS1.RETINA.ar) in 11 ms

n

Acá se observa que en un solo paso, NS1.RETINA.AR obtiene el servidor que administra strellis.com.ar, dado que el servidor que atiende el dominio .ar también atiende .com.ar. Finalmente se dirige la consulta a uno de estos servidores, que es el que finalmente dirá la dirección IP asignada a www.strellis.com.ar.


www.strellis.com.ar. 14400 IN A 200.32.4.61
strellis.com.ar. 14400 IN NS ns2.sinspam.com.
strellis.com.ar. 14400 IN NS ns1.sinspam.com.
;; Received 132 bytes from 200.32.4.71#53(ns1.mesi.com.ar) in 49 ms

Acá se observa finalmente que la dirección IP asignada a www.strellis.com.ar es 200.32.4.61. Luego la computadora se conecta a esa dirección IP para obtener esta página. ¡Un aplauso para la computadora!

Be the first to comment

Leave a Reply

Your email address will not be published.


*