Configurar DNS en Ubuntu…

17 04 2008

Te ah pasado que a pesar de tener internet en Windows, no lo tienes en Linux?

Pues pasa constantemente, sobre todo si se te desconfigura en Windows y despues de un rato se vuelve a reconectar, linux tiene un fallo, en window$ cuando la conexión falla te dice una leyenda así “Conectividad limitada o nula” pero en linux solo te dice “Conexión Cableada” suele llegarse a una confusión.

Para resolver este problema existe BIND9, el cual sirve para configurar el servicio DNS:

Instalamos BIND9 y nos desplazamos a su directorio de configuración:

aptitude install bind9
cd /etc/bind/

Editamos named.conf.local y añadimos la zona “marblestation.homeip.net”, haciendo referencia a su fichero de configuración:

zone "marblestation.homeip.net" {
type master;
file "/etc/bind/db.marblestation";
};

Creamos el fichero de configuración “db.marblestation” a partir de “db.local”:

cp db.local db.marblestation

Editamos “db.marblestation”, reemplazamos la palabra “localhost” por “marblestation.homeip.net”, cambiamos la IP “127.0.0.1″ por la que queramos asignar al dominio y añadimos al final del fichero todos los A, MX y CNAME que queramos, quedando:

;
; BIND data file for local loopback interface
;
$TTL    604800
@   IN  SOA marblestation.homeip.net. root.marblestation.homeip.net. (
1     ; Serial
604800     ; Refresh
86400     ; Retry
2419200     ; Expire
604800 )   ; Negative Cache TTL
;
@           IN      NS          marblestation.homeip.net.
@           IN      A           192.168.48.32
@           IN      MX      0   marblestation.homeip.net.
www         IN      A           192.168.48.32
saturno     IN      CNAME       marblestation.homeip.net.

En este ejemplo vemos primeramente el dominio a resolver, ‘marblestation.homeip.net.’ y el segundo es la cuenta de correo del administrador, ‘root.marblestation.homeip.net.’ (sustituyéndo el primer punto por arroba, lo que dejaría ‘root@marblestation.homeip.net’). Debemos notar que al final de cada dominio viene un punto, que identifica la raíz de este. El resto de los parámetros son:

  • Serial: es un identificador del archivo, puede tener un valor arbitrario pero se recomienda que tenga la fecha con una estructura AAAA-MM-DD y un consecutivo.
  • Refresco: número de segundos que un servidor de nombres secundario debe esperar para comprobar de nuevo los valores de un registro.
  • Reintentos: número de segundos que un servidor de nombres secundario debe esperar después de un intento fallido de recuperación de datos del servidor primario.
  • Expiración: número de segundos máximo que los servidores de nombre secundarios retendrán los valores antes de expirarlos.
  • TTL mínimo: Significa Time To Live y es el número de segundos que los registros se mantienen activos en los servidores NS caché antes de volver a preguntar su valor real.

A continuación se definen los registros necesarios, cuyos tipos ya han sido explicados anteriormente en este documento.

Cada vez que se cambia la configuración de BIND9, debemos reiniciar el demonio:

/etc/init.d/bind9 restart

Para que nuestra máquina utilice el servidor de DNS que hemos configurado, debemos editar “/etc/resolv.conf” y dejamos únicamente la línea:

nameserver 127.0.0.1

Se debería hacer lo mismo con el resto de máquinas de la intranet que vayan a utilizar el servidor, con la única diferencia que habrá que substituir la IP 127.0.0.1 por la IP que tenga el servidor en la red.

Para comprobar el correcto funcionamiento, utilizamos el comando “host” el cual sirve para resolver dominios:

$ host marblestation.homeip.net
marblestation.homeip.net has address 192.168.48.32
marblestation.homeip.net mail is handled by 0 marblestation.homeip.net.
$ host saturno.marblestation.homeip.net
saturno.marblestation.homeip.net is an alias for marblestation.homeip.net.
marblestation.homeip.net has address 192.168.48.32
saturno.marblestation.homeip.net is an alias for marblestation.homeip.net.
saturno.marblestation.homeip.net is an alias for marblestation.homeip.net.
marblestation.homeip.net mail is handled by 0 marblestation.homeip.net.

Si deseamos también disponer de resolución de dominios inversa, es decir, que podamos preguntar por la IP “192.168.48.32″ y el servidor DNS nos diga que pertenece a marblestation.homeip.net, debemos añadir a “/etc/bind/named.conf.local”:

zone "192.in-addr.arpa" {
type master;
file "/etc/bind/db.192";
};

Creamos el archivo de configuración “/etc/bind/db.192″ a partir del “/etc/bind/db.127″:

cd /etc/bind/
cp db.127 db.192

Editamos “/etc/bind/db.192″, substituimos “localhost” por “marblestation.homeip.net” y cambiamos la última línea:

;
; BIND reverse data file for local loopback interface
;
$TTL    604800
@   IN  SOA marblestation.homeip.net. root.marblestation.homeip.net. (
1     ; Serial
604800     ; Refresh
86400     ; Retry
2419200     ; Expire
604800 )   ; Negative Cache TTL
;
@   IN  NS  marblestation.homeip.net.
32.48.168   IN  PTR marblestation.homeip.net.

De forma que, la última linea indica que la IP [192.]168.48.32 (escrita a la inversa y omitiendo el 192 que ya se especifico en “named.conf.local”) corresponde al dominio marblestation.homeip.net.

Podemos comprobar su funcionamiento reiniciando el demonio BIND9 y realizando una consulta:

$ /etc/init.d/bind9 restart
$ host 192.168.48.32
32.48.168.192.in-addr.arpa domain name pointer marblestation.homeip.net.

Acciones

Información

5 respuestas

17 04 2008
Achis

a chinga, esta medio cabron, no hay un metodo por terminal?

19 04 2008
yylex

se ve bueno, pero por ahora me da hueva y con tanto que hacer… aún más…

quizás el siguiente semestre que lleve mi curso de redes aprenda más al respecto… por ahora… me da hueva ejejejeje

(o puede que un día de estos lo pruebe, no prometo nada jejeje)

20 06 2009
Sofy

No manches si qe me sacate de un apuro!!!
esta muy buena la pagina y ademas a tu manera pero la informacion esta bien explicada, qe bien sigan publicando domumentos qe valgan la pena okas!!
bye

23 09 2009
RluiZ

buena info.. garcias esta bien explicado.. buena pagina espero ke continuen explicando mas temas relacionados con redes y servidores

27 09 2009
jlgg

Me parece muy bueno, gracias.

Deja un comentario