lunes, 26 de septiembre de 2011

Servidor DNS cache (simple)

Continuando con la documentación de lo hecho en el curso, y quitando elementos de mi lista de articulos pendientes por publicar, ahora es el momento del servidor DNS...

La teoría de DNS, la podemos encontrar completa en sitios como Wikipedia, por lo cual no tocare ese tema. Debo aclarar, que lo que acá escribo, esta probado en Fedora 15 y aplica a cualquier distro RHEL (se uso en Centos v. 6)

El primer paso, como siempre es ejecutar la instalación:

# yum -y install bind bind-utils

Ya instalado, poner a andar el servidor, es tan sencillo como modificar el archivo de configuración del servicio /etc/named.conf, aca lo que se debe es agregar un par de parametros y listo:
  • query-source    port 53; query-source-v6 port 53; nos indican por que puerto nuestro servidore escuchará solicitudes.
  •  forwarders { 200.44.32.12; 200.11.248.12; }; Indica los DNS de nivel superior, desde el cual nuestro servidor ira aprendiendo.
  • forward only; indica a nuestro DNS que solo pida al principal lo que no conozca.
Al final, nuestro archivo queda algo asi:

//
// named.conf
//
// Provided by Red Hat bind package to configure the ISC BIND named(8) DNS
// server as a caching only nameserver (as a localhost DNS resolver only).
//
// See /usr/share/doc/bind*/sample/ for example named configuration files.
//

options {
    listen-on port 53 { 127.0.0.1; 192.168.2.1;};
    listen-on-v6 port 53 { ::1; };
    directory     "/var/named";
    dump-file     "/var/named/data/cache_dump.db";
        statistics-file "/var/named/data/named_stats.txt";
        memstatistics-file "/var/named/data/named_mem_stats.txt";
    allow-query     { localhost; any;};
    recursion yes;

    dnssec-enable yes;
    dnssec-validation yes;
    dnssec-lookaside auto;
    query-source    port 53;
    query-source-v6 port 53;
    forwarders { 200.44.32.12; 200.11.248.12; };
    forward only;

    /* Path to ISC DLV key */
    bindkeys-file "/etc/named.iscdlv.key";
};

logging {
        channel default_debug {
                file "data/named.run";
                severity dynamic;
        };
};

zone "." IN {
    type hint;
    file "named.ca";
};

include "/etc/named.rfc1912.zones";

 
Ahora toca hacer que nuestro equipo y los demás de la red empleen nuestro DNS, para ello simplemente editamos el /etc/resolv.conf, comentando lo que pueda tener y dejando:

nameserver 127.0.0.1

Hay que aclarar, que en lo anterior es para el servidor, en los clientes de la red, lo que debemos hacer es cambiar el 127.0.0.1 (direccion de localhost) por la dirección IP del servidor DNS

Hecho esto ya podemos reiniciar el servicio y listo... A disfrutar nuestro DNS

No hay comentarios: