Manual para instalar y configurar un Servidor DNS en Linux
Hoy les comparto un pequeño y fácil manual para la instalación y la configuración de un servidor DNS en nuestras máquinas Linux. En mi caso lo hice en Linux Mint 7, por lo que funciona también en distribuciones basadas en debian, como Ubuntu. En otros sistemas como fedora, es muy similar, lo que cambia es la ubicación de los archivos.

Para los que no saben, DNS (Domain Name Server) es una base de datos distribuida, que contiene la información para traducir los nombres de dominio, es decir, los nombres que usamos habitualmente para entrar a cualquier página en internet, como www.google.com, o www.facebook.com, a las direcciones IP de los servidores que alojan dichas web’s y viceversa.
Para configurar el DNS vamos a utilizar un servidor muy conocido en la red, llamado BIND. Este es un servidor que permite configurar de una manera muy sencilla nuestro DNS, y funciona a la perfección.
Ahora empecemos con el manual.
1. Instalar el Bind, para lo que escribimos en una terminal:
sudo apt-get install bind9 dnsutils, si no te funciona, actualiza tus repositorios con el comando sudo apt-get update && apt-get upgrade, y luego vuelve a intentar.
2. Al haber finalizado la instalación, detenemos el servicio con el comando
sudo /etc/init.d/bind9 stop
3. Ahora pasamos a configurar los archivos más importantes. El primero de ellos es el Resolv.conf, donde se encuentra la información del dominio al que perteneces y el servidor de nombres de dominio que estás usando. Para entrar a configurar el archivo usamos el siguiente comando:
sudo gedit /etc/resolv.conf, dentro del archivo cambiamos los dominios, por el que nosotros queramos usar, para este manual el dominio va a ser juanse.com, pero puedes utilizar el que quieras. El archivo debe quedar de la siguiente manera:
domain juanse.com
search juanse.com
nameserver 10.0.19.21 #Esta es la dirección de red local de tu pc, en donde se va a instalar el DNS
nameserver 10.0.18.1 #Esta puede ser o tu servidor de DNS preferido o tu gateway
Hay que tener en cuenta, que este archivo se cambia automáticamente cada que se cambia la configuración de la red, o se conecta a una red diferente.
4. Ahora configuramos el archivo named.conf.options y descomentamos las lneas que dice forwarders, de la siguiente manera:
sudo gedit /etc/bind/named.conf.options
forwarders {sudo gedit /etc/bind/named.conf.options
4.2.2.2; #Utilizar DNS valida o la que tengamos con el proveedor ISP.
};
Con la dirección de ejemplo 4.2.2.2 funciona sin problemas.
5. Creación de las zonas: Para este manual, vamos a crear dos zonas, una que va a manejar mi nombre de dominio, y la otra va a manejar las direcciones reversas. Para las zonas recomiendo crear un directorio llamado zones o como quieras.
sudo mkdir /etc/bind/zones
Allí creamos la primera zona que la llamaremos como mi nombre de dominio “juanse.com”:
sudo gedit /etc/bind/zones/juanse.com, allí copiamos lo siguiente
$TTL 3D
@ IN SOA ns1.juanse.com. hostmaster.juanse.com. (
200808161 ; serial, fecha AAAA-MM-DD + serial
8H ; refrescamiento, en segundos
2H ; reentrar, segundos
4W ; expira, segundos
1D ) ; minimo, segundos
;
TXT “juanse.com, servicio de DNS”
NS ns1 ; Direccion Inet del servidor de dominio
NS ns2
MX 10 mail ; Exchanger de Mail primario
localhost A 127.0.0.1
juanse.com. A 10.0.19.21
ns1 A 10.0.19.21
ns2 A 10.0.19.21
www CNAME ns1
correo CNAME ns2
No olviden cambiar juanse.com por el dominio que hayan escogido. Pueden colocar cuantos NS (Nameservers) quieran, y el CNAME (canonic name) sirve para asignarle el nombre a cualquiera de los ns. Por ejemplo al final del manual, voy a poder hacerle un ping a correo.juanse.com o www.juanse.com. El comando A, lo que hace es traducir el dominio a las direcciones ip, para que el computador las reconozca.
6. El siguiente paso es crear la zona para las direcciones en reversa, la creamos de la misma forma que la anterior y en el mismo directorio. Para este manual, la llame 10.0 por lo que estoy trabajando en ese segmento.
sudo gedit /etc/bind/zones/10.0, allí copiamos lo siguiente:
$TTL 86400
@ IN SOA juanse.com. hostmaster.juanse.com. (
200808051 ; serial (d. adams)
8H ; refresh
2H ; retry
1W ; expiry
1D ) ; minimum
;
@ IN NS juanse.com.
19.21 PTR juanse.com.
19.21 IN PTR correo.juanse.com.
;Estaciones
El comando PTR sirve para convertir las direcciones ip en los nombres de dominio, no olviden cambiar juanse.com por el dominio que hayan escogido. Observen que solo estoy asignando los ultimos dos octetos de mi dirección ip 10.0.19.21. en el siguiente paso se darán cuenta porque.
7. El paso siguiente es modificar el archivo named.conf.local, de la siguiente manera:
sudo gedit /etc/bind/named.conf.local, y allí vamos a copiar las dos zonas que acabamos de crear:
zone "juanse.com" {
type master;
file "/etc/bind/zones/juanse.com";
};
zone "0.10.in-addr.arpa" IN {
type master;
file "/etc/bind/zones/10.0";
allow-update { none; };
};
Fíjense en la segunda zona, llamada zone “0.10.in-addr.arpa” IN {, noten que estoy utilizando los dos primeros octetos en forma inversa, es decir 10.0, y es por esta razón que en la zona como tal, se deben utilizar los ultimos dos octetos. Esto puede ser modificado para que solo se usen uno dos o tres octetos.
Esto es todo, lo último que hay que hacer es reiniciar el servicio bind con el comando sudo /etc/init.d/bind9 restart. Para probar nuestro DNS hacemos ping desde una terminal a cualquiera de los dominios que asignamos en las zonas.
Por ejemplo ping www.juanse.com ó ns1.juanse.com ó correo.juanse.com.
Hay varias herramientas con las que se pueden probar los servidores DNS, como lo son nslookup y Dig. Espero les sirva, dudas o comentarios, serán respondidos a la mayor brevedad.


27 agosto 2009 









Saludos
A ver si me monto un servidor web en mi casa
porque usar un servidor linux apache mysql y php
porque instalar dns dnsbind dhcp como inicarlos una ves instalados
ayudame xfa
saludos desde guerrero mexico
Espero haber solucionado tus inquietudes, sino hazmelo saber y seré mas explicito, Suerte!!
1 ya instale el dns + binds
como hago a para arrancar estos servidores
como configurar o explorar relacionarme con ellos entender de q forma trabajan y se relacionan con nuestras necesidades
gracias disculpa
Si tienes dudas escribenos.
sudo, es un comando utilizado normalmente para ejecutar algo en modo administrador, pero si ya te encuentras en modo administrador o root no es necesario usarlo.
Segundo, el comando gedit, se utiliza para abrir un archivo de texto y editarlo, por lo que no puede estar pegado de /etc…. también puedes utilizar nano, vi, entre otros editores de texto….
El comando debe ser:
sudo gedit /etc/resolv.conf
Recuerda que entre sudo y gedit hay un espacio y entre gedit y /etc/resolv.conf hay otro espacio… Espero haberte solucionado la duda, si no es asi escribenos. Saludos
tengo un problema
ya he heco todos los pasos que esplicaste en tu
tutorial pero ala hora de realizar el ping
me parece otra direccion
208.73.210.27
ientras que mis rireciones son
nameserver 10.150.64.21
nameserver 201.160.32.8
nameserver 10.150.64.20
y aparte al hacer el ping
envia una infinidad de tatos
a una pagina llamada
parkinglot.information.com
y asi se esta enviando datos mas de media hora
espero y me alludes resolver esto
te lo agadeceria
Si sigues con dudas escribeme.
Tengo una aplicación en un pequeño servidor web, contraté un dominio por ejemplo “colegio.edu.ec”, ellos me piden el nameserver y dns de mi servidor, no tengo claro aún qué es lo q debo enviar, el dominio que aqupi lo llamas juanse.com sería en mi caso el dominio que contraé o es el nombre de mi servidor. Graciass