DNS flush: vaciar la caché del DNS

Cualquiera que se mueva por Internet deja rastros sobre sus actividades, un hecho que en la actualidad conocen incluso los usuarios menos experimentados. Los gestores de páginas web utilizan algunas técnicas, como las cookies o las aplicaciones JavaScript, para registrar el comportamiento de los visitantes y obtener datos que luego utilizan para optimizar la web y personalizar el contenido sin que el usuario revele activamente sus datos personales. Por lo tanto, muchos usuarios recurren cada vez más a las herramientas de bloqueo de anuncios y proxys o a la limpieza del historial del navegador y las cookies para poner fin a la recopilación de datos y proteger su propia privacidad.

Sin embargo, muy pocos usuarios son conscientes de que los sistemas operativos también almacenan información sobre el comportamiento de navegación de los internautas. Por ejemplo, la caché del DNS, generada automáticamente, contiene entradas temporales sobre todas las páginas web visitadas. En las siguientes secciones explicamos exactamente de qué se trata esta caché y por qué tiene sentido realizar un DNS flush (limpieza de la caché del DNS) regularmente.

¿Qué es la caché del DNS?

Para que los nombres de dominio como www.ejemplo.com se conviertan en direcciones numéricas que puedan ser procesadas por sistemas informáticos se necesitan los llamados servidores DNS.Por defecto, estos "servidores de nombres" entran en juego cada vez que el usuario intenta acceder a una página web a través de un ordenador. En caso de un gran número de visitantes, puede darse una sobrecarga del servidor y provocar el recurrente error “DNS Server Not Responding”.

Por esta razón, los sistemas operativos como Windows y macOS dependen de su propia caché para interpretar las direcciones, la llamada caché del DNS, que almacena toda la información relevante para la resolución de nombres, si bien cada entrada es válida durante cierto período de tiempo (TTL: Time to live). Dentro de este rango, las peticiones se responden directamente desde la caché sin tener que pasar por el servidor DNS.

Nota

Algunas aplicaciones como los navegadores web y los servidores de los proveedores de Internet también tienen su propia caché del DNS para acelerar la resolución de las direcciones.

¿Qué información contiene la caché del DNS?

Las unidades de información o entradas en la caché del DNS se denominan registros de recurso (RR) y se visualizan en código ASCII (en formato comprimido). Se componen de los elementos siguientes (algunos de ellos opcionales):

  • Resource data (rdata): datos que describen el registro, por ejemplo, la dirección o el nombre del host.
  • Record type: tipo de la entrada creada, por ejemplo, "A": IPv4 (valor decimal: 1) o "AAAA": dirección IPv6 (valor decimal: 28).
  • Record name (opcional): nombre de dominio del objeto para el que se ha creado la entrada DNS.
  • Time to live (opcional): período de validez del registro de recurso en segundos.
  • Class (opcional): grupo de protocolos al que pertenece el RR (principalmente "IN" para Internet).
  • Resource data length (opcional): valor para especificar la longitud de los datos del recurso.

Por lo tanto, la caché del DNS contiene la dirección IP del respectivo dominio o host, así como información adicional que lo especifica como el período de validez del registro o el grupo de protocolos apropiado. Por ejemplo, una entrada para el dominio www.ejemplo.com (IPv4: 172.27.171.106), que debería ser válida durante una hora, equivaldría a:

www.example.com.    3600  IN  A  172.27.171.106

¿Por qué es recomendable realizar un DNS flush de forma regular?

Como hemos mencionado, es necesario limpiar la caché del DNS de forma manual, ya que no se produce automáticamente. Las entradas permanecen en la memoria intermedia hasta que el TTL definido ha expirado. Hay tres razones en particular para poner a cero el registro del DNS mediante una limpieza, independientemente del período real de validez de los registros individuales:

  1. Para ocultar el comportamiento de navegación: aunque el seguimiento del usuario en Internet se realiza principalmente mediante cookies, JavaScript y similares, la caché del DNS sigue siendo un objetivo potencial para todos los recopiladores de datos. En base a las direcciones listadas, incluyendo información adicional como el período de validez (si se especifica), el registro puede obtener una visión general aproximada de las páginas web visitadas. En cualquier caso, la memoria de direcciones muestra las páginas a las que llama.
     
  2. Como medida de seguridad contra ataques de terceros: también debes vaciar la caché de DNS por razones de seguridad. Con la información de la caché se pueden interceptar datos importantes y privados. Si los ciberdelincuentes obtienen acceso a la caché del DNS, pueden manipular las entradas y redirigirlas a sitios web maliciosos, por ejemplo. Este ataque o spoofing de DNS se utiliza a menudo para acceder a datos de inicio de sesión confidenciales, por ejemplo, en la banca online. Con un DNS flush también puedes deshacerte de estos registros manipulados.
     
  3. Para resolver problemas técnicos: la DNS flush en Linux, Windows o macOS es también a menudo una solución efectiva cuando se producen problemas técnicos al llamar a aplicaciones web. Por ejemplo, es posible que, debido a entradas obsoletas, se muestre una versión incorrecta de la página web visitada. En tal caso, es probable que el nombre de dominio aparezca en la caché con la dirección IP incorrecta o antigua, lo que puede solucionarse al limpiar la caché del DNS. Como resultado, la petición se redirige al servidor DNS apropiado y no se responde desde la caché. Con la información de la dirección ya actualizada, la conexión a la página web vuelve a funcionar de forma correcta.
Consejo

Puedes ver la caché del DNS actualmente almacenada en tu sistema en cualquier momento. En Windows, por ejemplo, simplemente abre la línea de comandos e introduce el comando "ipconfig /displaydns".

Limpiar la caché del DNS: cómo funciona

No hay ninguna regla que determine el momento perfecto para vaciar la caché del DNS, a menos que haya un problema técnico importante que pueda resolverse haciéndolo. También debes hacer un DNS flush si descubres que el navegador te redirige a una página a la que no has llamado. Este caso no ha de ser necesariamente un ataque de spoofing, pero para descartar esta situación se recomienda limpiar el DNS.

Nota

Tanto si borras la caché DNS por una razón específica o simplemente como medida preventiva, no tienes que preocuparte de que tenga un efecto notable al navegar por la red: solo la primera llamada de una dirección después de restablecer la caché debería durar un poco más de lo normal si se ha cargado basándose en registros de recursos guardados.

Dado que los pasos que hay que seguir para limpiar el DNS difieren de un sistema operativo a otro, hemos recopilado instrucciones para cada uno de los sistemas en las siguientes secciones.

 

Windows 7: guía para un DNS flush

Como usuario de Windows 7, puedes limpiar la caché del DNS desde la línea de comandos. Para llegar hasta la terminal, haz clic en el botón “Inicio” de Windows y escribe "cmd" en la búsqueda. A continuación, inicia la herramienta de línea de comandos pulsando la tecla “Intro”.

Introduce el siguiente comando:

ipconfig /flushdns

Si vuelves a pulsar la tecla “Intro”, Windows borrará la caché del DNS y recibirás un mensaje que indica que el búfer se ha vaciado correctamente.

Windows 8: cómo realizar una limpieza del DNS

En Windows 8 también se utiliza la línea de comandos para limpiar el DNS. Primero abre el menú “Inicio” y busca “cms” en el buscador. A continuación, haz clic con el botón izquierdo del ratón en el icono.

Para limpiar la caché del DNS, introduce el mismo comando:

ipconfig /flushdns

A continuación, inicia el proceso de borrado pulsando la tecla “Intro”. Aparecerá un mensaje en la línea de comandos para informarte sobre el éxito de la operación.

Windows 10: DNS flush en esta versión

La línea de comandos también funciona en Windows 10, aunque difiere un poco del procedimiento para Windows 7 y 8. En el primer paso, utiliza la función de búsqueda para encontrar la terminal de línea de comandos cmd.

Utiliza el comando "ipconfig /flushdns" para vaciar la caché del DNS:

Si la operación ha funcionado correctamente, aparecerá un mensaje para informarte del éxito del proceso.

DNS flush en Linux: así funciona

Los sistemas Linux no tienen una caché DNS predeterminada. Solo al utilizar aplicaciones apropiadas como nscd (Name Service Caching Daemon), pdnsd, dns-clean o dnsmasq se ofrece una función para almacenar información DNS localmente. Si utilizas uno de estos servicios para el almacenamiento de la caché, debes acceder a él desde la terminal para eliminarla.

Existe un comando de borrado concreto para pdnsd:

sudo pdnsd-ctl empty-cache

Para limpiar la caché DNS de dnsmasq, dns-clean o nscd, reinicia el servicio correspondiente:

sudo /etc/init.d/dnsmasq restart
sudo /etc/init.d/nscd restart
sudo /etc/init.d/dns-clean restart

Cómo funciona un DNS flush en un Mac

Al igual que Windows, macOS viene con una caché DNS integrada que recoge automáticamente la información y, por lo tanto, debe vaciarse regularmente. Sin embargo, a diferencia de los sistemas Microsoft, el comando para restablecer la caché varía de una versión a otra del sistema operativo. Por lo tanto, el código que necesitas introducir en el terminal depende de la versión con la que estés trabajando:

macOS 10.12.0 (Sierra):

sudo killall -HUP mDNSResponder

OS X 10.10.4 (Yosemite) y 10.11.0 (El Capitan):

sudo dscacheutil -flushcache;
sudo killall -HUP mDNSResponder

De OS X 10.10.1 a 10.10.3 (Yosemite):

sudo discoveryutil mdnsflushcache
sudo discoveryutil udnsflushcaches

OS X 10.9.0 (Mavericks):

sudo dscacheutil -flushcache;
sudo killall -HUP mDNSResponder

¡No te vayas! ¡Tenemos algo para ti!
Consigue tu dominio .es un año gratis.

Introduce el dominio que deseas en la barra de búsqueda para comprobar su disponibilidad.
12 meses desde 0€/año IVA incl.
después 12,10 €/año IVA incl.