El
archivo
HOSTS: ¿cómo puede mejorar mi navegación?
El archivo
HOSTS es un archivo de texto que se puede utilizar para resolver
nombres de dominio en direcciones IP de forma local. En este artículo se
explican sus principales aplicaciones: mejora de la velocidad de acceso a
aquellas páginas web que visitemos más frecuentemente, utilización de
abreviaturas para referirnos a otros servidores o restricción de navegación a
sólo algunos dominios.
Saulo
Barajas, Saulo.Net 02may02.-
Cada vez que escribimos un nombre de dominio en el símbolo del sistema o en una
aplicación TCP/IP (como un navegador web), éste nombre tiene que traducirse a
una dirección IP antes de poder localizar el servidor solicitado. Este proceso
de traducción se conoce como resolución de nombres. Por ejemplo: si escribimos
"www.saulo.net" en la barra de
direcciones de Internet Explorer, se formulará una consulta de resolución de
nombres al servidor DNS que tengamos configurado. El servidor DNS responderá
con la dirección IP correspondiente (194.106.33.39) y finalmente se accederá
al servidor web para cargar la página. Esta consulta es la responsable de la
pequeña espera que observamos antes de acceder por primera vez a un dominio.
Obsérvese que este tiempo de espera apenas depende del ancho de banda de
nuestra conexión (el tráfico intercambiado es mínimo).
Nota: Se puede
obtener más información sobre la resolución de nombres en Resolución
de nombres; sobre el archivo Hosts en Métodos
de resolución de nombres de dominio; y sobre el sistema de nombres de
dominio (DNS) en Nombres
de dominio. Estos enlaces corresponden a los cursos de redes y TCP/IP
publicados en este mismo sitio web.
De lo anterior podemos
obtener dos conclusiones:
- Si el servidor DNS
falla (por algún motivo no es capaz de devolver la dirección IP correcta)
no se podrá acceder al servidor web escribiendo su nombre de dominio
asociado. Parece lógico pensar que si escribimos su dirección IP
directamente, http://194.106.33.39, sí
podremos ver la página web. Sin embargo, esto no ocurre siempre debido a
que un servidor con una misma IP suele alojar multitud de dominios (son
servidores virtuales) y, debido a este motivo, en caso de escribir la IP
directamente, ¿qué dominio se cargará? Como no se puede saber, los
servidores optan por no devolver ninguno y mostrar un error de página no
encontrada. En el caso de servidores dedicados, en los que una IP se asocia
con un solo dominio, no hay ambigüedad posible y se abrirá la página. Por
ejemplo: http://www.ibm.com y http://129.42.17.99
devuelven el mismo resultado, si bien la segunda opción es más rápida por
no depender de un servidor DNS.
Cada ISP suele proporcionar uno o varios servidores DNS. Podemos conocer el
servidor DNS que estamos utilizando con la orden IPCONFIG /ALL |MORE. Es
decir, hay miles de servidores DNS en Internet y su información se debe
actualizar por todos ellos. Muy a menudo se producen inconsistencias o
problemas de actualización. Esta es la causa de que algunas páginas web
sólo puedan verlas algunos usuarios: a unos usuarios se les abre la página
(se pudo resolver el nombre) y a otros se les muestra página no encontrada
(no se pudo resolver). Aunque recordemos que el servidor web por su IP es
alcanzable en ambos casos.
- Si las aplicaciones
TCP/IP conociesen previamente las direcciones IP asociadas a los nombres de
dominio más usados no tendrían que consultar a un servidor DNS y el acceso
sería más rápido.
Resolución
de nombres de dominio
Existen tres mecanismos
básicos de resolución de nombres de dominio que se aplican en el siguiente
orden: 1º) Comparar el nombre solicitado con el del propio host. Si es el
mismo, el nombre queda resuelto a la IP local; 2º) Se busca el nombre en el
archivo HOSTS. Si se encuentra se utiliza la IP indicada; 3º) Se formula una
consulta al servidor DNS.
Este orden de aplicación
(archivo HOSTS antes que servidor DNS) implica lo siguiente:
- No se utilizará el
servidor DNS para aquellas entradas que aparezcan en el archivo HOSTS, con
el consiguiente incremento en velocidad. Recuérdese que el archivo HOSTS
reside localmente en cada equipo y el servidor DNS es una máquina distinta
de Internet.
- No se podrá acceder a
aquellos dominios que tengan asociada una IP incorrecta en el archivo HOSTS.
Por ejemplo: si se asocia la IP incorrecta 192.1.1.1 al dominio www.saulo.net
en el archivo HOSTS de un equipo, no se podrá entrar a Saulo.Net
escribiendo www.saulo.net en un navegador
de ese sistema: dará página no encontrada.
- Si en la configuración
TCP/IP no se establece un servidor DNS, sólo se podrán resolver los
nombres de dominio que se hayan escrito manualmente en el archivo HOSTS (y
el del propio host).
El
archivo HOSTS
Es un archivo de texto que
se encuentra en el directorio de Windows en el caso de sistemas Windows 9x; o en
el directorio C:\WINNT\SYSTEM32\DRIVERS\ETC en el caso de sistemas NT. El nombre
del archivo es simplemente "HOSTS" (sin extensión). Después de
instalar Windows se proporciona un archivo de ejemplo llamado "HOSTS.SAM".
Este archivo se puede renombrar o copiar a "HOSTS" para posteriormente
editarlo. Cada entrada consiste en una dirección IP, uno o más espacios en
blanco y el nombre de dominio asociado a esa IP.
Algunos comentarios sobre
el archivo HOSTS:
- Se pueden asignar
varios nombres de dominio a una misma dirección IP.
- El archivo se lee de
arriba a abajo por lo que se deben colocar al principio los nombres
utilizados más a menudo.
- Un nombre de dominio
puede tener hasta 255 caracteres. En sistemas Windows no se distingue entre
mayúsculas y minúsculas.
A continuación veremos
las principales aplicaciones de uso que se deducen de todo lo anterior.
Acelerar
la carga de las páginas más visitadas
Para ello añadimos al
archivo HOSTS las direcciones IP de las 4 o 5 páginas que visitamos más
frecuentemente, especialmente la IP de la página de inicio del navegador. La IP
asociada a un nombre de dominio se puede conocer con el comando PING. Por
ejemplo, "ping www.saulo.net" devolverá entre sus resultados de
salida la IP 194.106.33.39. De esta forma podemos generar nuestro archivo HOSTS:
# Ejemplo de archivo
HOSTS
216.239.39.100 www.google.com
194.106.33.39 www.saulo.net
129.42.19.99 www.ibm.com
Utilizar
abreviaturas para nombres de servidores
Podemos asignar
abreviaturas o nombres distintos a servidores web. Estos servidores tienen que
ser dedicados y no virtuales, según hemos explicado más arriba. El siguiente
archivo HOSTS provoca que al escribir "ibm", "www.apple.com"
o "www.pepe.com" se abra siempre la página de "www.ibm.com"
(probablemente al lector se le estén ocurriendo infinidad de bromas para
relacionar nombres de amigos con dominios).
# Ejemplo de archivo
HOSTS
10.0.0.1
router
129.42.19.99 ibm
129.42.19.99 www.apple.com
129.42.19.99 www.pepe.com
Impedir
la navegación por todos los dominios menos en uno
En el ámbito de la
empresa puede interesar que los empleados únicamente puedan navegar por el web
corporativo. Una forma muy sencilla de conseguirlo es eliminar el servidor DNS
de la configuración TCP/IP, restringir el acceso al icono Red del Panel de
control y crear un archivo HOSTS que únicamente contenga una entrada: la del
web corporativo.
Sólo los expertos en
TCP/IP advertirán que pueden navegar por otras páginas escribiendo la
dirección IP (en el caso de servidores dedicados) o modificando el archivo
HOSTS (tanto en servidores virtuales como en dedicados). Estas IPs tienen que
haber sido conseguidas de algún PC que tenga el servicio DNS disponible, por lo
que incluso a los expertos en TCP/IP les resultará tan incómoda esta tarea que
desistirán en su intento.
Impedir
la navegación por un determinado dominio
Si asignamos una IP falsa
a un nombre de dominio en el archivo HOSTS, no se podrá navegar por las
páginas web de ese dominio.
Acelerar
la descarga y envío de correos
Si utilizamos un programa
gestor de correo como Outlook Express podemos agilizar la localización de los
servidores entrante y saliente si escribimos sus direcciones IP en lugar de sus
nombres de dominio (menú Herramientas / Cuentas). Esto tiene otra ventaja
adicional: si falla el servidor DNS no nos quedaremos sin correo. Recordemos que
la IP asociada a un nombre de dominio se puede obtener con el comando PING.
Debido a que los servidores de correo quedan almacenados en la configuración de
cuentas hemos preferido escribir aquí la dirección IP antes que en el archivo
HOSTS.
Diagnóstico
y resolución de errores
El archivo HOSTS no suele
ser modificado por los usuarios. Sin embargo, en caso de encontrarnos ante
errores que afectan sólo a unos dominios determinados no está de más
comprobar que el usuario no haya alterado su archivo HOSTS. Ya hemos visto que
una configuración incorrecta en este archivo puede impedir la navegación por
ciertas páginas o llevar a dominios que no le corresponden. Si el archivo HOSTS
no es el culpable, probablemente sea nuestro servidor DNS el que esté
proporcionando una información incorrecta: en este caso podemos escribir la IP
correspondiente en el archivo HOSTS después de haberla obtenido de otro equipo
que no presente el error. |