Hace ya bastante tiempo que escribí sobre dyndns pero no nos engañemos, aquello no era un clon de este servicio, era simplemente una forma de saber la ip externa de las máquinas que nos interesaran y no hacía ningún tipo de resolución de nombres.
En esta entrada voy a configurar un servidor dns basado en bin9 bajo linux. Pero, ¿cuál es la función de un servidor dns? En la actual implementación del protocolo de internet, cada máquina conectada a internet tiene una dirección única formada por 4 números del 0 al 255. Estos 4 números son los que identifican a cada máquina en la red. Por ejemplo: podemos poner en nuestro navegador la dirección http://216.58.214.163 y veríamos como nos abre la archiconocida página del buscador.
Pero para un humano, es mucho mas fácil acordarse de un nombre como google.com antes que 4 números. Si a esto le añadimos que podríamos cambiar la máquina física donde almacenamos u hospedamos nuestra web y por lo tanto cambiar la dirección ip… pues con mas motivo para usar nombres fáciles de recordar. Aquí es donde entra en juego el servidor dns.
Podemos ver al servidor dns como una gran guía donde buscamos un nombre y nos devuelve automáticamente la dirección. Imagina que a partir de este momento no tuvieras que memorizar el número de teléfono de tus contactos favoritos y cada vez que ellos cambiaran de numero automáticamente se actualizara la guia y este proceso, fuera totalmente trasparente para ti. Pues bien, esta es la función del servicio dns.
En entrada, quiero asignarle por ejemplo al subdominio loquesea.xxx.frangalian.com una dirección ip. Para ello, como tengo el dominio frangalian.com registrado, creo un subdominio xxx y le asigno en mi proveedor de hosting la ip a la que quiero que apunte y al que instalaré bind9.
Acto seguido, entro por ssh al servidor e instalo bind9:
apt-get install bind9
editamos el fichero /etc/bind/named.conf.local de tal manera que tengamos una nueva «zona» y un fichero de configuración para esta zona. En mi caso lo he llamado xxx.db para el subdominio especificado.
Guardamos los cambios y creamos un nuevo fichero tal y como hemos especificado anteriormente. En nuestro caso db.xxx. Podemos utilizar como plantilla alguno de los ya creados como db.local. En mi caso he copiado db.local a db.xxx y despues he editado db.xxx con los siguientes datos:
En este caso, (no tomad en cuenta las ip que son ficticias), el subdominio xxx.frangalian.com apunta a 100.100.100.100 y hay 3 subdominios: sub1.xxx.frangalian.com, dom2.xxx.frangalian.com y conta.xxx.frangalian.com que apuntan a sus respectivas ips.
Ahora solo nos resta reiniciar el servicio para que cargue la configuración de estos ficheros y ya lo tendremos funcionando y por supuesto resolviendo nombres.
No responses yet