Implementado servidor DNS con BIND en CentOS5

marzo 16, 2008

Bueno, la implementación que haré aquí va ser básica, como para que uno se familiarice con los archivos de configuración y pueda ver ipso facto lo que ha realizado, ten en cuenta que con BIND se puedes hacer complejas configuraciones, pero como escribí antes esto es básico.

Instalando paquetes necesarios
Los paquetes que se necesitan para instalar BIND son:

  • bind
  • bind-utils
  • bind-libs
  • bind-chroot
  • caching-nameserver

Los instalamos con nuestro manejador de paquetes:

# yum install bind bind-utils bind-libs bind-chroot caching-nameserver

Si yum se demora demasiado, puedes bajar los rpm’s : Aqui
*Ten en cuenta que los rpm son de la versión *-9.3.3.7, mientra que la versión que te bajarías con Yum seria: *-9.3.3.10

Configuración:
Para esto necesitaremos un dominio y una ip publica.
El dominio referencial sera: «ejemplo.com»
Nuestra ip referencial: 200.110.10.10

Rutas:
Los archivos de configuración se rencuentran en dos rutas que se complementan, estas son:
Ruta 1: /var/named/chroot/etc
Ruta 2: /var/named/chroot/var/named

En la ruta1 se va encontrar el archivo «named.conf», el archivo mas importante, y en la ruta2 se van a encontrar el archivo «.zone» y el de resolucion inversa «.in-addr.arpa.zone», los cuales van a ser llamados por «named.conf».

Ruta1
Conociendo esto ya podemos crear «named.conf» en ruta1: (aun cuando ya existe un archivo de ejemplo en la ruta)

# vi /var/named/chroot/etc/named.conf

Dentro tendrá: Este contenido.

En esta configuración aun no esta la nuestra, sino solo hace referencia a los archivos que ya existen en ruta2, el contenido que vamos a agregar para nuestro propósito es el siguiente:(antes de la ultima linea)

# configuración para ejemplo.com
zone «ejemplo.com.» {
type master;
file «ejemplo.com.zone»;
allow-update { none; };
};

zone «10.110.200.in-addr.arpa» {
type master;
file «10.110.200.in-addr.arpa.zone»;
};

Aquí se define la zona para nuestro dominio y también la resolución inversa para nuestra ip.
Al final nuestro archivo «named .conf» quedaría: Asi.

Ruta2
Ahora pasemos a crear los archivos a los que estamos llamando en nuestro named.conf, creamos la zona del dominio:

# vi /var/named/chroot/var/named/ejemplo.com.zone

Dentro tendría lo siguiente:

$TTL 86400
@ IN SOA <nombre_maquina> administrador (
42 ; Serial formato: yyyymmddn donde n es un número cualquiera
10800 ; Refresh después de tres horas
3600 ; Reintentar después de una hora
604800 ; Expirar después de una semana
86400 ) ; TTL(Time to Live) mínimo de un día

IN NS <nombre_maquina>
ejemplo.com. IN A 200.110.10.10
<nombre_maquina> IN CNAME ejemplo.com.
www IN CNAME ejemplo.com
ftp IN CNAME ejemplo.com

Aquí se resuelve el Canonical Name para peticiones tanta si estas vengan para FTP, web o DNS. Y se enlaza nuestra IP al dominio.

Ahora creamos el archivo para la resolución inversa de nuestra ip:

# vi /var/named/chroot/var/named/10.110.200.in-addr.arpa.zone

Dentro tendría lo siguiente:

$TTL 86400
@ IN SOA ejemplo.com. administrador (
200706246 ; Serial
28800 ; Refresh
7200 ; Retry
604800 ; Expire
86400) ; Minimum TTL
NS ejemplo.com.
NS <nombre_maquina>.ejemplo.com.
;
; Servers
;
10 PTR ejemplo.com.
10 PTR <nombre_maquina>.ejemplo.com.
10 PTR http://www.ejemplo.com.
10 PTR ftp.ejemplo.com.

En la linea «10 PTR ….», no olvide reemplazar el 10 por el ultimo numero de tu ip.

Listo se supone que tu servidor DNS ya debería trabajar, pero aun falta algunos detalles, como cambiarle el nombre a tu servidor y también la ip.

Para cambiar el nombre al servidor editamos el archivo «network»:

# vi /etc/sysconfig/network

Y ponemos:

NETWORKING=yes
NETWORKING_IPV6=yes
HOSTNAME=<nombre_maquina>.ejemplo.com

<nombre_maquina>, va ser el nombre que deseemos, el cual se va reemplazar en los archivos de zona donde seguro ya lo has visto.

Ahora cambiamos la ip del servidor DNS, editando «resolv.conf»

# vi /etc/resolv.conf

Y ponemos

nameserver 200.110.10.10

Listo ahora si todo ya debería funcionar, solo nos falta levantar el servicio:

# service named start

Y para que este inicie al arranque del sistema:

# chkconfig named –level 345 on

Bueno espero te halla servido, no creí escribir tanto pero en fin ^^
Cualquier duda, error, etc; solo deja comentario.

Saludos linuxeros ….

:wq!

19 Responses to “Implementado servidor DNS con BIND en CentOS5”

  1. Yuri Says:

    Como configuraria el cliente

  2. Daries Says:

    Tendrían que estar en la misma red, pero aparte también lo ideal seria que implementes DHCP…

  3. MAYRA Says:

    Gracias por La informacion

  4. PAVEL Says:

    HOLA ,ESTA CHCVRE LO QUE APORTASTE;POR FAVOR YO ESTOY INTALANDO UN DNS , SEGUI LOS PASOS TAL COMO LOS DESCRIBES ARRIBA , PERO NO COMPRENDO TAN BIEN LOS DEL named.conf Y DEL ejemplo.com.zone(QUE SON CADA UNO) ; Y TAMBIEN , ME GUSTARIA SABER COMO AGO LA PRUEBA SI ESTA FUNCOINANDO BIEN MI DNS , GRACIAS

  5. Daries Says:

    Hola Pavel, te explico, el archivo de texto ‘named.conf’ es el archivo principal para la configuracion de DNS, todo cuanto se vaya a configurar se hace en ese archivo, puedes obtener vasta informacion si lo escribes en google; por otro lado el archivo ‘ejemplo.com.zone’ es el archivo de configuracion para el host, alli se especifica los datos del servidor las formas com se va a poder accerde http, ftp, etc; cada valor ‘refresh,retry, etc’ tiens su porque, lee el manual de BIND para saber combiarlo correctamente, por ejemplo TTL se refiere a TimeToLive y asi respectivamente; para probar si te funciona pues la mayoria de veces yo le hago un ping a mi server desde otra maquina que la pongo en el misma red del servido.

    Espero te haya sido de utilidad.
    Saludos.

  6. Christian Says:

    HOLA QUE TAL HE SEGUIDO PASO A PASO EL TUTORIAL EN UNA MAQUINA CON CENTOS 5 Y AL MOMENTO DE DE INICIAR EL SERVICE NAME TENGO ESTE MENSAJE:

    Iniciando named:
    Error en la configuración de named:
    zone localdomain/IN: loaded serial 42
    zone localhost/IN: loaded serial 42
    zone 0.0.127.in-addr.arpa/IN: loaded serial 1997022700
    zone 0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.ip6.arpa/IN: loaded serial 1997022700
    zone 255.in-addr.arpa/IN: loaded serial 42
    zone 0.in-addr.arpa/IN: loaded serial 42
    grupo5.com.zone:1: no current owner name
    grupo5.com.zone:2: no current owner name
    grupo5.com.zone:9: no current owner name
    grupo5.com.zone:10: no current owner name
    grupo5.com.zone:11: no current owner name
    grupo5.com.zone:12: no current owner name
    grupo5.com.zone:13: no current owner name
    zone grupo5.com/IN: loading master file grupo5.com.zone: no owner
    _default/grupo5.com./IN: no owner
    1.1.10.in-addr.arpa.zone:8: unknown RR type ‘grupo5.com.’
    1.1.10.in-addr.arpa.zone:9: unknown RR type ‘linux.grupo5.com.’
    zone 1.1.10.in-addr.arpa/IN: loading master file 1.1.10.in-addr.arpa.zone: unknown class/type
    _default/1.1.10.in-addr.arpa/IN: unknown class/type
    [FALLÓ]

  7. Daries Says:

    Pareciese que no encontrase los archivos que deben existir en ruta 2 ¿Están los archivos allí?, si no están copialos de la carpeta de ejemplo.

  8. Gastón Says:

    Hola…quiesiera consultarte como sería la forma de configurar un Serv. DNS sin ip publica…es decir po medio de un servicio como el que brinda Dyndns. Ya he instalado el DDCLIENT pero no se muy bien como ni que vincularlo con el name.conf.
    Por favor te pido ayuda, ya que hace casi dos semanas que estoy con este problema y no se como resolverso.

    Desde ya muchras gracias

    Saludos

    Gastób

  9. Ricardo Says:

    Saludos
    El error anterior, no indica que falta el archivo soa.record?

  10. Erik Says:

    Hola, la informacion de configuracion estuvo muy buena conjuntamente con la explicación, para lo q quedo muy agradecido.

    Por otro lado he seguido los pasos indicados en el pequeño howto, y el servicio named inicia sin problema, pero cuando desde otra maquina hago un nslookup a mi server, me dice «DNS request time out.» y me responde el Servidor principal

    Asimismo quiero remarcar que pertenezco a otro dominio, (como subdominio)en cuyos servidores ya estaban redireccionados al mio.
    Ej:
    .subdominio.ejemplo.com

    Tengo que adicionar y/o modificar algo a la configuracion del howto, por ese subdominio??

    Gracias, y saludos cordiales

  11. ramon Says:

    estoy instalando un servidor dns en centos 5 y cuando quiero iniciar el servidor: service named start, me sale falló

    miré el estado: service named status y sale:

    rndc: connect failed: 127.0.0.1#953: connection refused
    named está parado

    ¡por favor si alguien me puede ayudar!

  12. Roberto Says:

    Tengo el mismo problema Christian no sirve el tutorial

  13. klain Says:

    que tal tengo este error a la hora de levantar el named, el error es este:

    Error en la configuración de named:
    none:0: open: /etc/named.conf: permission denied
    [FALLÓ]

    he seguido tu tutorial al pie. sin mas que agregar espero tu repuesta pronto. Gracias

  14. Titiushko Says:

    hola amigo!! muy buen post!! logre entender la mayoria jeje xD
    mi duda es si se puede montar el servidor dns con estos mismos archivos y configuraciones en ubuntu????

    ayuda porfavor 🙂

  15. moises Says:

    tambien he seguido el tutorial y tambien ehe tenido ese problema ahora ahora que ago no funciona

  16. zullys Says:

    Hola tengo el mismo problema q rndc: connect failed: 127.0.0.1#953: connection refused y e seguido el tutorial al pie de la letra les agradezco su ayuda gracias

  17. zullys Says:

    por favor alguien q me ayude

  18. Pablo Says:

    ola, un super duda, cuando escribes

    Nosotros tenemos que poner el nombre de la makina dentro de «»
    o tambien hay que sustituirlo por todo????

  19. Pablo Says:

    ola, un super duda, cuando escribes: (nombre_maquina) con los otras simbolos

    Nosotros tenemos que poner el nombre de la makina dentro de “()”
    o tambien hay que sustituirlo por todo????

    Te he puesto los parentesis en lugar de los otros caracteres porque desaparecen en el post


Deja una respuesta

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Salir /  Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Salir /  Cambiar )

Conectando a %s

A %d blogueros les gusta esto: