Cuando enviamos un paquete de datos a un ordenador, es necesario que llegue a su destino. Si usamos su direcci�n IP no presenta mayor problema, sin embargo los n�meros de 32 bits usados para identificar un equipo no son f�ciles de recordar mientras que los ordenadores, como hemos visto en la Secci�n 2.4.1, suelen tener nombres m�s intuitivos para el ser humano. La aplicaci�n que se encarga de traducir nombres de m�quina a direcciones IP se conoce como Sistema de Resoluci�n de Nombres o DNS (Domain Name System).
En una red peque�a no resultar�a dif�cil mantener una tabla de resoluci�n de nombres almacenada en el fichero /etc/hosts de cada m�quina que asociara a cada direcci�n IP el nombre de esa m�quina, sin embargo en toda Internet, f�cilmente se comprende que no ser�a una buena soluci�n, por ello en 1984 se dise�� y adopt� un sistema nuevo tambi�n llamado DNS que consiste b�sicamente en dividir los nombres de m�quina en zonas o dominios y delegar en unos servidores de nombres que mantengan toda la informaci�n acerca de una zona. Por ejemplo, cuando cursamos una petici�n o enviamos un paquete de datos para la m�quina hispalinux.es el sistema de resoluci�n de nombres interroga a un servidor que mantenga la zona de Espa�a (.es) y �ste le indicar� c�al es la direcci�n IP que corresponde al ordenador con ese nombre.
Bien, dicho as� parece sencillo, aunque en realidad es un sistema bastante complejo y con muchos matices pero que escapan totalmente de nuestros prop�sitos.
Todos nuestros equipos van a necesitar resolver nombres de m�quinas, tanto para navegar por internet como, tal vez, localmente en nuestra propia red para algunos servicios que tengamos implementados en las m�quinas locales.
En el caso local, el fichero responsable de la resoluci�n de nombres es etc/hosts y su estructura es simplemente una tabla conteniendo en cada entrada la direcci�n IP y el nombre de la m�quina. Obviamente no es necesario que es este fichero est�n identificados todos los equipos de nuestra intranet, sino solamente aquellos a los que debamos dirigirnos con alg�n prop�sito, am�n del propio ordenador. Para configurarlo bastar� usar cualquier editor de textos y dejarlo de la siguiente manera:
# Do not remove the following line, or various programs # that require network functionality will fail. 127.0.0.1 dire localhost.localdomain localhost 192.168.1.11 dire 192.168.1.1 gato |
Este podr�a ser el fichero etc/hosts para el ordenador de direcci�n.
Cuando resolvemos nombres de m�quinas en Internet ya no usaremos este fichero[1] sino que ahora, el responsable es el archivo etc/resolv.conf que contendr� las direcciones de nuestros servidores de nombres (DNS) proporcionados por nuestro proveedor de acceso[2] . De nuevo, usando nuestro editor favorito dejaremos el archivo etc/resolv.conf de esta guisa:
nameserver 150.214.3.9 nameserver 150.214.90.11 nameserver 212.59.199.2 |
Podemos colocar hasta tres servidores de nombres, en previsi�n de que alguno de ellos se caiga en un momento dado.
Para aclarar, un poco, c�mo funciona este asunto digamos que cuando una de nuestras m�quinas necesita resolver un nombre, mira en primer lugar en el fichero etc/hosts y finalmente, si no consigue resolverlo, interroga a las m�quinas especificadas en el etc/resolv.conf puesto que as� se lo indica el fichero de configuraci�n /etc/nsswitch.conf donde se le especifican los recursos de resoluci�n de nombres en un l�nea que luce:
hosts: files nisplus nis dns |
Esta l�nea instruye a la computadora que, para resolver un nombre debe mirar en etc/hosts en primer lugar, seg�n el par�metro files, despu�s debe usar nisplus o nis caso de que tengamos implementados estos servicios en nuestra red local, y finalmente debe usar el sistema dns de los servidores de nombres.
[1] | Ser�a un disparate que nuestro fichero etc/hosts almacenase todas las IP p�blicas de Internet |
[2] | En realidad no es imprescindible usar los DNS de nuestro acceso a Internet, funciona con cualquier servidor de nombres p�blico. |