# Archivo hosts

El archivo hosts de un ordenador se usa por el sistema operativo para guardar la correspondencia entre dominios de Internet y direcciones IP. Este es uno de los diferentes métodos que usa el sistema operativo para resolver nombres de dominio. Antiguamente, cuando no había servidores host
que resolvieran los dominios, el archivo hosts era el único encargado de hacerlo, pero dejó de utilizarse cuando empezó a crecer el número de nombres de dominio en Internet y entonces se usaron servidores de resolución de DNS. En muchos sistemas operativos este método se usa preferentemente respecto a otros como el DNS. En la actualidad también se usa para bloquear contenidos de Internet como la publicidad web.
El archivo hosts es un archivo de texto plano que puede editar el administrador del equipo. Este archivo es tradicionalmente llamado "hosts" y su ubicación depende del sistema operativo.

## Ubicación del fichero hosts

La localización del archivo hosts cambia dependiendo del sistema operativo. Algunos ejemplos son:
| Sistema Operativo | Ruta |
| Windows 95 / 98 / Me | C:\Windows\hosts |
| Windows NT / 2000 | C:\WINNT\System32\drivers\etc\hosts |
| Windows XP / 2003 / Vista / 7 / 8 / 10 / 11 | C:\Windows\System32\drivers\etc\hosts |
| Mac OS / iPhone OS | /private/etc/hosts |
| Unix / GNU-Linux / BSD | /etc/hosts |
| Novell NetWare | SYS:etc\hosts |
| OS/2 / eComStation | "bootdrive":\mptn\etc\ |
| BeOS | /boot/beos/etc/hosts |
| Symbian OS 6.1-9.0 | C:\system\data\hosts |
| Symbian OS 9.1+ | C:\private\10000882\hosts |
| Android | /system/etc/hosts |
Un archivo hosts por defecto suele incluir solo la definición de localhost para pruebas de loopback:

### Formato

* Se debe introducir la dirección IP a la que resolverá, uno o más espacios o tabulaciones y el dominio de Internet a resolver.
* Se pueden introducir varios dominios que resuelven a la misma IP en una única línea, separados por uno o más espacios o tabulaciones.
* Cada correspondencia entre dirección IP y dominio debe ir en una línea distinta.
* Las líneas que comienzan por # se consideran comentarios y no se procesan.
* Las líneas en blanco tampoco se procesan.

## Otros usos

En su función de resolver dominios de Internet, el archivo hosts puede usarse para definir un nombre de dominio y poder usarlo en el propio sistema. Esto puede ser beneficioso o perjudicial.

### Redirigir dominios locales

Es útil para probar páginas web mientras los programadores las desarrollan.

### Bloquear contenidos de Internet

El archivo hosts también se utiliza como método para bloquear la publicidad en Internet y páginas web que pueden contener software malicioso como spyware o adware. Esto se hace añadiendo entradas para esos sitios que redirigen a otras direcciones que no existen. Muchas veces se suele utilizar la dirección de loopback (127.0.0.1)* para este propósito, pero no es una buena elección por los siguientes motivos:
* Algunos programas ejecutan servicios en la dirección de loopback.
* Si se está ejecutando un servidor web en la máquina, recibirá peticiones inesperadas del navegador web. Esto puede afectar al mantenimiento del servidor, a su rendimiento y a las estadísticas de peticiones. Además, si otro tipo de servidor está usando el puerto 80 su respuesta es impredecible.
* Algunos programas que monitorizan el tráfico local y remoto pueden actuar de forma extraña o reportar errores, por ejemplo en los firewalls.
* Al intentar conectar a la dirección de loopback se malgasta tiempo innecesariamente mientras se espera la respuesta.
* El programa Spybot - Search & Destroy, por ejemplo, incluye una función llamada "Inmunizar" que añade miles de líneas al archivo hosts para bloquear el acceso a páginas web con spyware. Sin embargo, todas estas líneas modificadas del archivo HOST por parte de Spybot - Search & Destroy incluyen la dirección IP citada: 127.0.0.1. Está por ver entonces si hay otra forma de modificar el programa antivirus para corregir esas direcciones de modo automático, ya que manualmente sería imposible.
Una elección mejor es utilizar simplemente una dirección IP inválida, como una máscara de subred (255.255.255.0).

## Problemas de seguridad

Como el archivo hosts tiene un papel central en la resolución de dominios de Internet, en sistemas Windows han aparecido algunos virus, gusanos y spyware que modifican este archivo para bloquear el acceso a las páginas web de los fabricantes de software antivirus o incluso para bloquear las actualizaciones de Windows Update. Esto deja los ordenadores desprotegidos frente a otras amenazas externas.

### Ataques de Pharming

El uso del archivo hosts puede ser perjudicial cuando se modifica malintencionadamente para redirigir un nombre de dominio a una página falsa de phishing. Por ejemplo, un usuario malintencionado redireccionaría www.ejemplo.com (que podría ser una página de un banco) a una dirección IP como 93.184.216.119 (que podría ser la réplica falsa de la página de un banco) para capturar datos privados. Normalmente el software antivirus bloquea la modificación de este fichero.
Se recomienda tener protegido el archivo hosts, mediante el permiso de solo lectura, o la utilización de programas antivirus o antispyware que protejan este archivo.