Bloqueando publicidad desde el archivo hosts

Cuando Internet era joven y el número de dominios muy reducido, la resolución de nombres se hacía por medio del archivo HOSTS en el cual se listan las direcciones IPs y sus correspondientes nombres de dominio.

Con el enorme crecimiento de Internet y la introducción de los servicios DNS, el propósito original del archivo HOSTS fue impractico quedando como una reliquia, que aún hoy los Sistemas Operativos soportan. Cuando se hace una petición por un nombre de dominio, la mayoría de SOs actuales revisan primero si existe una entrada en el archivo HOSTS, de no estar revisan en su caché de DNSs y si tampoco está allí, proceden a mandar una petición a su servidor DNS.

El que el archivo HOSTS tenga la más alta prioridad, nos permite definir nuestras propias entradas por sobre lo que nuestro DNS diga. Si queremos agregar nuestra propia entrada al archivo HOSTS, basta con agregar una linea como está al mismo:

255.255.255.255       nombre.de.dominio

¿Y en dónde se encuentra el tan famoso archivo HOSTS? Varía según el Sistema Operativo, en Windows XP y 2000 se encuenta en C:\WINDOWS\system32\drivers\etc mientras que en Mac y Linux lo encuentras en /etc/hosts.

Es precisamente esta técnica la que yo he usado desde hace algún tiempo para «bloquear» algunos sitios que no me son útiles y solo roban tiempo de carga a las páginas que visito. En mi caso estoy bloqueando algunos los servicios de publicidad y estadísticas más populares; mi archivo hosts termina luciendo así:

127.0.0.1	www.google-analytics.com
127.0.0.1	pagead2.googlesyndication.com #adsense
127.0.0.1	ad.doubleclick.net
127.0.0.1	rcm.amazon.com # publicidad de amazon
127.0.0.1	a.tribalfusion.com
127.0.0.1	botones.blogalaxia.com
127.0.0.1	s23.sitemeter.com
127.0.0.1	www.statcounter.com

Es recomendable usar 127.0.0.1 por motivos de velocidad. Usar este truco tiene sus ventajas frente a otras soluciones de bloqueo o filtro:

  • El archivo HOSTS tiene la más alta prioridad, las entradas allí definidas serán resueltas al «instante»
  • Es independiente del navegador, e incluso no tendrás que instalar ninguna extensión como AdBlock para Firefox
  • Rápido y sencillo, con una linea estarás bloqueando un dominio entero sin sacrificar ciclos de CPU

Y también sus desventajas:

  • Primitivo, no tendrás heurística para bloquear nuevos sistemas de publicidad ni posibilidad de aplicar excepciones bajo ciertas condiciones.
  • Para bloquear un nuevo sistema de publicidad deberás investigar que dominios usan e irlos agregando a tu archivo, algo que pude complicarse si usan muchos subdominios

Usar el archivo HOSTS para bloquear sitios indeseables no es nada nuevo, incluso el sitio Most Valuable Professional mantienen un archivo HOSTS de 604 kb con miles de entradas de sitios maliciosos; y mantienen un blog relacionado donde publican algunos datos interesantes. A mi me parece un poco pesado dicho archivo de MVP pero como es actualizado continuamente luce una buena solución para mantener libre de pestes.

Es curioso, cuando bloqueas tantos sitios de publicidad y empiezas a ver muchos espacios vacíos en los sitios, te das cuenta de que tan «contaminado» está Internet hoy en día.