Cómo limpiar la caché DNS en Windows, macOS y Linux

Los sistemas operativos guardan temporalmente respuestas DNS para acelerar consultas futuras. Después de cambiar una IP, un registro o la delegación de un dominio, esa caché DNS local puede hacer que un equipo continúe utilizando información anterior aunque los servidores autoritativos ya respondan correctamente.

Vaciar la caché es una prueba de diagnóstico segura, pero solo afecta al dispositivo donde se ejecuta. No acelera la actualización de los resolvers del proveedor de Internet ni modifica la zona DNS.

Antes de limpiar la caché

Confirmá primero que el dominio debería resolver a un valor distinto. Si el registro autoritativo todavía es incorrecto, vaciar el equipo no solucionará el problema.

También anotá la respuesta actual para poder comparar. En Windows podés usar nslookup; en macOS y Linux, dig, host o nslookup si están instalados.

Cachés que pueden intervenir

  • Navegador: puede conservar resoluciones, conexiones y contenido.
  • Sistema operativo: mantiene una caché del resolver local.
  • Router: algunos equipos actúan como intermediarios DNS.
  • Red corporativa o proveedor de Internet: utiliza resolvers recursivos propios.
  • CDN o proxy: puede almacenar contenido aunque DNS ya sea correcto.

Por eso vaciar una sola capa no siempre cambia inmediatamente lo que muestra el navegador.

Windows 10 y Windows 11

Abrí Símbolo del sistema, PowerShell o Terminal de Windows. Para ver primero las entradas del resolver podés ejecutar:

ipconfig /displaydns

Para limpiar la caché:

ipconfig /flushdns

Windows debería indicar que vació correctamente la caché de resolución DNS. Microsoft también ofrece el comando equivalente de PowerShell:

Clear-DnsClientCache

Si aparece un error de permisos, abrí la terminal con privilegios de administrador. No es necesario ejecutar release, renew o restablecer la red para una limpieza DNS normal.

Comprobar el resultado en Windows

Realizá una consulta nueva:

nslookup ejemplo.com

Para consultar un resolver específico:

nslookup ejemplo.com 1.1.1.1

En PowerShell también podés utilizar:

Resolve-DnsName ejemplo.com

Si la respuesta sigue siendo inesperada, compará el servidor DNS mostrado por la herramienta y revisá el archivo hosts.

macOS

El mecanismo interno puede variar entre versiones de macOS. En versiones modernas suele utilizarse esta combinación desde Terminal:

sudo dscacheutil -flushcache
sudo killall -HUP mDNSResponder

Ingresá la contraseña de un usuario administrador cuando el sistema la solicite. La contraseña no se muestra mientras escribís. El comando puede finalizar sin presentar un mensaje de confirmación.

Luego cerrá y abrí nuevamente el navegador y comprobá el dominio:

dig ejemplo.com A

Si el comando no está disponible o la versión de macOS utiliza otro mecanismo, consultá la documentación correspondiente antes de reiniciar servicios del sistema.

Linux con systemd-resolved

No existe un único procedimiento para todas las distribuciones. Primero comprobá si el equipo utiliza systemd-resolved:

resolvectl status

Si el servicio está activo, limpiá sus cachés con:

sudo resolvectl flush-caches

La documentación de systemd indica que este comando elimina las respuestas DNS almacenadas localmente por el servicio. Después realizá una nueva consulta:

resolvectl query ejemplo.com

Otras configuraciones de Linux

Algunas distribuciones utilizan NetworkManager, dnsmasq, nscd, un resolver local diferente o ninguna caché propia. No reinicies servicios al azar. Identificá primero cuál está activo con las herramientas de la distribución.

Si el equipo no ejecuta un servicio de caché DNS, el dato anterior puede estar en el navegador, el router o el resolver de la red. En ese caso, el comando de systemd no tendrá efecto.

Revisar el archivo hosts

El archivo hosts puede forzar una dirección sin consultar DNS. Una entrada antigua seguirá aplicándose aunque vacíes la caché.

  • Windows: C:\Windows\System32\drivers\etc\hosts
  • macOS y Linux: /etc/hosts

No elimines líneas que no comprendas. Buscá únicamente una entrada explícita para el dominio que estás diagnosticando y guardá una copia antes de modificarla.

Navegador y caché de contenido

Después de limpiar el sistema, cerrá completamente el navegador y volvé a abrirlo. Una ventana privada ayuda a descartar cookies y parte de la caché web, pero no siempre utiliza una caché DNS completamente independiente.

Si el nombre resuelve a la IP correcta pero la página muestra contenido anterior, el problema ya no es DNS. Revisá caché del sitio, plugin, servidor, CDN o proxy.

Router y conexión de red

Reiniciar el router puede limpiar algunas cachés locales, pero también interrumpe la conexión de todos los usuarios. Antes de hacerlo, probá temporalmente otra red, como datos móviles. Si ambas redes entregan respuestas distintas, probablemente utilizan resolvers con cachés diferentes.

También podés configurar temporalmente un resolver público para comparar, sin asumir que el DNS habitual está defectuoso.

Vaciar la caché no acelera la propagación global

El comando local elimina información del equipo. Los resolvers externos pueden conservar la respuesta anterior hasta que expire su TTL. Para comprender ese proceso, revisá cuánto tarda un cambio DNS y qué significa propagación.

Orden recomendado de diagnóstico

  1. Consultá los nameservers autoritativos.
  2. Compará dos resolvers públicos.
  3. Revisá registros A y AAAA.
  4. Comprobá el archivo hosts.
  5. Vaciá la caché del sistema operativo.
  6. Reabrí el navegador y revisá su caché.
  7. Probá otra red.
  8. Si DNS ya es correcto, diagnosticá el servidor o la CDN.

Este orden evita atribuir a “propagación” problemas que en realidad pertenecen a la zona autoritativa, el archivo hosts o la caché del contenido web.