jueves, 12 de febrero de 2015

Instalación de un Servidor DNS

DNS es la sigla inglesa de Domain Name System (Sistema de Nombres de Dominios). Este sistema correlaciona el nombre de una página electrónica con una dirección IP y viceversa.

El Protocolo DNS

Sistema de Nombres de Dominios

Siempre que se utiliza un nombre para designar a un servidor, como sucede con www.google.com , éste debe traducirse en la forma de una dirección IP única del mismo servidor. Este proceso se conoce como resolución y es efectuado gracias al Domain Name System (DNS) (o en español, Sistema de Nombres de Dominios).
Este sistema está constituido por una red global de servidores, organizados en un árbol, donde cada servidor contiene una tabla de asociaciones entre los nombres de los servidores y sus respectivas direcciones IP.

Cómo funciona el DNS


Nuestro servidor se comporta como un auténtico servidor DNS para nuestra red local. Atenderá directamente a las peticiones de resolución de direcciones pertenecientes a la red local y reenviará a servidores DNS externos las peticiones del resto de direcciones de Internet.
Supongamos que se pretende contactar el servidor www.google.com//. El sistema iniciará una serie de contactos entre otros sistemas diversos, para encontrar cuál es la dirección asociada a la dirección pretendida. Una versión muy simplificada sería la siguiente: posiblemente, el sistema tendrá que contactar a su servidor de DNS, que a su vez, contactará los servidores DNS de tope para indagar acerca del dominio “google.con”, y enseguida contactar el servidor DNS de google para saber la dirección IP de “www.google.com//”.

Aunque cada investigación o resolución tarda sólo milisegundos, la visualización de una página web en un browser puede resultar bastante penalizada por este proceso. Especialmente, cuando es posible que varios elementos de la página estén alojados en diversos servidores, cuyas direcciones deban ser resueltas individualmente.

Servidor DNS esclavo

Un servidor esclavo actuará como un servidor espejo de un servidor DNS maestro. Permanecerá sincronizado con el maestro. Se utilizan para repartir las peticiones entre varios servidores aunque las modificaciones solo se realicen en el maestro. En redes locales salvo por razones de disponibilidad, es raro que exista la necesidad de tener dos servidores DNS ya que con uno será suficiente.



Cache DNS

En este modo de funcionamiento, nuestro servidor se comporta como si fuera un auténtico servidor DNS para nuestra red local aunque realmente no sea un servidor DNS propiamente dicho. Cuando recibe una petición de DNS por parte de un cliente de nuestra red, la trasladará a un DNS maestro que puede estar en nuestra red o fuera, almacenará en una memoria caché la respuesta y a la vez la comunicará a quien hizo la petición. Si un segundo cliente vuelve a realizar la misma petición, como nuestro servidor tiene la respuesta almacenada en su memoria caché, responderá inmediatamente sin tener que cursar la petición a ningún servidor DNS de Internet.

Disponer de un servidor caché DNS en nuestra red local aumenta la velocidad de la conexión a Internet pues cuando navegamos por diferentes lugares, continuamente se están realizando peticiones DNS. Si nuestro caché DNS almacena la gran mayoría de peticiones que se realizan desde la red local, las respuestas de los clientes se satisfarán prácticamente de forma instantánea proporcionando al usuario una sensación de velocidad en la conexión.


Es un modo de funcionamiento de sencilla configuración ya que prácticamente lo único que hay que configurar son las direcciones IP de un DNS primario y de un DNS secundario. Muchos routers ADSL ofrecen ya este servicio de caché, tan solo hay que activarlo y configurar una o dos IPs de servidores DNS en Internet. En los PCs de nuestra red local podríamos poner como DNS primario la IP de nuestro router y como DNS secundario una IP de un DNS de Internet.



Objetivo

Aunque las direcciones Internet tengan nombres “legibles” (www.google.com), éstos deben ser traducidos a la dirección IP (213.129.232.18) del respectivo servidor. Esa conversión es efectuada realizando una búsqueda en el DNS (Domain Name System).

Una cache DNS guarda localmente los resultados de esa búsqueda para utilización futura, evitando la repetición de búsquedas y aumentando drásticamente la velocidad de respuesta.

Instalación

aptitude install bind9 bind9-doc dnsutils




BIND (Berkeley Internet Name Domain, anteriormente: Berkeley Internet Name Daemon) es el servidor de DNS más comúnmente usado en Internet, especialmente en sistemas Unix, en los cuales es un standard de facto. Es patrocinado por la Internet Systems Consortium. BIND fue creado originalmente por cuatro estudiantes de grado en la University of California, Berkeley y liberado por primera vez en el 4.3BSD. Paul Vixie comenzó a mantenerlo en 1988 mientras trabajaba para la DEC.

Una nueva versión de BIND (BIND 9) fue escrita desde cero en parte para superar las dificultades arquitectónicas presentes anteriormente para auditar el código en las primeras versiones de BIND, y también para incorporar DNSSEC (DNS Security Extensions). BIND 9 incluye entre otras características importantes: TSIG, notificación DNS, nsupdate, IPv6, rndc flush, vistas, procesamiento en paralelo, y una arquitectura mejorada en cuanto a portabilidad. Es comúnmente usado en sistemas Linux.

BIND trabaja en la capa de aplicación. Si el segmento a enviar es menor que 512 Bytes utiliza el  protocolo UDP, de lo contrario utiliza el protocolo TCP. El número de puerto que utiliza el protocolo DNS para comunicarse con la capa de aplicación es el número 53.

Antes de iniciar la configuración se debe colocar la dirección IP static

nano /etc/network/interfaces 



Una vez que se realiza la configuración de dirección a static se procede a guardar los cambios y restaurar el servicio.

# /etc/init.d/networking restart 

Archivos de configuracion del DNS

Nota

El archivo de configuración del DNS es el archivo /etc/bind/named.conf, pero este hace referencia a otros cuantos archivos como por ejemplo:

  • Archivo named.conf: Archivo principal de configuración
  • Archivo named.conf.options: Opciones genéricas
  • Archivo named.conf.local: Especificación particular de este servidor DNS
  • Archivo db.127: Especificación dirección de retorno. Es el archivo de definición de la zona de resolución inversa correspondiente a mi IP 127.*.*.* (es la zona pikim123inversa de “localhost”). 
  • Archivo db.root: DNSs de nivel superior: referencia los servidores de la raíz del árbol de nombres. 
  • Archivo db.local: Fichero de definición de la zona localhost que es el interfaz loopback (para que mi equipo responda al nombre localhost) 
  • Otros archivos: db.0, db.255, db.empty, rndc.conf, rndc.key, zones.rfc1918

Configuración

una vez instalado los paquetes necesarios, se procede a configurar los archivos named.conf.options.



una vez dentro del archivo des comentamos los campos para especificar las direcciones IP de la siguiente manera:
forwarders{
8.8.8.8 :
8.8.4.4 :
}:



Guardamos los cambios...

Lo siguiente que haremos sera especificar donde estarán los archivos que contendrán las búsquedas directas o inversas, para ello accedemos al siguiente archivo /etc/bind/named.conf.local, una vez dentro del archivo especificamos de la siguiente manera las busquedas

-zone: dominio de la infraestructura o dirección de red.
-type: master para servidor primario o slave para secundario.
-file: ruta de ubicación del archivo con las tablas de direccionamiento.

NOTA: Se debe abrir y cerrar después de zone con corchetes { }.



Luego de guardar el archivo colocamos el siguiente comando para verificar que no tenga errores el archivo:

#named-checkconf

Ahora es el momento de configurar los archivos que contendrán el direccionamiento IP de búsqueda directa o inversa, para ello accedemos al directorio principal del servicio:

#cd /etc/bind.

Dentro de este directorio habrán varios archivos, de los cuales nos interesan dos, db.127 y db.local, que serán una plantilla de las tablas de búsqueda inversa y directa respectivamente.




Lo que haremos sera copiar estos archivos a la ubicación especificada anteriormente, el archivo db.local lo  utilizaremos para la búsqueda directa y db.127 para la búsqueda inversa.



Ahora hay que acceder a configurar a estos archivos, para eso tenemos que ir al directorio que los contiene (podemos configurar la ubicación donde nosotros necesitemos, no tiene porque ser la que yo utilizo en este tutorial).



El primer archivo que configuraremos será el de la búsqueda directa, para ello accedemos al archivo, en mi caso tiene nombre de plataforma.db

nano platafoma.db

Una vez que entramos al archivo de configuración veremos esta pantalla, donde debemos de configurar varias líneas.


En esta imagen se observa el archivo configurado. Es importante tener este archivo bien configurado para que funcione correctamente,  comprobar que tras el dominio y usuario administrador del dominio existe un punto (.)
En las líneas de abajo configuremos nuestro servidor DNS, especificando con:

- NS: El servidor o servidores DNS.
- A: Espeficicamos una dirección IP al nombre asignado (por ejemplo, el nombre dns hace referencia a la IP 10.16.106.1).



Una vez configurado el archivo, lo guardamos y comprobamos la sintaxis con estos dos comandos: named-checkzone y named-checkconf



Ahora es el momento de configurar la búsqueda inversa, para ello se entra al archivo especificado anteriormente, 10.16.rev. Lo configuramos de la siguiente manera, recordando el punto (.) trás dominio y usuario administrador del dominio y donde:


- NS: Servidor o servidores de DNS.
- PTR: Especificamos un nombre a la dirección IP asignada.

En este ejemplo, asignaré la dirección IP 10.16.106.153 al nombre usuario-PC



Volvemos a comprobar que la sintaxis esté correctamente escrita con los comandos named-checkzone y named-checkconf


Una vez configuradas las búsquedas directas e inversas, debemos de especificar a nuestro servidor que el servidor DNS es el mismo, para ello accedemos al archivo /etc/resolv.conf

nano /etc/resolv.conf

Escribiendo las siguientes lineas, donde el nameserver será la propia dirección IP del servidor DNS y search el dominio al que hará referencia en las búsquedas.



Por último, es muy importante reinicar el servicio DNS (bind9) para ello escribimos:

/etc/init.d/bind9 restart



COMPROBACIONES DEL SERVICIO

Una vez configurado el servidor DNS, debemos de comprobar que resuelve nombres y direcciones IP’s, para ello desde Linux podemos utilizar los comandos nslookup, host o dig, trás el FQDN del equipo (nombre + dominio) o la dirección IP, veamos un ejemplo.




3 comentarios:

  1. Hola quiero saber algo de la canaima con respecto a cuando se instala mozilla que me esta fastidiando mucho, por acá no puedo adjuntar fotos si puedes me responderias al correo? raulalejandro2392@gmail.com
    Saludos

    ResponderEliminar
    Respuestas
    1. en canaima instala el chrome de google entra como root en la terminal tipeas aptitude install gedbi luego de tu navegador te vas a google descargas google chrome para debian 32bits cuando termine la descarga das click derecho en la aplicacion google_chrome te vas apropiedades/abrir con/ seleccionas usar paqueteria Gedbi predeterminado .. guardas das doble click en google_chrome y listo instalas y olvidate del mozilla q no sirve para nada mi correo sh0ix@hotmail.com web www.todotecpc.com.ve

      Eliminar
  2. Disculpa ¿este servidor es solo local? o también resuelve desde afuera de la red

    ResponderEliminar