Servidor DNS-Cache
Cuando entras en guia-ubuntu.org o a cualquier sitio sin utilizar una dirección IP en realidad le estás diciendo al ordenador es:
Pregunta al servidor DNS cual es la IP correspondiente a este dominio, luego con este dato se realiza la conexion.
Normalmente la IP no cambia cada día, si entras 100 veces en un sitio ¿para qué preguntarle al servidor cada vez por la IP?, un cache evita eso: guarda un listado de las peticiones para no tener que estar preguntando cada vez.
La latencia causada por preguntar al servidor DNS por cada sitio desaparece si ya se tiene el dato en local. Además si tu servidor DNS se cae puedes seguir entrando en los sitios que anteriormente ya habías entrado.
Instalacion
Instalar dnsmasq
sudo apt-get install dnsmasq
Copiar /etc/resolv.conf como /etc/resolv.dnsmasq.conf.
sudo cp /etc/resolv.conf /etc/resolv.dnsmasq.conf
Editar /etc/resolv.conf
sudo gedit /etc/resolv.conf nameserver 127.0.0.1 <----- Añadiendo esta linea al principio del archivo
Y con esto ya debería funcionar.
¿Está funcionando?
Utilizaremos el comando dig para comprobarlo. Para lo cual debemos intalar el paquete dnsutils.
sudo apt-get install dnsutils
Y ahora podemos comprobar si nuestro DNS-Cache funciona:
dig guia-ubuntu.org | grep Query ;; Query time: 89 msec
Lo ejecutamos otra vez par comprobar
dig guia-ubuntu.org | grep Query ;; Query time: 0 msec
Dig hace una consulta DNS y entre otros parámetros ofrece el de “Query time” que informa de cuanto tiempo ha tardado en saber la IP, la primera vez al no tenerla guardada pueden pasar 50ms, 100ms, 200ms, dependiendo de la latencia de tu conexión, la segunda vez ya tiene el dato y baja a entre 0 y 2ms +/-.
Esto es recomendado para todo el mundo pero en la práctica es casi obligatorio para usuarios de 56k para mejorar un poco la ya de por si pésima calidad de la línea.
Enlaces externos
How-to DNS-cache (en inglés) How-to en el que se basa este artículo