tema 6 parte 10 instalacion y configuracion de un servidor dns dnsmasq en ubuntu sin dhcp

7

Click here to load reader

Upload: maite-pastor-nogueroles

Post on 25-Oct-2015

21 views

Category:

Documents


2 download

TRANSCRIPT

Page 1: Tema 6 Parte 10 Instalacion y Configuracion de Un Servidor DNS Dnsmasq en Ubuntu Sin Dhcp

TEMA 6 INSTALACIÓN DE SERVICIOS EN REDES LOCALES

79

4.2- Instalación y Configuración de un Servidor DNS Dnsmasq en Ubuntu sin DHCP

Dnsmasq es un paquete que incluye un servidor DNS y DHCP.

El servidor DNS es un servidor muy sencillo que no contiene zonas de búsqueda (ni directa, ni inversa), sino que se trata de un servidor DNS caché que además funciona como servidor DNS para nuestra red local gracias a que lee el archivo /etc/hosts.

Este archivo (/etc/hosts) como hemos visto en temas anteriores, es usado por el Sistema Operativo (sea cual sea) para guardar la correspondencia entre un nombre de dominio o nombre DNS (interno o de Internet, da igual) y direcciones IP. Antiguamente cuando no había servidores DNS que resolvieran nombres de dominio, el archivo hosts era el único encargado de hacerlo, pero dejó de usarse cuando Internet empezó a crecer y surgieron los servidores DNS. Aún así, a día de hoy, todos los Sistemas Operativos suelen venir configurados por defecto para resolver un nombre de dominio, primero usando este fichero. Y, en caso de que ahí no esté ese nombre, consultarán el servidor DNS cuya IP le hayamos configurado.

Todos los Sistemas Operativos tienen este archivo, aunque en diferentes carpetas almacenado. Así, por ejemplo:

Sistema Operativo Ruta

Windows 95 / 98 / Me C:\Windows\hosts

Windows NT / 2000 C:\WINNT\System32\drivers\etc\hosts

Windows XP / 2003 / Vista / 7 C:\Windows\System32\drivers\etc\hosts

Unix / Linux / BSD /etc/hosts

La resolución funcionará tanto en sentido directo como en sentido inverso, es decir, resolverá la IP dado un nombre de PC y el nombre del PC dada la IP.

Page 2: Tema 6 Parte 10 Instalacion y Configuracion de Un Servidor DNS Dnsmasq en Ubuntu Sin Dhcp

TEMA 6 INSTALACIÓN DE SERVICIOS EN REDES LOCALES

80

Adicionalmente, dnsmasq dispone de servidor DHCP y permite resolver los nombres de los PCs a los que les ha asignado dirección IP dinámica.

4.2.1- Instalación del servidor DNS con Dnsmasq

Para instalar la última versión de dnsmasq, podemos hacerlo con apt-get desde una consola de root:

// Instalación del servidor dnsmasq # apt-get install dnsmasq

De esta forma instalaríamos los programas necesarios para disponer de un sencillo servidor DNS. Tan solo será necesario configurarlo y ponerlo en marcha.

4.2.2- Configuración del servidor DNS con Dnsmasq

1º) Para que dnsmasq pueda ser un servidor caché DNS, es necesario modificar nuestro

fichero /etc/resolv.conf de forma que ahí aparezca configurado al menos un

servidor DNS externo. Normalmente los servidores DNS externos nos los proporciona el operador de telecomunicaciones que nos da servicio de Internet. Por ejemplo: 195.235.113.3, 62.37.228.20 (de Orange), etc. Por tanto, nuestro fichero tendrá algo parecido a:

// Añadir en /etc/resolv.conf del servidor nameserver 127.0.0.1 nameserver 62.37.228.20 nameserver 195.235.113.3

Una vez introducidos los DNS externos en /etc/resolv.conf, debemos comprobar si dichos DNS externos funcionan correctamente y responden a las peticiones. Para ello haremos una consulta al DNS mediante el comando nslookup. También podríamos utilizar el comando host o el comando dig:

// Probar DNS externo // Ejecutar en una consola del servidor $ nslookup www.google.es

Si el DNS funciona, nos dirá cual es la IP del servidor de Google.

Page 3: Tema 6 Parte 10 Instalacion y Configuracion de Un Servidor DNS Dnsmasq en Ubuntu Sin Dhcp

TEMA 6 INSTALACIÓN DE SERVICIOS EN REDES LOCALES

81

En este punto, ya tendremos en nuestro servidor un servidor DNS caché funcionando.

2º) El siguiente paso será editar el archivo /etc/hosts de nuestro servidor, para que

nuestro DNS resuelva también los nombres y las IPs de nuestra red.

Si los PCs de nuestra red disponen de IP fija y queremos que dnsmasq resuelva sus nombres e IPs, tan solo tenemos que añadir los nombres y las IPs en el archivo hosts del servidor y sería como disponer de un DNS maestro para nuestra red. Por ejemplo:

//Añadir en /etc/hosts del servidor las IPs y los n ombres de nuestros PCs //Se pueden añadir varios nombres en la misma línea . Separar con un tabulador 192.168.2.202 www.XXmicentro.com proxy www 192.168.2.238 impresora 192.168.2.254 router 192.168.2.203 asi1pc3 aula1pc3 192.168.2.204 asi1pc4 aula1pc4 192.168.2.205 asi1pc5 aula1pc5 192.168.2.206 asi1pc6 aula1pc6 192.168.2.207 asi1pc7 aula1pc7

3º) Arranque y parada del servidor dnsmasq:

El servicio dnsmasq, al igual que todos los servicios, dispone de scripts de arranque y parada en la carpeta /etc/init.d. Debemos ejecutarlos desde una consola de root.

Cada vez que modifiquemos el archivo /etc/hosts del servidor, deberemos ejecutar "/etc/init.d/dnsmasq restart" para reiniciar el servicio dnsmasq y recargar la información contenida en dicho archivo.

De esta manera, tan solo editando el archivo /etc/hosts del servidor, dispondremos de un sencillo servidor DNS para nuestra red lo que nos permitirá referirnos a nuestros PCs utilizando sus nombres que son mucho más fáciles de recordar que las direcciones IP.

4.2.3- Prueba del servidor DNS con Dnsmasq

Se puede probar desde el propio servidor con los comandos dig, ping, host o nslookup. Pero vamos a explicar cómo hacerlo desde un cliente.

Page 4: Tema 6 Parte 10 Instalacion y Configuracion de Un Servidor DNS Dnsmasq en Ubuntu Sin Dhcp

TEMA 6 INSTALACIÓN DE SERVICIOS EN REDES LOCALES

82

El resto de PCs de la red, serán los clientes. Estos clientes pueden ser equipos con Windows XP, con Ubuntu, …Explicaremos cómo configurar un cliente Windows XP y otro Ubuntu.

a) Configuración de un cliente XP:

Debemos incorporar nuestro cliente XP al dominio de nuestro servidor Ubuntu. Para ello, en el cliente XP pulsamos Botón Dcho sobre MI PC y elegimos PROPIEDADES:

Pulsamos CAMBIAR y en la casilla “Dominio” que nos aparece ponemos nuestro dominio: XXmicentro.com (donde XX es el nº de dominio de cada uno de vosotros: 01, 02,…) y ACEPTAR.

Configuramos el DNS en el cliente: Para ello, debemos de configurar en la propiedades del TCP/IP, el DNS anotando ahí la IP de nuestro servidor Ubuntu.

Page 5: Tema 6 Parte 10 Instalacion y Configuracion de Un Servidor DNS Dnsmasq en Ubuntu Sin Dhcp

TEMA 6 INSTALACIÓN DE SERVICIOS EN REDES LOCALES

83

Desde nuestro cliente probamos si el servidor DNS resuelve nombre externos (de Internet). Vamos al Internet Explorer y ponemos: www.google.es. Si nos aparece la página de Google es que todo va bien. Otra forma de probar si funciona es usar: ping o nslookup desde la consola MS-DOS:

Probamos resolución directa: ping www.google.es O también: nslookup www.google.es

Probamos resolución inversa: ping ip_de_Internet donde ip_de_Internet es la IP de cualquier máquina de

Internet como las de google.es,… O también: nslookup ip_de_Internet

Ahora, desde nuestro cliente probamos si el servidor DNS resuelve nombre internos: podemos usar: ping o nslookup desde la consola MS-DOS.

Probamos resolución directa: ping nombreservidor donde nombreservidor es el nombre de vuestra

máquina Ubuntu O también: nslookup nombreservidor Probamos resolución inversa: ping ip_del_servidor donde ip_del_servidor es la IP de vuestra

máquina Ubuntu O también: nslookup ip_del_servidor

Page 6: Tema 6 Parte 10 Instalacion y Configuracion de Un Servidor DNS Dnsmasq en Ubuntu Sin Dhcp

TEMA 6 INSTALACIÓN DE SERVICIOS EN REDES LOCALES

84

b) Configuración de un cliente Ubuntu:

Configuramos el DNS en el cliente: debemos indicarle la IP del servidor DNS en el fichero /etc/resolv.conf de este cliente: Por ejemplo si la IP de nuestro servidor DNS dnsmasq es 192.168.2.202, pondremos en cada /etc/resolv.conf (el de cada cliente):

// Editar /etc/resolv.conf del resto de PCs de la red nameserver 192.168.2.202

Ahora desde nuestro cliente Ubuntu probamos si el servidor DNS resuelve nombre externos (de Internet). Vamos al Navegador de Internet y ponemos: www.google.es. Si nos aparece la página de Google es que todo va bien. Otra forma de probar si funciona es usar: dig , host, ping o nslookup desde la consola MS-DOS:

Probamos resolución directa: dig www.google.es O también: nslookup www.google.es O también: host www.google.es

Probamos resolución inversa: ping ip_de_Internet donde ip_de_Internet es la IP de cualquier máquina de

Internet como las de google.es,… O también: nslookup ip_de_Internet

Page 7: Tema 6 Parte 10 Instalacion y Configuracion de Un Servidor DNS Dnsmasq en Ubuntu Sin Dhcp

TEMA 6 INSTALACIÓN DE SERVICIOS EN REDES LOCALES

85

Ahora, desde nuestro cliente probamos si el servidor DNS resuelve nombre internos. Para ellos podemos usar: ping o dig o host o nslookup desde la consola de comandos. Probamos resolución directa: ping nombreservidor donde nombreservidor es el nombre de vuestra

máquina Ubuntu. Sirve cualquier nombre de cualquier equipo de ese dominio.

O también: nslookup nombreservidor O también: dig nombreservidor

O también: host nombreservidor Probamos resolución inversa: ping ip_del_servidor donde ip_del_servidor es la IP de vuestra

máquina Ubuntu. Sirve la IP de cualquier equipo del dominio.

O también:

nslookup ip_del_servidor