Práctica 9: Configuración de NAT y DHCP Material necesario: maqueta de routers, cables de red y consola y ordenadores de consola. IMPORTANTE: Destacar que en los ejemplos utilizados se hace mención a uno de los routers de la maqueta, “Lab-A>”, pero que puede generalizarse al resto “Lab-B>”, “Lab-C>”, ... Objetivos: Esta práctica de laboratorio sirve para practicar las siguientes tareas: ? ? ? configurar NAT (PAT) y definir el tráfico que va a realizar cambio de dirección. configurar DHCP en los routers, para que permitan configuración de los hosts locales conectados en su Ethernet. Probar los comandos de monitorización tanto de NAT como DHCP Práctica: Parte 1 : Configurar el Router como servidor DHCP Vamos a configurar en nuestra maqueta el funcionamiento de DHCP, utilizando para ello el router como servidor DHCP. Las IP que vamos a asignar son del rango privado 10.0.0.0/8 a los hosts de cada LAN, por tanto, en un principio vamos a tener IP duplicadas (existirá solape de direcciones IP), dado que todas las LAN van a disponer del mismo rango de IPs. Paso 0 En primer lugar, vamos a configurar la maqueta, de la siguiente forma: 1. configuramos las interfaces serie con las IP definidas 2. configuramos las interfaces LAN de los routers con las IP de 10.0.0.1/8. En el caso de LabD y Lab-E, utilizaremos 10.0.0.1/8 y 10.0.0.2/8 respectivamente. 3. configuraremos el protocolo de enrutamiento (IGRP 100), para poder visualizar y acceder a todas las interfaces serie y no las interfaces LAN, dado que tendríamos conflicto por duplicidad de IP. Paso 1 Ahora, configuraremos el servidor DHCP en los routers, concretamente en Lab-A, Lab-B, Lab-C y Lab- E. Como la LAN de Lab-D y Lab-E es la misma, sólo hace falta configurar un servidor en este caso tomaremos Lab-E, que además será la puerta de enlace predeterminada de su LAN. Tomemos como ejemplo la configuración de Lab-A : A(config)#service dhcp A continuación configura el DHCP para que tome las IP del conjunto pool 10-net, formado por la subred 10.0.0.0/8 Lab-A(config)#ip dhcp pool 10-net Lab-A(dhcp-config)#network 10.0.0.0 255.0.0.0 Además, vamos a configurar DHCP para que configure a los clientes con puerta de enlace predeterminada y servidor DNS, con los siguientes comandos: Lab-A(dhcp-config)#default-router 10.0.0.1 Lab-A(dhcp-config)#dns-server 10.0.0.3 Lab-A(dhcp-config)#domain-name lab-a.net Para no entrar en conflicto con duplicaión de IP de los dispositivos de red (servidores, routers, ...) en la asignación DHCP, debemos reservar y por tanto excluir IP del conjunto definido pool 10-net. Vamos a excluir desde 10.0.0.1 hasta 10.0.0.10 para equipos de red desde modo global de configuración: Lab-A(config)#ip dhcp excluded-address 10.0.0.1 10.0.0.10 Desde los host ejecutar “dhclient”. Paso 2 Ahora podemos comprobar el funcionamiento del DHCP, para ello debemos solicitar desde los clientes, por ejemplo ET-1, una IP de forma automática. Debería asignarse la IP 10.0.0.11/8 y demás datos configurados previamente. Para comprobar que la asignación se ha efectuado correctamente ejecutaremos los comandos ifconfig y route –n ( puerta de enlace o gateway) NOTA: De no existir una puerta de enlace asignaremos nosotros a los hosts la ruta por defecto. Para ello utilizaremos el comando: route add –net dirección_red netmask mascara gw dirección_IP ( para cualquier dirección el campo dirección_red valdrá 0.0.0.0 y la mascara 0.0.0.0 ) poniendo en el campo dirección_IP la de la interfaz Ethernet correspondiente al router al que ese host se conecta. Para comprobar que la definición se ha hecho correctamente utilizaremos de nuevo el comando: route –n El host debe tener ahora tres rutas definidas que corresponden a la ruta loopback, la ruta de su propia LAN y la ruta por defecto que acabamos de definir (algunas implementaciones de Linux no muestran la ruta por defecto). Las rutas definidas mediante el comando ‘route add’ se van añadiendo a la lista existente. Por tanto si nos equivocamos al introducir una ruta deberemos borrarla mediante el comando: route del –net 0.0.0.0 gw dirección_IP mascara Paso 3 Utiliza el comando show ip dhcp ? y apunta las opciones ________________________________________________ _________________________________________________ _________________________________________________ _________________________________________________ _________________________________________________ _________________________________________________ Utiliza las opciones conflict y binding y observa los resultados. _____ ___________________________________________ _________________________________________________ Parte 2 : Configuración de NAT (PAT) en el router Paso 4 Dado que las IP asignadas son privadas y además duplicadas, vamos a configurar NAT para que nos haga traducción de IP y puerto, de forma controlada, para evitar el solape de direcciones. NAT en principio no es una solución final, pero puede resolver situaciones como la presentada ahora en la maqueta. Vamos además a suponer que no disponemos de muchas IP y en concreto vamos a utilizar la IP de las interfaces serie, que supondremos que son públicas y están asignadas por el operador para realizar PAT o NAT overload sobre ellas. Además, hay que tener en cuenta, que el NAT sólo se configura en un único punto de salida de toda la red, esto es importante tenerlo en cuenta en la LAN de Lab-D y Lab-E. Por tanto en esta LAN tomaremos como router para hacer NAT el propio DHCP, es decir Lab-E. Para configurar NAT con la opción de overload, hay que realizar la siguiente configuración, que consiste en: ? definir el pool o conjunto de IP disponibles sobre las que se va a realizar NAT ? definir el tráfico que va a sufrir NAT o va a acceder al NAT ? aplicar el NAT Router(config)#ip nat pool name start-ip end-ip {netmask netmask | prefix-length prefix-length} En nuestro caso, asignamos el nombre del conjunto (pool) MILAB, esto es interno al router configurado y el pool quedará formado por cualquiera de las IP serie de Lab-A, en el ejemplo serial 0, en nuestro caso sólo sobre la IP 201.100.11.1. Esta IP será la utilizada para realizar NAT y esta IP ha de ser alcanzable por todos los routers de la maqueta como hemos comprobado en el paso 1: Lab-A(config)#ip nat pool MILABA 201.100.11.1 201.100.11.1 netmask 255.255.255.252 Luego Router(config)#access-list access-list-number permit source [sourcewildcard] En nuestro caso: Lab-A(config)#access-list 50 permit 10.0.0.0 0.0.0.255 Finalmente, definimos el proceso de NAT de las direcciones inside (internas) modificando la dirección de origen (source): Router(config)#ip nat inside source list access-list-numb pool name [overload] En nuestro caso: Lab-A(config)#ip nat inside source list 50 pool MILABA overload Realmente, para completar la configuración de NAT es necesario identificar qué interfaces van a ser internas y cuales van a ser externas con los siguientes comandos: Lab-A(config)#interface fastethernet0 Lab-A(config-if)#ip nat inside Lab-A(config)#inteface serial0 Lab-A(config-if)#ip nat outside Lab-A(config-if)#inteface serial1 Lab-A(config)#ip nat outside Ahora podemos comprobar el funcionamiento del NAT, haciendo ping desde los hosts a las interfaces serie de los routers. Con ello, podremos comprobar que recibimos respuesta porque nuestros paquetes IP saldrán con la IP modificada, utilizando overload sobre la IP serie de nuestro router por defecto. NOTA: Cabe destacar que otra forma de realizar la misma configuración hubiera sido con: Router(config)#ip nat inside source list access-list-number interface if-name Donde el nombre de la interfaz sería la que utilizaría para obtener la IP ( en vez de asignársela por el pool), para realizar el NAT overload (o PAT). Paso 5 Para ver el funcionamiento de NAT, accederemos al router y ejecutaremos los siguientes comandos: Router#show ip nat translations verbose Router#show ip nat statistics Ahora vamos a realizar la siguiente prueba. En primer lugar borramos las asignaciones realizadas y a continuación activamos la depuración de NAT: Router#clear ip nat translation * Router#debug ip nat Ahora volvemos a comprobar el funcionamiento del NAT, haciendo ping desde los hosts a las interfaces serie de los routers. Para desactivar la depuración:Router#undebug all Paso 6 Responda a las siguientes preguntas: 1.- Hemos comprobado que la conexión desde el interior al exterior funciona, siempre y cuando el interior inicie la conexión (cliente). ¿Qué pasa en caso contrario, es decir si desde el exterior queremos conectarnos a una IP interior? 2.- En el caso de tener servidores internos, por ejemplo servidores web, ¿qué solución le daría para que pudieran ser accedidos desde el exterior? 3.- Podrían dos host de dos LAN diferentes comunicarse tal como hemos configurado la maqueta ¿por qué? 4.- Discute sobre ¿cuál debería ser la utilización de NAT y DHCP cuando en nuestra LAN tenemos servidores? Ten encuenta que los servidores requieren una IP fija y que DHCP en principio entrega las IP de forma dinámica. 5.- ¿Por qué en una LAN, el NAT se ha de realizar en un único punto, y si tenemos 2 routes como Lab-D y Lab-E, sólo se realiza en uno de ellos?.