El archivo hosts es una lista de nombres y direcciones IP que Windows consulta antes de preguntar a cualquier servidor DNS. Con él puedes bloquear una web en todo el equipo o ver tu nuevo servidor antes de que el dominio apunte a él. Aquí verás dónde está, cómo guardarlo sin el error de permisos y qué revisar cuando parece que Windows lo ignora.
En resumen
- El archivo está en
C:\Windows\System32\drivers\etc\hosts, no tiene extensión y solo se puede guardar con el editor abierto como administrador.- Cada línea es
IP nombre: sirve para bloquear dominios (0.0.0.0) o para redirigirlos a otra IP.- Si no hace efecto, casi siempre es caché:
ipconfig /flushdns, la caché propia del navegador o su DNS seguro.
Qué es el archivo hosts y cuándo se usa
Cuando escribes una dirección en el navegador, Windows tiene que traducir el nombre a una IP. El orden simplificado es este:
- Mira su caché DNS (respuestas recientes guardadas en memoria).
- Lee el archivo hosts. Sus entradas se cargan en esa misma caché.
- Si no encuentra el nombre, pregunta al servidor DNS configurado (el del router, el de tu operador o uno público).
Como el archivo hosts va antes que el servidor DNS, lo que pongas ahí manda para ese equipo. No afecta a los demás dispositivos de la red: solo al PC donde lo edites. Si quieres entender el resto del proceso, lo tienes explicado en el artículo sobre cómo funciona el DNS.
Formato de una entrada
Cada línea tiene una dirección IP, al menos un espacio o tabulador, y uno o varios nombres. Lo que va detrás de # es un comentario y Windows lo ignora.

# Bloquear un dominio
0.0.0.0 anuncios.ejemplo.com
# Redirigir un dominio a otro servidor
203.0.113.25 midominio.es www.midominio.es
Reglas que conviene tener claras:
- No admite comodines.
*.ejemplo.comno funciona: cada subdominio necesita su propia línea. ejemplo.comywww.ejemplo.comson nombres distintos. Si solo pones uno, el otro sigue resolviendo por DNS.- No se ponen puertos ni rutas. Nada de
http://, ni/carpeta, ni:8080. - Las mayúsculas dan igual.
| Uso | IP a poner | Qué pasa |
|---|---|---|
| Bloquear una web | 0.0.0.0 | La conexión falla al momento |
| Bloquear (alternativa) | 127.0.0.1 | Intenta conectar a tu propio PC; si tienes un servidor local, puede responder él |
| Probar un servidor nuevo | IP pública del servidor | Ves la web en ese servidor aunque el DNS apunte al antiguo |
| Desarrollo local | 127.0.0.1 | Un nombre como proyecto.test abre tu servidor local |
0.0.0.0 es mejor para bloquear: no hay nada escuchando en esa dirección, así que el navegador desiste enseguida en lugar de esperar.
Cómo editar el archivo hosts con permisos de administrador
El archivo está protegido. Si lo abres con doble clic y lo cambias, al guardar Windows te dirá que no tienes permiso o te propondrá guardarlo en otra carpeta. La solución es abrir el editor ya elevado.
Con el Bloc de notas
- Pulsa Inicio y escribe
Bloc de notas. - Haz clic derecho sobre él y elige Ejecutar como administrador. Acepta el aviso del Control de cuentas de usuario.
- En el Bloc de notas, ve a Archivo > Abrir.
- Pega en la barra de dirección
C:\Windows\System32\drivers\etcy pulsa Intro. - Abajo a la derecha, cambia el filtro de Documentos de texto a Todos los archivos. Si no, el archivo no aparece porque no tiene extensión.
- Abre
hosts, añade tus líneas al final y guarda con Ctrl + G.
Desde PowerShell, en una línea
Abre Terminal (Administrador) y ejecuta:
notepad C:\Windows\System32\drivers\etc\hosts
Al lanzarlo desde una consola elevada, el Bloc de notas también hereda los permisos de administrador.
También puedes añadir una línea sin abrir ningún editor:
Add-Content -Path "$env:windir\System32\drivers\etc\hosts" -Value "0.0.0.0 distracciones.ejemplo.com"
Haz una copia antes de tocar nada si el archivo ya tiene entradas que no son tuyas, por ejemplo de un programa de desarrollo o de una VPN:
Copy-Item "$env:windir\System32\drivers\etc\hosts" "$env:USERPROFILE\Desktop\hosts.bak"
Usos prácticos
Bloquear webs en un equipo
Es la forma más simple de cortar el acceso a un dominio en todo el PC, en cualquier navegador y programa. Sirve para quitar distracciones o para impedir que una aplicación contacte con un servidor concreto.
Tiene límites claros: no sirve como control parental serio. Cualquiera con permisos de administrador puede borrar la línea, y una VPN o un proxy lo saltan. Para bloquear publicidad en toda la casa, un DNS filtrante como Pi-hole es más cómodo que mantener listas en cada equipo.
Probar un servidor antes de cambiar las DNS
Este es el uso más valioso para quien gestiona webs. Imagina que migras midominio.es a un hosting nuevo con IP 203.0.113.25. Antes de cambiar los registros DNS quieres comprobar que todo funciona allí.
Añade al hosts:
203.0.113.25 midominio.es www.midominio.esVacía la caché (siguiente apartado) y cierra el navegador del todo.
Abre la web. Ahora la ves desde el servidor nuevo; el resto del mundo sigue viendo el antiguo.
Comprueba páginas, formularios y acceso al panel.
Cuando cambies las DNS reales, borra esas líneas. Si se te olvidan, dentro de meses seguirás viendo un servidor que quizá ya no existe y no entenderás por qué.
Ojo con HTTPS: si el servidor nuevo aún no tiene certificado para ese dominio, el navegador mostrará un aviso de seguridad. Es normal en esta fase.
Comprobar que la entrada se aplica
Usa ping, que pasa por el resolutor de Windows y por tanto lee el hosts:
ping midominio.es

La primera línea muestra la IP a la que resuelve. Si sale la tuya, Windows ya obedece.
No uses nslookup para esto. Pregunta directamente al servidor DNS y se salta el archivo hosts, así que siempre te enseñará la IP «real». Mucha gente cree que su hosts no funciona por culpa de esta confusión.
En PowerShell, Resolve-DnsName sí tiene en cuenta el hosts por defecto:
Resolve-DnsName midominio.es
Por qué a veces no funciona
La caché DNS de Windows
Windows guarda respuestas durante un tiempo. Si visitaste la web hace poco, puede seguir usando la IP antigua. Vacíala desde una consola:
ipconfig /flushdns
Para ver qué tiene guardado ahora mismo, usa ipconfig /displaydns.
La caché del navegador
Los navegadores basados en Chromium (Chrome, Edge, Brave) tienen su propia caché de nombres y reutilizan conexiones abiertas. Lo más fiable es cerrar el navegador por completo, no solo la pestaña. En Chrome también puedes abrir chrome://net-internals/#dns y pulsar Clear host cache.
El navegador usa DNS seguro o un proxy
Con DNS seguro (DNS sobre HTTPS) activado, el navegador puede resolver nombres por su cuenta en lugar de usar el sistema. Si sospechas que es esto, desactívalo un momento para probar: en Chrome está en Configuración > Privacidad y seguridad > Seguridad > Usar DNS seguro, y en Firefox en los ajustes de DNS sobre HTTPS. Lo mismo pasa con una VPN o un proxy: resuelven fuera de tu equipo y tu archivo hosts no cuenta.
El antivirus revierte o bloquea el cambio
Muchos programas maliciosos modifican el hosts para desviar webs de bancos o bloquear actualizaciones. Por eso Microsoft Defender y otros antivirus vigilan este archivo. Si añades ciertos dominios, sobre todo de Microsoft, Defender puede marcarlo como amenaza y restaurar el archivo. Revisa el historial de protección de Seguridad de Windows: si aparece una detección sobre el archivo hosts, sabrás quién lo ha deshecho.
El archivo se guardó con otro nombre
Si en el Bloc de notas no cambiaste el filtro a Todos los archivos, es fácil acabar con hosts.txt. Windows solo lee el archivo llamado exactamente hosts. Activa Ver > Mostrar > Extensiones de nombre de archivo en el Explorador para descubrirlo.
Errores habituales
- Poner
http://o una ruta en la entrada. Solo va el nombre del dominio. - Olvidar la variante con
wwwy creer que el bloqueo no funciona. - Comprobar con
nslookup, que ignora el hosts por diseño. - Dejar entradas de prueba después de una migración y seguir viendo el servidor viejo.
- Editar sin permisos y guardar una copia en Documentos que Windows nunca lee.
- Usar
*.dominio.comesperando que bloquee todos los subdominios.



