[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Primera version de BIND



Bueno, por fin publico la primera version del apartado sobre BIND del
"Manual Debian de Administración de Redes".

El autor del documento ha sido David Charro, y yo lo he revisado, o sea
que si alguien le encuentra algun defecto que nos lo comunique a alguno de
los dos.

A mi me ha gustado, espero que a vosotros tambien... ;-)

PD: Javier Fdz-Sanguino, me lo puedes meter en el CVS de Debian, que
nosotros no tenemos login? Thanx

______________________________________________________
Josep Llauradó Selvas	           darlock@teleline.es
	         Linux Registered User #153481
The only "intuitive" interface is the nipple.
After that, it's all learned.
(in comp.os.linux.misc, on X interfaces.)
FP: 199E 7539 13B7 AA30 0B0C  263E 5991 03A7 625F B24F
______________________________________________________
<!-- Manual Debian de Administración de Redes - DNS/BIND -->

  <chapt id="bind">
  <heading>DNS/BIND</heading>
<p>
autor: Ivan E. Moore II <email>rkrusty@tdyc.com</email>
autor traducci&oacute;n: David Charro Ripa <email>dcharro@iname.com</email> 3-2-2000
<p>
Bienvenido. El prop&oacute;sito de esta secci&oacute;n es ayudar a configurar BIND en Debian. El documento empezar&aacute;
desde cero y le llevar&aacute; a un sistema BIND completo y que funcione realmente. Tal y como pidieron algunas
personas, he incluido instrucciones sobre como configurar un Dominio DNS desde un punto de vista tanto
de Servidor Primario como de Servidor Secundario.
<p>
Adem&aacute;s me he centrado s&oacute;lo en BIND 8.x ya que es la versi&oacute;n actual utilizada por Debian y es mucho mejor
de usar. Si est&aacute; usando BIND 4.x le recomendar&iacute;a actualizarse.
<p>
Por favor, tenga en cuenta que la mayor&iacute;a de la gente no necesita tener BIND instalado en su sistema. De
hecho solamente los servidores realmente lo necesitan. De vez en cuando surgen ataques (exploits) que 
cualquiera puede hacer, desde ataques por denegaci&oacute;n de servicio a verdaderas situaciones comprometedoras 
para root. La mayor&iacute;a de los servidores DNS est&aacute;n incorrectamente configurados y acaban en estas situaciones. 
Si est&aacute; configurando un sistema dom&eacute;stico no necesitar&aacute; tener instalado BIND. Por favor, pi&eacute;nselo antes de 
seguir.
<p>
NOTA: La versi&oacute;n 8.2.1 de bind y posteriores tiene una presentaci&oacute;n diferente. Todos los ficheros de
configuraci&oacute;n relacionados con bind est&aacute;n ahora en /etc/bind. Estos incluyen los ficheros de zona.
<p>
Por favor, lea <ref id="bindhelp"> para una ayuda avanzada de BIND.

  <sect id="bindnecessary">Conseguir los ficheros necesarios

<p>
Lo primero de todo necesita instalar los ficheros apropiados. Vaya al dselect e instale los siguientes ficheros:
<p>
<example>
Ficheros necesarios:

bind
dnsutils

Ficheros opcionales:

bind-doc
bind-dev
dns-browse
libnet-dns-perl
nslint
dhcp-dns
dnscvsutil
</example>
<p>
Si usa apt-get, entonces basta con ejecutar este comando:
<p>
<example>
apt-get install bind bind-doc dnsutils
</example>

  <sect id="bindconfig">Configurando BIND

  <sect1>bindconfig
<p>
Si ya ha instalado bind y contestado a las preguntas durante la instalaci&oacute;n, puede reconfigurar el sistema
BIND b&aacute;sico tecleando bindconfig. Este programa configura s&oacute;lo las opciones gen&eacute;ricas b&aacute;sicas. bindconfig
es lo que ejecuta dpkg cuando instala BIND de modo que lo que vamos a explicar es exactamente lo que se
encontrar&aacute; cuando instale BIND la primera vez. As&iacute; es como aparece.
<p>
Este programa no existe en las versiones de bind 8.2.1 y posteriores. Deber&iacute;a reaparecer de nuevo en
cualquier momento, pero por ahora ignore estos pasos si usa dichas versiones.
<p>
  <sect2>Paso 1 (Ignore este paso si es la primera instalaci&oacute;n con dselect o con apt-get)
<p>
<example>
snowcrash:/var/named# bindconfig

It appears that you already have an /etc/named.conf file, suggesting
that you have already configured BIND version 8.X at least once.  If
you proceed, a copy of this file will be saved, but no customizations
that you have made to it will be included in the new configuration.

If this means nothing to you, go ahead and proceed with the remainder
of the configuration process.  If you have customized /etc/named.conf,
you probably want to stop now to preserve your customizations.

Proceed to configure BIND, ignoring existing /etc/named.conf? [N] 
</example>

  <sect2>Paso 2
<p>

<example>
BIND Configuration
------------------
By answering the following questions, you can configure BIND for your system.
If your system has already been configured, the default values will allow you
to verify your existing configuration.

Press [ENTER] 
</example>

  <sect2>Paso 3
<p>
<example>
Forwarder Hosts
---------------
If you are close to a well-connected host or set of hosts which accept
recursive DNS queries, it would be to your advantage to use them as forwarders
in order to reduce traffic over links to outside servers.

Your DNS server will send all queries not in its cache to the forwarders
first. Each forwarder will be asked in turn until an answer is returned or the
list is exhausted. If no answer is forthcoming from a forwarder, the server
will continue as it would have without the forwarders.

To answer this question, separate each address with a space, or answer `none'
to eliminate all forwarder hosts.

Forwarder IP addresses? [] 
</example>
<p>
Esta opci&oacute;n le permite redirigir cualquier petici&oacute;n DNS a otro servidor DNS. La raz&oacute;n por la que pudiera
querer hacer esto es si estuviese al otro lado de un cortafuegos y no pudiera alcanzar la red exterior
directamente. Puede apuntar su servidor para que todas sus búsquedas las haga desde
servidores dentro de su red que puedan acceder a la red exterior.

  <sect2>Paso 4
<p>
<example>
Localhost Entries
-----------------
With this option, BIND will contain entries for the `localhost' pseudo-host
and its reverse mapping (127.0.0.1). This is recommended.

Enable localhost entries? [Y] 
</example>
<p>
Usted necesita esto. Le permite asociaciones (mappings) hacia y desde su servidor local que es 127.0.0.1


  <sect2>Paso 5
<p>
<example>
Configuration Complete
----------------------
Advanced configuration, such as sortlists, xfrnets, limits, and other options
can be accomplished by manually editing the /var/named/boot.options
configuration file and reloading your nameserver. You may wish to refer to
the named(8) man page or review the documentation in /usr/doc/net/named to
assist in further customization.

This automatic configuration does not manipulate zone files; you should ensure
the proper boot entries are made in /var/named/boot.zones for each primary and
secondary zone you are serving. If you leave this file empty, your server will
act conveniently as a caching-only name server.

Saving old /var/named/boot.options to /var/named/boot.options.old ...
Reading boot.zones ... 
Reading boot.options ... 
Rotated `/etc/named.conf' at Mon Dec  7 06:34:58 EST 1998.
Reload named now with the new configuration? [Y] 
</example>
<p>
Toda su configuraci&oacute;n b&aacute;sica ya est&aacute; completa. Siga adelante y diga s&iacute; ("yes") aqu&iacute; para que se reinicie bind.
<p>
  <sect1>resolv.conf
<p>
/etc/resolv.conf es donde busca Linux para saber como deber&iacute;a realizar las búsquedas DNS. El formato es
como sigue:
<p>
<example>
domain sudominio.com
search sudominio.com otrosdominios.com
nameserver 192.168.100.1
nameserver 127.0.0.1
</example>
<p>
La primera l&iacute;nea le dice en que dominio est&aacute;. Se puede omitir si quiere, pero recomendar&iacute;a su uso. 
La segunda es un patr&oacute;n de búsqueda. Tambi&eacute;n puede omitirse, pero tambi&eacute;n recomendar&iacute;a su utilizaci&oacute;n.
Sin ella no podr&iacute;a buscar el nombre de una m&aacute;quina sin tener que escribir su nombre de dominio 
completamente calificado p.e. no podr&iacute;a buscar beavis. Deberia buscar beavis.otrodominio.com. 
(a menos que lo haya especificado en su fichero /etc/hosts)
<p>
Las lineas "nameserver" le dicen un orden de búsqueda de servidores DNS. Ya
que estamos configurando BIND en su sistema necesitar&aacute; cambiar este fichero.
Querr&aacute; que se parezca m&aacute;s al siguiente:
<p>
<example>
domain sudominio.com
search sudominio.com
nameserver 127.0.0.1
nameserver x.x.x.x
</example>
<p>
Reemplace "sudominio.com" con cualquier dominio que est&eacute; usando y sustituya la
x.x.x.x" con un servidor DNS de respaldo que pueda usar. (De este modo si falla
el suyo aún podr&aacute; realizar búsquedas). 
<p>

Guarde este fichero y deber&iacute;a haberlo conseguido. Lo que esto le ofrece es la
capacidad para buscar informaci&oacute;n DNS en Internet.  

<p>

  Por favor, dir&iacute;jase a <ref id="bindprimary"> para informarse sobre como preparar
  un Dominio DNS que funcione.

  <p>

  <sect id="bindadvance">Configuraci&oacute;n avanzada

  <sect1>named.conf

<p>
named.conf es donde le dice a BIND que, donde y como. Es el fichero de
configuraci&oacute;n principal de BIND. Antes de BIND 8.x este fichero se llamaba named.boot.
M&aacute;s abajo esta el fichero named.conf que se crea tras la primera instalaci&oacute;n de
BIND.
<p>
<example>

// generated by named-bootconf.pl

options {
        directory "/var/named";
        /*
         * If there is a firewall between you and nameservers you want
         * to talk to, you might need to uncomment the query-source
         * directive below.  Previous versions of BIND always asked
         * questions using port 53, but BIND 8.1 uses an unprivileged
         * port by default.
         */
        // query-source address * port 53;
};

//
// Boot file for name server
//
// type         domain                  source          file
zone "." {
        type hint;
        file "named.root";
};

// Zone boot information and daemon options are kept in other files
// (autoincluded from boot.zones)
//
// Name server zone boot file
// See named(8) for syntax and further information
//
// type         domain                  source          file
// (autoincluded from boot.options)
//
// Options for name server
// Use `bindconfig' to automatically configure this file
//
// type         domain                  source          file
zone "localhost" {
        type master;
        file "named.local";
};

zone "127.in-addr.arpa" {
        type master;
        file "named.rev-local";
};

// Custom configurations below (will be preserved)


</example>
<p>

EL fichero named.conf es muy configurable. Con mirarlo ya se puede intuir como añadir un dominio
nuevo. Para añadir un dominio nuevo s&oacute;lo hay que añadir al principio de su fichero named.conf lo siguiente:
<p>
<example>
zone "nuevodominio.com" {
        type master;
        file "nuevodominio.db";
};

zone "100.168.192.in-addr.arpa" {
        type master;
        file "192.rev";
};
</example>
<p>
Reemplace "nuevodominio.com con el nombre del dominio que DNS va a resolver y sustituya
"100.168.192.in-addr.arpa" con la subred apropiada para la que llevar&aacute; a cabo DNS inverso. 
Observe el nombre de esta zona de búsqueda inversa: es el número de direcci&oacute;n IP de la red 
en orden inverso, seguido de <prgn>.in-addr.arpa</prgn>. Para m&aacute;s informaci&oacute;n sobre como 
funciona esto, por favor,  vaya a la documentaci&oacute;n de BIND 8.x situada en /usr/doc. (
si instal&oacute; bind-doc) O pruebe con la URL <url id="http://www.tdyc.com/archive/dns/index.html"; 
name="BIND Online Documentation">.
<p>
En el ejemplo anterior, "type" especifica si es un master o un esclavo de ese dominio. El 
tipo master quiere decir que su servidor DNS no pedir&aacute; a nadie m&aacute;s informaci&oacute;n sobre ese dominio. 
Otros sistemas pueden configurarse para realizar transferencias de zona ("zone-transfers") de 
ese dominio. La transferencia de zona b&aacute;sicamente significa pasar la informaci&oacute;n a otro servidor 
DNS y as&iacute; ser utilizado para realizar búsquedas DNS. En cambio, si va a extraer la informaci&oacute;n de 
otro servidor necesitar&aacute; usar el tipo esclavo ("type slave").
<p>

"file" en el ejemplo de arriba especifica el nombre del fichero donde se guarda
o se guardar&aacute; la informaci&oacute;n. Estos ficheros se encuentran (o deber&iacute;an encontrarse)
por defecto en /var/named.  (a menos que cambie la sentencia "directory" en /etc/named.conf.)
<p>
Por defecto BIND no est&aacute; configurado con mucha seguridad y cualquiera puede
extraer su informaci&oacute;n remotamente. Para controlar quien puede realizar
transferencias de zona y as&iacute; extraer informaci&oacute;n de su servidor añada esta l&iacute;nea
a su fichero named.conf:

<p>
<example>

        allow-transfer "192.168.100.1";  /* this line */
</example>
<p>
Esta l&iacute;nea va dentro de la secci&oacute;n de opciones como por ejemplo:
<p>
<example>
options {
        directory "/var/named";
        allow-transfer "192.168.100.1";  
};

</example>
<p>
Sustituya 192.168.100.1 con la direcci&oacute;n IP de aquellos servidores que quiera
que sean capaces de realizar transferencias de zona de su servidor. NOTA: Esto
no quiere decir que las personas no listadas aqu&iacute; no sean capaces de hacer
búsquedas de nombres de servidores en su servidor. S&oacute;lo significa que ellos
tiene que conocer lo que est&aacute;n buscando. Tienen que saber un nombre o una direcci&oacute;n
IP para hacer una búsqueda. No podr&aacute;n extraer todos los datos
guardados en sus ficheros de base de datos.

<p>

  <sect1>Archivos de zona
<p>
Los archivos de zona (o archivos de base de datos) son el coraz&oacute;n de su sistema
BIND. Aqu&iacute; est&aacute; toda la informaci&oacute;n sobre que nombre de host se asocia con que
direcci&oacute;n IP.
<p>
  <sect2>Archivos de zonas de dominio
<p>
Aqu&iacute; tenemos un ejemplo para un fichero de dominio de sudominio.com. Por favor
observe que &eacute;ste es un ejemplo muy gen&eacute;rico y que existen m&aacute;s caracter&iacute;sticas
que se pueden incluir. Vaya a la documentaci&oacute;n de BIND para tener m&aacute;s ayuda de estas
caracter&iacute;sticas.
<p>
<example>
;
; BIND data file for sudominio.com
;
@       IN      SOA     sudominio.com. root.sudominio.com. (
                              1         ; Serial
                         604800         ; Refresh
                          86400         ; Retry
                        2419200         ; Expire
                         604800 )       ; Default TTL

        IN  NS      dns.sudominio.com.
		IN	MX	10	mail.sudominio.com.

www		IN	A	192.168.100.5
dns		IN	A	192.168.100.10
mail	IN	A	192.168.100.20

</example>
<p>
Cualquier l&iacute;nea que comienza con ; es un comentario y ser&aacute; ignorado por BIND. Las
primeras 6 l&iacute;neas son de configuraci&oacute;n de la zona. Estas l&iacute;neas dicen cual es la
zona (sudominio.com) quien es el responsable (root.sudominio.com 
que es equivalente a root@sudominio.com) y alguna otra cosa m&aacute;s. Estas otras
cosas incluyen un número de serie que nos de una pista de cuando se ha
actualizado, cada cuanto actualizar la base de datos, cada cuanto reintentar una
transferencia de zona, cuando caduca la informaci&oacute;n de zona y un tiempo de vida
por defecto. *IMPORTANTE* En el momento en que haga cambios a los ficheros de
zona, debe incrementar el número de serie. Si no lo hace puede haber problemas,
sobre todo si es un servidor primario proporcionando informaci&oacute;n a sitios
Secundarios. La mayor&iacute;a de esta informaci&oacute;n s&oacute;lo se usa si tiene sistemas tanto
maestros como esclavos.
<p>
Las dos l&iacute;neas siguientes le dicen quien es el servidor DNS primario y quien deber&iacute;a 
coger el correo en este dominio. Puede tener múltiples lineas de cada uno de estos. 
Para añadir m&aacute;s servidores DNS tan solo hay que repetir exactamente lo que est&aacute; listado 
cambiando el servidor dns.sudominio.com por otro servidor DNS. Para añadir otro servidor de 
correo haga lo mismo salvo que tiene un campo extra. El "10" en la l&iacute;nea MX establece 
la prioridad, los números bajos son los primeros. Esto quiere decir es que si tiene 2 
lineas MX, una con 10 y la otra con 20, intentar&aacute; enviar el correo a la lista MX con 
la prioridad 10 y si falla ir&aacute; a la lista MX con la prioridad 20.
<p>
El resto del fichero de zona relaciona todas sus computadoras e IPs. Para m&aacute;s informaci&oacute;n de 
otras caracter&iacute;sticas y configuraci&oacute;n de esta informaci&oacute;n pruebe con la documentaci&oacute;n de BIND.
<p>
  <sect2>Ficheros inversos
<p>
Los ficheros de búsqueda inversa son casi iguales a los ficheros de dominio pero con algunos 
pequeños cambios. Aqu&iacute; hay un ejemplo de un fichero de búsqueda inversa.
<p>
<example>
;
; BIND reverse data file for 192.168.100.0
;
@       IN      SOA     sudominio.com. root.sudominio.com. (
                              1         ; Serial
                         604800         ; Refresh
                          86400         ; Retry
                        2419200         ; Expire
                         604800 )       ; Default TTL
;
        IN      NS      dns.sudominio.com.

5		IN		PTR		www.sudominio.com.
10		IN		PTR		dns.sudominio.com.
20		IN		PTR		mail.sudominio.com.

</example>
<p>
La primera secci&oacute;n de este fichero es exactamente la misma que la primera secci&oacute;n 
de los ficheros de zona de dominio. La secci&oacute;n de abajo es la diferente. Aqu&iacute; 
estamos listando primero la última parte de la direcci&oacute;n &IACUTE;P y entonces el nombre 
del puesto al final.
<p>
Aqu&iacute; tiene que fijarse en dos detalles. Debe usar el nombre de dominio completamente 
cualificado y poner un punto al final de &eacute;l. Estas 2 observaciones son importantes y 
el comportamiento ser&aacute; extraño de no hacerlo as&iacute;. Otra posibilidad es usar "$ORIGIN", 
que es el nombre de dominio que se añade autom&aacute;ticamente a todos los nombres que no 
acaban en punto. El origen puede cambiarse el fichero db con $ORIGIN. No olvide el 
punto final de $ORIGIN
<example>
$ORIGIN sudominio.com.
</example>
[Paul Albitz, Cricket Liu: DNS and BIND, O'Reilly & Accosiates, Inc, 1st Edition July 1994, page 136]

<p>
  
  <sect id="bindprimary">Configurando un servidor primario de DNS
  
  <p>En el Servidor Primario de DNS es donde est&aacute;n las copias maestras de sus 
archivos DNS. Puede ser un solo sistema u otros servidores (Secundarios) pueden 
trabajar  con &eacute;l llevando a cabo transferencias de zona. Una transferencia de 
zona es s&oacute;lo eso, traspasar los archivos de zona de un sistema a otro.  As&iacute; es 
como un servidor Primario distribuye su informaci&oacute;n de zona a otros servidores.

  <p>Esta secci&oacute;n trata sobre como configurar su sistema Debian como servidor 
primario de DNS. Crearemos un dominio falso y configuraremos BIND para funcionar 
con ese dominio.

  <p>
  
    <sect1>Preparaci&oacute;n
	
	 <p>Lo que haremos aqu&iacute; sera crear un nuevo dominio. Para nuestros prop&oacute;sitos 
utilizaremos foo.org. En esta secci&oacute;n, prepararemos su sistema Debian para ser 
un servidor Primario de foo.org.

    <p>Para una mejor comprensi&oacute;n del funcionamiento de todo esto, usaremos los 
siguientes servidores con sus correspondientes IP para los ejemplos.

    <p>
<example>

www.foo.org  =  192.168.100.10
news.foo.org =  192.168.100.20
mail.foo.org =  192.168.100.30
dns.foo.org  =  192.168.100.40
dns2.foo.org =  192.168.100.50

</example>

    <p>Utilizando esto en nuestro ejemplo, dns.foo.org representar&aacute; su servidor 
Debian. dns2.foo.org ser&aacute; usado <ref id="bindsecondary">. Tambi&eacute;n habr&aacute; observado 
que estamos utilizando la subred 192.168.100.x. Para nuestros ejemplos aqu&iacute;, tambi&eacute;n 
seremos maestro para esta subred.

    <p>

    <sect1>Configurando BIND para su nuevo Dominio DNS
   
    <p>Ahora a configurar BIND. Como se muestra en <ref id="bindadvance">, 
configurar BIND es bastante sencillo. De nuevo, no vamos a tratar ninguna 
configuraci&oacute;n avanzada, pero si desea ayuda por favor, pruebe con 
<url id="http://www.tdyc.com/archive/dns/index.html"; name="BIND 8.0 Online Documentation">.

    <p>

      <sect2>archivos de zona

      <p>Primero necesitamos crear dos archivos. Uno para su dominio foo.orgy otro 
para su subred 192.168.100.x. Empecemos con el archivo del dominio foo.org.  
Necesita crear un archivo llamado <prgn>foo.db</prgn> en <prgn>/var/named</prgn>.
(Este archivo puede llamarse como quiera pero lo hacemos as&iacute; por el ejemplo).
El archivo deber&iacute;a parecerse a algo como esto:

      <p>

<example>

;
; BIND data file for foo.db
; /var/named/foo.db
;
@       IN      SOA     foo.org. root.foo.org. (
                     1998121401         ; Serial
                         604800         ; Refresh
                          86400         ; Retry
                        2419200         ; Expire
                         604800 )       ; Default TTL

        IN	NS      dns.foo.org.

        IN	MX	10	mail.foo.org.

www		IN	A	192.168.100.10
news	IN	A	192.168.100.20
mail	IN	A	192.168.100.30
dns		IN	A	192.168.100.40
dns2	IN	A	192.168.100.50

</example>

      <p>Observe, en el ejemplo anterior, que usamos como serie 1998121401  
La raz&oacute;n principal por la que lo hacemos es tener una pista de cuando fue modificado
 por ultima vez el archivo. Me dice que el archivo fue modificado por ultima vez 
el 14-12-1998 y que fue la primera vez en ese d&iacute;a. No hace falta que lo haga 
as&iacute; pero necesitar&aacute; estar seguro que aumenta la serie cada vez que lo modifica. 
(Especialmente si tiene Secundarios).

      <p>Ahora necesita crear su archivo de la subred 192.168.100.x. Cree un 
archivo llamado <prgn>192.168.100.db</prgn> en <prgn>/var/named</prgn>. Se 
parecer&aacute; necesariamente a algo como lo siguiente:

      <p>

<example>

;
; BIND reverse data file for 192.168.100.0
; /var/named/192.168.100.db
;
@       IN      SOA     foo.org. root.foo.org. (
                     1998121401         ; Serial
                         604800         ; Refresh
                          86400         ; Retry
                        2419200         ; Expire
                         604800 )       ; Default TTL

        IN      NS      dns.foo.org.

10	IN	PTR	www.foo.org.
20	IN	PTR	news.foo.org.
30	IN	PTR	mail.foo.org.
40	IN	PTR	dns.foo.org.
50	IN	PTR	dns2.foo.org.

</example>

      <p>Por favor, tanga en cuenta el (.) al final de cada nombre de puesto. 
(ej.  www.foo.org.)  El punto DEBE estar all&iacute;, pues de otra manera su zona no se 
leer&aacute; correctamente por BIND.
      <p>

      <sect2>named.conf

      <p>Ahora necesitamos añadir su nuevo dominio al archivo de configuraci&oacute;n de BIND.
Adelante y edite su archivo<prgn>/etc/named.conf</prgn> y añada las siguientes l&iacute;neas al final.

     <p>

<example>

zone "foo.org" {
        type master;
        file "foo.db";
};

zone "100.168.192.in-addr.arpa" {
        type master;
        file "192.168.100.rev";
};

</example>

      <p>Ahora guarde ese fichero y lo habr&aacute; hecho. Todo lo que tiene que hacer 
ahora es ejecutar <prgn>/etc/init.d/bind reload</prgn> y probarlo. Para ayuda 
sobre como comprobar BIND, por favor, revise <ref id="bindtest">.

      <p>

  </sect>

  <sect id="bindsecondary">Configurando un Servidor DNS Secundario

  <p>Un Servidor DNS Secundarios b&aacute;sicamente un servidor de respaldo.  No mantiene 
las versiones maestras de la informaci&oacute;n de zona sino copias. La mayor&iacute;a de los sitios 
usan servidores Secundarios en ubicaciones remotas o para disminuir el trabajo del 
servidor Primario. El servidor Secundario realiza transferencias de zona en tiempos 
acordados haciendo seguro que tenga las versiones m&aacute;s actualizadas de la informaci&oacute;n de zona.

  <p>

    <sect1>Preparaci&oacute;n 

    <p>La gran diferencia al preparar un servidor Primario y otro Secundario es que sus 
archivos de zona ya est&aacute;n construidos. Los únicos cambios  que tiene que hacer es decirle 
a BIND en ambos sistemas que este servidor es uno Secundario y realizar las transferencias de zona.

    <p>

    <sect1>Configurando BIND como un Servidor Secundario para su nuevo Dominio DNS
   
      <sect2>Cambios al Servidor Primario

      <p>Primero tenemos que hacer cambios a su servidor Primario de modo que conozca a 
su nuevo servidor Secundario. En el Primario, edite su archivo de dominio <prgn>foo.db</prgn> 
y añ&aacute;dale la siguiente l&iacute;nea.  (nota:  aqu&iacute; se muestra el archivo completo)

      <p>

<example>

;
; BIND data file for foo.db
; /var/named/foo.db
;
@       IN      SOA     foo.org. root.foo.org. (
                     1998121401         ; Serial
                         604800         ; Refresh
                          86400         ; Retry
                        2419200         ; Expire
                         604800 )       ; Default TTL

        IN      NS      dns.foo.org.
		IN		NS		dns2.foo.org.	; ADD THIS LINE ***

        IN      MX	10	mail.foo.org.

www     IN      A       192.168.100.10
news    IN      A       192.168.100.20
mail    IN      A       192.168.100.30
dns     IN      A       192.168.100.40
dns2    IN      A       192.168.100.50

</example>

  <p>Ahora edite su archivo <prgn>/var/named/192.168.100.db</prgn> y haga lo mismo.

      <p>

<example>

;
; BIND reverse data file for 192.168.100.0
; /var/named/192.168.100.db
;
@       IN      SOA     foo.org. root.foo.org. (
                     1998121401         ; Serial
                         604800         ; Refresh
                          86400         ; Retry
                        2419200         ; Expire
                         604800 )       ; Default TTL

        IN      NS      dns.foo.org.
	IN	NS	dns2.foo.org.	;  ADD THIS LINE ***

10      IN      PTR     www.foo.org.
20      IN      PTR     news.foo.org.
30      IN      PTR     mail.foo.org.
40      IN      PTR     dns.foo.org.
50      IN      PTR     dns2.foo.org.

</example>

       <p>Lo que hace añadiendo la nueva l&iacute;nea IN NS es decirle a BIND que 
dns2.foo.org tambi&eacute;n es un servidor DNS autorizado para foo.org y la subred 
192.168.100.x Con BIND 8.x esto tambi&eacute;n le dice a bind que en cualquier momento 
que se haga un cambio a los archivos de zona, debe notificar a dns2.foo.org que 
se ha hecho un cambio de modo que dns2.foo.org pueda hacer una transferencia de zona.

      <p>Por favor, note que si ha configurado su servidor Primario solamente para 
permitir transferencias de zona desde anfitriones espec&iacute;ficos, necesitar&aacute; estar 
seguro de que dns2.foo.org est&aacute; incluido en esa lista. (opci&oacute;n allows-transfer en 
<prgn>/etc/named.conf</prgn>.)

      <p>Puede volver a cargar BIND en su servidor Primario. (<prgn>/etc/init.d/bind reload</prgn>)

      <p>

      <sect2>named.conf

      <p>Ahora necesita añadir informaci&oacute;n a su archivo <prgn>/etc/named.conf</prgn> 
en su servidor Secundario. Añada las siguientes l&iacute;neas al final de <prgn>/etc/named.conf</prgn>:

      <p>

<example>

zone "foo.org" {
        type slave;
        file "foo.db";
	masters {
		192.168.100.40;
	};
};

zone "100.168.192.in-addr.arpa" {
        type slave;
        file "192.168.100.db";
	masters {
		192.168.100.40;
	};
};

</example>

      <p>Lo anterior le indica a BIND que su servidor es un esclavo (Secundario) 
de foo.org y la subred 192.168.100.x. Tambi&eacute;n le dice a BIND que necesita para 
conseguir la informaci&oacute;n de zona (foo.db y 182.168.100.db) de 192.168.100.40 el 
cual es dns.foo.org.

      <p>

      <sect2>Archivos de zona

      <p>Como este es un servidor Secundario. no hay necesidad de hacer nada con 
los archivos de zona. ¡PREMIO! Todo funcionar&aacute; mientras tenga todo correctamente 
configurado en su servidor Primario y su archivo named.conf est&eacute; configurado adecuadamente

      <p>Lo ha hecho.  Cargue de nuevo su BIND y pru&eacute;belo. <prgn>/etc/init.d/bind reload</prgn>

      <p>

      <sect2>Informaci&oacute;n

      <p>Ahora. Cada vez que se modifiquen los archivos de zona del sitio del 
Primario y se incremente el número de Serie, BIND enviar&aacute; una notificaci&oacute;n a 
todos los Secundarios (cualquier servidor en el archivo de zona con un registro 
IN NS) avisando que se ha hecho un cambio.  Entonces el BIND de cada uno de estos 
servidores comparar&aacute; sus propios archivos de zona para ver si tiene la misma versi&oacute;n 
o no. Si la versi&oacute;n que el Primario ha notificado es m&aacute;s reciente entonces llevar&aacute; a 
cabo una transferencia de zona y obtendr&aacute; la nueva versi&oacute;n.

      <p>Si todo est&aacute; configurado adecuadamente, nunca necesitar&aacute; ningún cambio a 
su servidor Secundario salvo para actualizar el propio BIND.  Todos los cambios a 
partir de aqu&iacute; se har&aacute;n en el servidor Primario. La excepci&oacute;n es si se añade una nueva 
zona en el primario, tendr&aacute; que añadirla a los Secundarios tambi&eacute;n si quiere que sean 
Secundarios de la nueva zona.

      <p>

  </sect>

  <sect id="bindtest">Probando

  <p>
Las pruebas son la parte f&aacute;cil. Si ha seguido las directivas escritas aqu&iacute; todo funcionar&aacute;.  
Lo primero que necesita antes de poder probar propiamente es cargar de nuevo la base de datos.<p>
<example>
/etc/init.d/bind reload
</example>
<p>
Entonces debe seguir adelante, ejecutar nslookup y hacer algunas consultas
<p>
<example>
snowcrash:~# nslookup
Default Server:  localhost
Address:  127.0.0.1

> 
</example>
<p>Cuando ejecute nslookup deber&iacute;a parecerse al ejemplo anterior a menos que haya 
creado su propio dominio y est&eacute; usando una direcci&oacute;n IP diferente de 127.0.0.1  
Deber&iacute;a poder escribir www.debian.org y tras pensar un poco devolverle la direcci&oacute;n 
IP de www.debian.org.

    <p>
    SI est&aacute; siguiendo estas instrucciones para configurar un nuevo dominio, su nslookup 
se parecer&iacute;a m&aacute;s a esto:

    <p>
<example>
snowcrash:~# nslookup
Default Server:  dns.foo.org
Address:  192.168.100.40

>
</example>

      <p>
      Ahora podr&iacute;a buscar cada uno de los puestos que añadimos a sus archivos de zona. 
(www.foo.org, mail.foo.org, etc...)

<sect id="bindhelp">Consiguiendo ayuda de BIND
<p>
Los siguientes sitios son buenas fuentes de ayuda para BIND

<list>
<item><url id="http://www.isc.org/bind.html"; name="ISC's BIND Site">
<item><url id="http://www.tdyc.com/archive/dns/index.html"; name="BIND Documentation Online">
<item><url id="http://www.tdyc.com/archive/LDP/HOWTO/DNS-HOWTO.html"; name="LINUX DNS HOWTO">
</list>

</chapt>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:2
sgml-indent-data:t
sgml-parent-document:"network-administrator.sgml chapt sect"
sgml-exposed-tags:nil
sgml-local-catalogs:"/usr/lib/sgml/catalog"
sgml-local-ecat-files:nil
End:
-->


Reply to: