Linux

Te enseñamos a vaciar el caché de DNS en Linux

Los ordenadores guardan registros de cada sitio web que visita en una «caché DNS». El propósito de este caché es ahorrar tiempo cuando el usuario intenta acceder a un dominio. El sistema no tiene que buscarlo cada vez manualmente.

En general, el almacenamiento en caché DNS hace que el uso de Internet sea más rápido. Es por eso que prácticamente todos los sistemas operativos, desde macOS hasta Windows y Linux, lo hacen.

Aún así, por muy útil que sea el almacenamiento en caché de DNS. A veces pueden surgir problemas. Como ver un sitio web antiguo en lugar del nuevo actualizado, no conectarse a un servidor remoto, etc.

Una buena manera de evitar este tipo de errores en los ordenadores Linux es «limpiar» la caché de DNS en Linux. Al purgar la caché de DNS, ésta refrescará la base de datos de DNS. Eliminará muchos de los problemas de resolución que experimentan muchos usuarios.

Flush DNS – Systemd Resolved

En este punto, la mayoría de los usuarios de Linux están ejecutando un sistema operativo que tiene el sistema Systemd init integrado. Aunque el tema de Systemd es divisivo en la comunidad.

Hay una cosa que todo el mundo sabe. Systemd hace que los ajustes profundos y complicados a nivel de sistema operativo y el mantenimiento sean mucho más fáciles de lo que eran en el pasado. Este hecho es especialmente cierto con la limpieza de la caché de DNS.

Systemd maneja la caché DNS en algo conocido como «systemd resolved». Es una utilidad estándar que encuentra su camino en la mayoría de los sistemas operativos Linux.

Para determinar si su sistema operativo está usando Systemd Resolved para manejar DNS y caché DNS en el sistema. Inicia una ventana de terminal presionando Ctrl + Alt + T o Ctrl + Shift + T en el teclado. Después de eso, ejecuta el comando systemctl status en el archivo systemd-resolved.service.

systemctl status systemd-resolved.service


Revise la impresión de Systemd Resolved en la ventana del terminal y localice la sección «Activo» una vez que haya localizado la sección «Activo» y asegúrese de que tiene «activo (en ejecución)» junto a ella. Si lo hace, su sistema Linux lo está usando para administrar sus DNS.

Para vaciar la caché DNS de Systemd Resolved. Deberá utilizar una de las funciones incorporadas del Systemd Resolved. Específicamente, el comando flush cachea. Inmediatamente limpiará los DNS y te pondrá en marcha de nuevo.

sudo resuelto por el sistema –flush-caches

O, si no puedes usar sudo, hazlo:

su –
resuelto por el sistema –flushcaches

Una vez que hayas utilizado el comando flushcaches. Las cachés DNS del sistema deberían estar suficientemente limpias. Sin embargo, si después de ejecutar este comando sigue teniendo problemas. Puede ser una buena idea reiniciar el servicio por completo. Para ello, utilice el comando de reinicio systemctl.

sudo systemctl reiniciar systemd-resolved.service

¿No puedes usar sudo? Inicia sesión como root con su antes de intentar reiniciar el servicio con systemd.

su –
systemctl reiniciar systemd-resolved.service

Cuando Systemd-Resolved termina de reiniciar. Todos los problemas de DNS deben ser corregidos.

DNS a ras – Máscara DNS

DNSMasq es otra solución DNS popular para la plataforma Linux que utilizan muchos sistemas operativos. Al igual que la herramienta Systemd-Resolved. Los usuarios pueden interactuar con ella con el comando systemctl. Para determinar si su sistema operativo está utilizando la herramienta DNSMasq para gestionar DNS, ejecuta el comando de estado.

systemctl status dnsmasq.service


Lee la impresión de estado que systemd proporciona en pantalla. Dirígete a la sección «Activo» de la lectura. Escanea a través de él y busca «activo (en ejecución)» para confirmar que el servicio está activo.

Si este es el caso, es posible limpiar inmediatamente la caché DNS para DNSMasq utilizando el comando systemctl restart. En el terminal, introduce el siguiente comando.

sudo systemctl reiniciar dnsmasq.service

O, para aquellos que no pueden usar los comandos systemd con sudo, intenta iniciar sesión como root antes de intentar reiniciar.

su
systemctl reiniciar dnsmasq.service

DNS a ras – NSCD

NSCD es el sistema de caché DNS preferido para la mayoría de los sistemas operativos Linux basados en RedHat. Por lo tanto, si utiliza OpenSUSE Linux, CentOS o algo similar. Es muy probable que tengas que preocuparte por ello para vaciar su caché de DNS.

Nota: aunque Fedora Linux está basado en RedHat, por defecto no almacena una caché DNS.

Para determinar si tu sistema operativo Linux utiliza NSCD. Necesitará usar el comando de estado, ya que es un servicio systemd.

estado del sistema nscd.service

Ejecutar el comando de estado en el servicio NSCD le dará mucha información detallada al respecto. Busca y encuentra la sección que dice «Activo». Si tu sistema lo estás usando, verás un texto verde que dice «active (running)».

La limpieza de la caché DNS con NSCD funciona casi como cualquier otro sistema de almacenamiento en caché que funcione con systemd. Todo lo que el usuario necesita hacer es ejecutar el comando systemctl restart. Recargará el servicio y limpiará automáticamente la caché de DNS. Lo que solucionará cualquier problema de DNS que pueda estar experimentando.

sudo systemctl reiniciar nscd.service

Alternativamente, si tu sistema operativo Linux deshabilita la ejecución de comandos systemctl con sudo. Puedes reiniciar el servicio iniciando sesión en la cuenta Root usando su.

su

systemctl reiniciar nscd.service


¿Tienes alguna pregunta o problema relacionado con el tema del artículo? Queremos ayudarte.

Deja un comentario con tu problema o pregunta. Leemos y respondemos todos los comentarios, aunque a veces podamos tardar un poco debido al volumen que recibimos. Además, si tu consulta inspira la escritura de un artículo, te notificaremos por email cuando lo publiquemos.
*Moderamos los comentarios para evitar spam.

¡Gracias por enriquecer nuestra comunidad con tu participación!

Deja un comentario