12.170 cursos gratis
8.774.136 alumnos
Facebook Twitter YouTube
Busca cursos gratis:

Capítulo 7:

 Servicio DNS con Bind (demonio named)

El DNS es extremamente importante y difícil de entender, pero podríamos decir que es el encargado de transformar direcciones IP reales (200.72.13.52) a nombres IP (www.midominio.tld) y viceversa e informar de una serie de datos a otros DNS y servidores existentes en el mundo.

En RH su configuración es algo medianamente fácil de hacer ya que es totalmente gráfico (aunque existe la posibilidad de configurar manualmente), pero de todas formas debemos entender algunos conceptos antes de entrar e configurar.

DNS es un acrónimo de Domain Name System (Sistema de Nombres de Dominio) y el software que utilizaremos para tal fin es el Bind de The Internet Software Consortium, coordinado por Paul Vixie, este paquete de software provee un programa llamando named, un demonio encargado de esta labor.

En la configuración de un DNS (Bind 9.0) intervienen los siguientes archivos;
- /etc/named.conf
- /var/named/named.local
- /var/named/named.cache
- /var/named/midominio.tld.zone
- /var/named/13.72.200.in-addr.arpa

Bind entrega dos tipos de servicios DNS el caching only nameserver, que se limita a guardar en una caché las IPs de los nombres de máquina más solicitados, obteniéndolas de servidores externos, es lo básico si queremos navegar por INTERNET con nuestro propio server DNS, el archivo de configuración para este servicio es /var/named/named.cache y por lo general sólo se debe actualizar por lo menos una vez al mes por medio de ciertas acciones que detallaremos más adelante.

El otro servicio es el de entregar la configuración de un determinado dominio y es esto exactamente lo que hace tan famoso al DNS. DNS es un sistema jerárquico. La raíz se escribe como `.´ (punto) y se denomina `root´(raíz). Debajo hay cierto número de Dominios de Nivel Superior (Top Level Domain, TLD), los más conocidos son .ORG, .COM, .NET, pero hay muchos más, identificando dos clases; geográficos (.ES .CL .AR etc.) y globales (.COM .NET .ORG)

Cuando se busca una máquina, la pregunta procede recursivamente en al jerarquía comenzando desde arriba. Si queremos localizar la dirección prep.ai.mit.edu, nuestro servidor de nombres ha de encontrar primero un servidor de nombres que sirva a edu. Pregunta al servidor `.´ (este tipo de servidores "." son los que utiliza el fichero named.cache), y el servidor `.´ proporcionará una lista de servidores para edu y después para cada subdominio.

Registros de Recursos (RRs)

Un RR SOA , un RR NS y un RR PTR son tres de los registros más importantes que intervienen en un fichero de zona, que es como se denomina al fichero que contiene los datos de un dominio, veamos un ejemplo;

; ZONA MASTER DE REENVIO para midominio.tld
@ IN SOA ns.midominio.tld. hostmaster.midominio.tld. (
20030918001 ; Nº DE SERIE, fecha de hoy + nº de serie de hoy
28800 ; TASA DE REFRESCO, en segundos
7200 ; TASA DE REINTENTO, en segundos
3600000 ; CADUCIDAD PARA SECUNDARIO; en segundos
86400 ) ; TIEMPO DE VALIDEZ PARA CLIENTES; en segundos
; Servidores de Nombres
NS ns.midominio.tld
NS ns2.midominio.tld
;
; Intercambiadores de Correo
;
MX 10 mail.midominio.tld
MX 20 mail.otrodominio.tld
; Registros A (hosts)
localhost A 127.0.0.1
ns A 200.72.13.52
mail A 200.72.13.53
; Registros CNAME (Alias)
www CNAME ns

Este otro es un ejemplo de un archivo de zona master inversa ( por si no te has dado cuenta el `;´ es un comentario por lo que puedes borrarlos, los espacios en blanco se hacen con tabulador NO CON BARRA ESPACIADORA y al inicio de cada archivo NO DEBEN HABER ESPACIOS EN BLANCO.

; ZONA MASTER INVERSA para midominio.tld
@ IN SOA ns.midominio.tld. hostmaster.midominio.tld. (
20030918001 ; Nº DE SERIE, fecha de hoy + nº de serie de hoy
28800 ; TASA DE REFRESCO, en segundos
7200 ; TASA DE REINTENTO, en segundos
3600000 ; CADUCIDAD PARA SECUNDARIO; en segundos
86400 ) ; TIEMPO DE VALIDEZ PARA CLIENTES; en segundos
; Servidores de Nombres
NS ns.midominio.tld
NS ns2.midominio.tld
;
; Registros PTR
;
52 PTR ns.midominio.tld
53 PTR mail.midominio.tld

En estos sencillos ficheros de zona, podemos identificar varios RRs, en primer lugar un RR SOA que es abreviatura de Start Of Authority, la @ es una notación especial que simboliza el origen, o sea el dominio, NS es el RR Name Server (Servidor de Nombres), e indica a Bind qué máquina es el servidor de nombres del dominio. Y finalmente PTR es el RR ubicado en el zona master inversa (encargada de convertir el nombre IP a dirección IP válida)

El registro SOA es el preámbulo de todos los archivos de zona y debe haber uno exactamente en cada fichero, como primer registro de todos. El registro SOA describe la zona, de dónde viene (una máquina llamada ns.midominio.tld), quién es el responsable de su contenido (hostmaster@midominio.tdl, las direcciones se escriben en el archivo de zona reemplazando la @ por un `.´), qué versión del archivo de zona es (Numero de Serie, 20030918001, año+mes+día+nro de modificación), y otras cosas que tienen que ver con el caché y los servidores secundarios DNS.

MX es un RR que tiene como misión informar de los intercambiadores de correo para midominio.tld (Mail eXchanger) y el numero 10 (que fue tomado al azar entre 0 y 20) es la prioridad, esto significa que al número más bajo se entregará primero el correo del dominio y si este no esta disponible pasara al siguiente MX con prioridad más alta (20).

CNAME, es un RR que significa canonical name y se usa para dar "alias" a una máquina con un registro A (www.midominio.tld = ns.midominio.tld), algo que es muy importante es que en el RR SOA el registro NS ¡NO DEBE SER JAMAS UN REGISTRO CNAME¡ sino un registro A, lo mismo para el RR MX, aun así no es necesario que el NS y MX lleven los nombres que doy aquí sino que puede ser cualquier nombre de máquina válido (RR A), incluso puede ser una misma máquina efectuando todas estas labores, aunque esto último no es muy recomendable ya que saturamos el servidor con trabajo.

Hay otros RR, pero no los discutiremos aquí ya que sería un texto muy extenso, así que te recomiendo que leas el DNS COMO que lo pueden encontrar en insflug.org ( es un poquito viejito, aunque en otros sitios en INTERNET hay versiones actualizadas).

Configurar el DNS en RH es tan fácil como ir a Configuración de Servidores | Servidor de Nombres de Dominio y añadir un zona master de reenvío, ingresas los datos necesarios en cada casillero y en la sección donde aparece tu dominio has doble clic sobre él e ingresaras a otro dialogo que te pide los NS y él o los intercambiadores de correo (MX), en el casillero que dice IP (opcional) dejalo en blanco, cierra el cuadro de dialogo y agrega un HOST (RR A) llamado ns.midominio.tld ( recuerda que esto es a gusto del consumidor, pero debe ser el mismo que indicaste en el RR SOA) y otro llamado mail.midominio.tld, después agrega un ALIAS (RR CNAME) llamado `www´ para ns.midominio.tld y si quieres otros más ejemplo, ftp, irc u otros. Hecho esto cierras la zona master de reenvio y agregas ahora una zona master inversa, te pedirá los tres (3) primeros octetos de tu IP válida (yo la llamo pública) e ingresarás a un cuadro de dialogo parecido al anterior, llena los datos que se te piden y en el casillero donde aparecen los tres primeros tres octetos de tu ip, ingresa el octeto correspondiente al último de tus IPs válidas (52 y 53) e ingresas el nombre de máquina (HOST) que corresponde a cada una (ns.midominio.tld y mail.midominio.tld), terminado este proceso guardas los cambios y reinicias o recargas el servicio named, esto lo puedes hacer desde Servicios al Arranque o vía comando con la orden # service named restart o relaod según tu preferencia.

Para comprobar si tu configuración es correcta lo puedes probar con una utilidad llamada nslookup, para usarla desde un terminal ejecutas nslookup ingresaras a un prompt `>´ , aquí setearemos algunas cosas como siguen;

> server ns.midominio.tld

Default Server : ns.midominio.tld

Address : 200.72.13.52

> set q=ns

Esto significa lo siguiente; `q=´ es query y es un parámetro para indicar que información queremos obtener, en este caso los RR NS.

> midominio.tld

Default Server : ns.midominio.tld

Address : 200.72.13.52

midominio.tld nameserver = ns.midominio.tld

midominio.tld nameserver = ns2.otrodominio.tld

> set q=mx

Esto resultará en los RR MX del dominio

> set q=any

any es un parámetro que entregará toda la información del dominio, muy útil para revisar de una sola vez si la configuración es correcta.

Llegado este punto y no habiendo ningún error pasamos al siguiente servicio.

PD: Recuerda poner `.´ después de cada nombre de dominio y máquina al igual que la dirección de correo de lo contrario DNS agregará el nombre de dominio otra vez , ejemplo ns.midominio.tld (sin punto ), de este error resultará ns.midominio.tld.midominio.tld comprendes que pasa con el puntito, así que cuidado.

Actualización del fichero /var/named/named.cache

Este archivo es muy importante para el funcionamiento del servicio caching only nameserver, este script nos servirá para mantener actualizado nuestro fichero una vez al mes, se ejecuta automáticamente mediante una entrada cron.

#! /bin/sh
# Actualización del cache del servidor de nombres una vez al mes.
# esto es ejecutado automáticamente mediante una entrada cron
#
(
echo "To: hostmaster <hotsmaster>"
echo "From: system <root>"
echo "Subject: Actualización automatica del fichero named.cache"
echo
export PATH=/sbin:/usr/sbin:/bin:/usr/bin:
cd /var/named
dig @rs.internic.net . ns >named.cache.new
echo "El fichero named.cache ha sido actualizado para contener la
echo siguiente información:"
echo
cat named.cache.new
chown root.root named.cache.new
chmod 444 named.cache.new
rm -f named.cache.old
mv named.cache named.cache.old
mv named.cache.new named.cache
service named reload
echo
echo "El servidor de nombres ha sido rearrancado a fin de asegurar que la
echo actualización es completa."
echo "El anterior fichero named.cache se ha renombrado a
echo /var/named/named.cache.old."
) 2>&1 | /usr/lib/sendmail -t
exit 0
#

Con este script nos olvidaremos de la actualización, tal vez debas retocarlo dependiendo de tus necesidades.

Capítulo anterior - Servicio HTTP (www)

Nuestras novedades en tu e-mail

Escribe tu e-mail:



MailxMail tratará tus datos para realizar acciones promocionales (vía email y/o teléfono).
En la política de privacidad conocerás tu derechos y gestionarás la baja.

Cursos similares a Servidores de Comunicaciones Linux Redhat



  • Vídeo
  • Alumnos
  • Valoración
  • Cursos
1. Introducción a Linux
Linux es un sistema operativo de descarga gratuita que se creo a principios de los... [11/04/03]
50.168  
2. Sistema operativo Linux
El sistema operativo Linux es el objeto de estudio de este curso , donde aprenderás... [20/04/09]
3.937  
3. Linux - Unix. Sistema operativo multiusuario (primera parte)
En este curso de Sistemas Operativos Linux - Unix aprenderás acerca de la historia... [08/10/08]
8.070  

¿Qué es mailxmail.com?|ISSN: 1699-4914|Ayuda
Publicidad|Condiciones legales de mailxmail